Mam użytkownika MySQL o nazwie dump z następującymi uprawnieniami:
GRANT USAGE ON *.* TO 'dump'@'%' IDENTIFIED BY ...
GRANT SELECT, LOCK TABLES ON `mysql`.* TO 'dump'@'%'
GRANT SELECT, LOCK TABLES ON `myschema`.* TO 'dump'@'%'
Chcę zrzucić wszystkie dane (w tym wyzwalacze i procedury) za pomocą użytkownika zrzutu . Wywołuję mysqldump w następujący sposób:
mysqldump -u dump -p --routines --triggers --quote-names --opt \
--add-drop-database --databases myschema > myschema.sql
Wszystko jest w porządku z zrzuconym plikiem z wyjątkiem wyzwalaczy, brakuje ich !!
Wyzwalacze są zrzucane poprawnie, jeśli spróbuję mysqldump z użytkownikiem root MySQL:
mysqldump -u root -p --routines --triggers --quote-names --opt \
--add-drop-database --databases myschema > myschema.sql
Więc wydaje mi się, że jest to problem z uprawnieniami ... jakie dodatkowe uprawnienia potrzebuje użytkownik MySQL dla mojego zrzutu, aby poprawnie wykonać pełny zrzut?