我的系统:CentOS 6.5 + MySQL 5.6
我已经为 mysqldump 创建了一个备份用户:
CREATE USER 'usr_backup'@'localhost' IDENTIFIED BY 'XXX';
GRANT USAGE ON *.* TO 'usr_backup'@'localhost' IDENTIFIED BY "XXX";
GRANT SELECT, LOCK TABLES ON `mysql`.* TO 'usr_backup'@'localhost';
GRANT SELECT, LOCK TABLES, SHOW VIEW, EVENT, TRIGGER ON <my schema name>.* TO 'usr_backup'@'localhost' IDENTIFIED BY "XXX";
Mysql转储命令:
mysqldump -uusr_backup -pXXX --add-drop-database --add-drop-table --add-drop-trigger --allow-keywords --comments --compact --complete-insert --disable-keys --extended-insert --quick --routines --tz-utc <my schema name> > /usr/share/dump.sql
当我运行 dump 命令时,我得到
mysqldump: Got error: 1045: Access denied for user 'usr_backup'@'localhost' (using password: YES) when trying to connect
我尝试从 dump 命令中删除所有选项,但没有成功。
我尝试使用 mysql root 用户并创建了转储。
“usr_backup” 可能存在什么问题?
问候,苏拉杰
答案1
我知道这已经过时了,但我在遇到这个问题时偶然发现了它。以下是我遇到的情况。我有一个每晚运行 mysqldump 的脚本。我刚刚将一个新的数据库联机并添加了脚本。脚本使用的用户具有正确的权限,但仍然失败。我暂时授予备份用户 dba 访问权限,但仍然失败,但出现了另一个错误,即用户对不存在的内容具有权限。创建该用户,重置并刷新权限,然后它就可以正常工作了。希望这能有所帮助。