Tôi có một người dùng MySQL được gọi là kết xuất với các quyền sau:
GRANT USAGE ON *.* TO 'dump'@'%' IDENTIFIED BY ...
GRANT SELECT, LOCK TABLES ON `mysql`.* TO 'dump'@'%'
GRANT SELECT, LOCK TABLES ON `myschema`.* TO 'dump'@'%'
Tôi muốn kết xuất tất cả dữ liệu (bao gồm các trình kích hoạt và thủ tục) bằng cách sử dụng người dùng kết xuất . Tôi gọi mysqldump theo cách sau:
mysqldump -u dump -p --routines --triggers --quote-names --opt \
--add-drop-database --databases myschema > myschema.sql
Mọi thứ đều ổn với tệp kết xuất ngoại trừ các trình kích hoạt, chúng bị thiếu !!
Các trình kích hoạt được kết xuất đúng cách nếu tôi thử mysqldump với người dùng MySQL gốc :
mysqldump -u root -p --routines --triggers --quote-names --opt \
--add-drop-database --databases myschema > myschema.sql
Vì vậy, tôi đoán đó là một vấn đề perms ... người dùng MySQL kết xuất của tôi cần những khoản trợ cấp nào để thực hiện kết xuất đầy đủ một cách chính xác?