Как известно в MySQL 5 была включена потдержка таких возможностей как создание хранимых процедур (stored procedures) и триггеров (triggers).
При попытке создать дамп базы, используя mysqldump, обнаружил в нем отсутствие комманд для создания хранимых процедур.
Как оказалось это было вызвано тем, что mysqldump по-умолчанию сохраняет только триггеры, пропуская хранимые процедуры. Существует два параметра, которые управляют этим поведением:
- --routines – по-умолчанию имеет значение FALSE
- --triggers – по-умолчанию имеет значение TRUE
Еслы же необходимо сохранить только хранимые процедуры и триггеры, без MySQL-таблиц и данных (скажем, чтобы импортировать их в другую базу данных), для этого можно использовать что-то вроде:mysqldump -u root -p --routines [ИМЯ_БАЗЫ_ДАННЫХ] > dump.sql
Чтобы импортировать данные в другую БД используя полученный дамп, следует воспользоваться следующей коммандой:mysqldump -u root -p--routines --no-create-info --no-data --no-create-db --skip-opt
[ИМЯ_БАЗЫ_ДАННЫХ] > dump.sql
mysql -u root [ИМЯ_БАЗЫ_ДАННЫХ] < dump.sql
Комментариев нет:
Отправить комментарий