четверг, 30 декабря 2010 г.
понедельник, 6 декабря 2010 г.
Как сделать package в Embarcadero Rad Studio Delphi 2010
Для создания нового package в Delphi нам необходимо выполнить следующий набор действий:
- Запустить Delphi
- В меню выбрать File->New->Package-Delphi (Рис. 1) (Или File->New->Other... откроется окно "New Items". В левой части необходимо выбрать Delphi Projects и в правой части Package и нажать кнопку "ОК", после чего будет создан новый "bpl пакет"(Рис. 2)). После чего автоматически генерируется новый проект с расширением *.bpl
Рис.1
Рис. 2
Ошибка Got a packet bigger than 'max_allowed_packet' bytes
При попытке "поднять" архив База Данных увидел сообщение об ошибке: Got a packet bigger than 'max_allowed_packet' bytes
База данных содержала таблицы в которых были blob поля. Вся проблема оказалась в параметре max_allowed_packet он был равен 1 Мб у меня на сервере, а blob поля которые были в запросе имели размер больше 1 Мб.
Для просмотра значения max_allowed_packet я выполнил следующий запрос:
PS: Статья была описана как заметка на будущее. Информация была частично с официального сайта MySQL.
База данных содержала таблицы в которых были blob поля. Вся проблема оказалась в параметре max_allowed_packet он был равен 1 Мб у меня на сервере, а blob поля которые были в запросе имели размер больше 1 Мб.
Для просмотра значения max_allowed_packet я выполнил следующий запрос:
show variables like 'max_allowed_packet';Результат мы получим в байтах (Рис.1).
Рис. 1
Для изменения я выполнил следующие действия (У меня Windows Vista и MySQL Server 5.1):- Найти файл my.ini (Для Linux нужен файл
my.cnf)(По умолчанию находится в каталоге, в который устанавливался сервер(у меня С:\Program Files\MySQL\MySQL Server 5.1\), или в папке Windows)
- Открыть его и изменить значение max_allowed_packet.Если у вас нет такой строчки - тогда найдите секцию [mysqld](у меня уже была создана и содержала значение порта port=3306) и допишите следующею строчку
- Теперь нужно перезагрузить сервер MySQL для того чтобы все изменения вступили в силу (Для перезагрузки нужно выполнить следующие действия Пуск->Панель управления->Администрирование->Службы ищем в списке MySQL и нажимаем на нем правой кнопкой мыши, после чего появится меню в котором нужно выбрать Свойства(Рис.2). После чего откроется окно "Свойства" с помощью которого можно осуществить перезагрузку службы MySQL сервера. Для перезагрузки нужно нажать кнопку "Остановить"(пункт 1 Рис.3) после остановки сервера станет доступной кнопку "Запустить", теперь нужно нажать кнопку "Запустить"(пункт 2 Рис.3) Все сервер перезагружен, теперь нажимаем "ОК"(пункт 3 Рис.3)).
max_allowed_packet = 32MУ вас может быть больше или меньше 32, мне было достаточно 32 Мб. Сохраняем файл my.ini
Рис. 2
Рис. 3
Теперь нам нужно проверить вступило ли все в силу или нет, для этог нам нужно выполнить запрос, который мы выполняли в начале:show variables like 'max_allowed_packet';Результат запроса: 33554432байта что в свою очередь равно нашим 32Мб, которые мы установили в файле настроек.
PS: Статья была описана как заметка на будущее. Информация была частично с официального сайта MySQL.
Подписаться на:
Сообщения (Atom)