Понадобилось как то поменять имя базы и юзера, из под которого осуществляется доступ к этой базе.
Но вот незадача - там триггеры настроенные на конкретного юзера
Нагуглил вот такое решение:
Сначала выгружаю триггеры
mysqldump -h'localhost' -u'root' -p'root' --triggers --add-drop-trigger --no-create-info --no-data --no-create-db --skip-opt megasuperdatabase > /tmp/triggers.sql
Затем SEDом или руками заменяю на те которые мне нужны
И заливаю обратно (старые нужно удалить)
Удаляем так
mysql -h'127.0.0.1' -u'root' -p'root' megasuperdatabase -Bse 'drop TRIGGER insert_catalog_2_products'
Заливаем
mysql -h'localhost' -u'root' -p'root' megasuperdatabase < /tmp/triggers.sql
PS: Что то было не так с опцией add-drop-trigger уже точно не помню, что. Но по сути она должна добавлять строчку удаление старых триггеров в дамп.
Но вот незадача - там триггеры настроенные на конкретного юзера
Нагуглил вот такое решение:
Сначала выгружаю триггеры
mysqldump -h'localhost' -u'root' -p'root' --triggers --add-drop-trigger --no-create-info --no-data --no-create-db --skip-opt megasuperdatabase > /tmp/triggers.sql
Затем SEDом или руками заменяю на те которые мне нужны
И заливаю обратно (старые нужно удалить)
Удаляем так
mysql -h'127.0.0.1' -u'root' -p'root' megasuperdatabase -Bse 'drop TRIGGER insert_catalog_2_products'
Заливаем
mysql -h'localhost' -u'root' -p'root' megasuperdatabase < /tmp/triggers.sql
PS: Что то было не так с опцией add-drop-trigger уже точно не помню, что. Но по сути она должна добавлять строчку удаление старых триггеров в дамп.
Комментариев нет:
Отправить комментарий