我有一个名为dump的 MySQL 用户,具有以下权限:
GRANT USAGE ON *.* TO 'dump'@'%' IDENTIFIED BY ...
GRANT SELECT, LOCK TABLES ON `mysql`.* TO 'dump'@'%'
GRANT SELECT, LOCK TABLES ON `myschema`.* TO 'dump'@'%'
我想使用转储用户转储所有数据(包括触发器和过程)。我通过以下方式调用 mysqldump:
mysqldump -u dump -p --routines --triggers --quote-names --opt \
--add-drop-database --databases myschema > myschema.sql
除了触发器之外,转储文件一切正常,它们丢失了!!
如果我使用root MySQL 用户尝试 mysqldump,触发器将被正确转储:
mysqldump -u root -p --routines --triggers --quote-names --opt \
--add-drop-database --databases myschema > myschema.sql
所以,我想这是一个烫发问题......我的转储MySQL 用户需要哪些额外授权才能正确执行完整转储?