Как сделать дамп подпрограмм и триггеров, используя mysqldump с опцией --tab? - PullRequest
1 голос
/ 03 апреля 2011

Когда я использовал mysqldump без опции --tab, я мог выводить подпрограммы (с помощью опции --routines) и триггеры (с помощью --triggers, которые включены по умолчанию), но при попытке использовать --tab, чтобы получить выгоду отСкорость Я не мог вывести ни подпрограммы, ни триггеры даже при указании двух опций (--routines и --triggers), но вместо этого я нашел SQL для создания триггеров и хранимых процедур в терминале, который я использую для выполнения команды.

Как вывести дамп подпрограмм и триггеров, используя опцию --tab в mysqldump?

Спасибо

Абдель-Мавла

Ответы [ 2 ]

0 голосов
/ 31 марта 2016

Я вижу, что триггеры сохраняются в отдельных файлах таблиц с --tab и --triggers.

Но для процедур я могу подтвердить, что они выбрасываются в стандартный вывод.То же самое относится и к --events. Все, что я мог придумать, это:

mysqldump --tab='/path/to/output/dbName' --triggers --routines --events dbName > /path/to/output/dbName/_events.and.routines.sql

Поскольку, когда подпрограммы выбрасываются в стандартный вывод,> может поместить их в файл.

Так что теперьв / path / to / output / dbName у меня будет дополнительный файл с именем _events.and.routines.sql, содержащий подпрограммы и события.

Я просто не знаю, будет ли mysqlimport принимать эти экспортированные файлыподпрограммы автоматически.

0 голосов
/ 14 мая 2011

Один из подходов, который вы можете использовать, - это разделить ваш скрипт mysqldump, чтобы сначала вывести таблицы с помощью --tab, а затем вывести подпрограммы с помощью отдельного вызова mysqldump (без --tab).

...