报错信息:

mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using pas
sword: YES) when trying to connect

运行环境:windows

用root@localhost可以正常登录mysql,但是mysqldump拒绝访问,查看了root权限,发现权限没有问题,最后决定新建一个实验账户

CREATE USER dumper@'localhost' IDENTIFIED BY 'dumper';
GRANT select ON test.* TO dumper@localhost;
GRANT show view ON test.* TO dumper@localhost;
GRANT trigger ON test.* TO dumper@localhost;
GRANT lock tables ON test.* TO dumper@localhost;

dumper被设置了可以备份test库的权限,可以正常登录数据库,仍然无法访问mysqldump

开始逐渐给mysqldump加参数,最后发现在加上端口-P3307后访问成功

mysqldump -udumper -pdumper -hlocalhost -P3307 test>test.sql

查看配置文件,mysql的端口被同一修改成3307,但是mysqldump默认为3306,之后用root账户也可以正常备份

Logo

更多推荐