AnyBackup-MySQL 逻辑备份失败,提示:mysqldump: Couldn't execute 'SHOW FIELDS FROM host_summary': execute command denied to user 'aishu-backup'@'%' for routine 'sys.format_time' (1370)
关键字
逻辑备份
适用产品
AnyBackup 8.0.x
问题描述
在使用 AnyBackup 8.0 对 MySQL 进行逻辑备份时,备份任务执行失败,提示如下信息:
mysqldump: Couldn't execute 'SHOW FIELDS FROM host_summary': execute command denied to user 'aishu-backup'@'%' for routine 'sys.format_time' (1370)
问题影响
无法使用 AnyBackup 完成对 MySQL 数据库的逻辑备份。
问题原因
MySQL 备份用户缺少 exec 权限导致。
解决方案
为了解决该问题,需要为 MySQL 备份用户增加 exec 权限。以备份用户为 aishu-backup 为例,可参考如下步骤:
使用 SSH 工具以 root 用户登录 MySQL 数据库服务器;
使用管理员用户登录 MySQL 数据库,如下:
su - mysql
mysql -uroot -p密码 -S /tmp/mysql.sock
注:其中,密码和 sock 路径请按照实际情况填写
执行如下命令,授予备份用户 exec 权限。如下:
GRANT EXECUTE ON *.* TO 'aishu-backup'@'%';
flush privileges;
重新发起 MySQL 逻辑备份即可。