像搭建量推的时候,需要放开数据库连接权限,又或者需要用Navicat数据库工具连接登陆作修改工作,就会经常遇到过连接MySQL时出现:1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES)报错简单7步即可解决!

连接MySQL数据库报错:1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES) 第1张

(图:1045 - Access denied for user 'root'@)

准备工作:

安全组放开相应端口,使用终端连接工具FinalShell(其它Shell工具也可以)

解决步骤:

步骤1:登录数据库

mysql -uroot -p

登录到Mysql数据库,password:“输入数据库密码”,完成登陆!

连接MySQL数据库报错:1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES) 第2张

步骤2:进入数据库

use mysql

进入到mysql数据库中

连接MySQL数据库报错:1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES) 第3张

步骤3:查看授权列表

select host, user from user;

查看授权列表如图:

连接MySQL数据库报错:1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES) 第4张

根据上图的结果得知,我没有授权root用户可以在所有IP登录,所以造成无法登录。

步骤4:授权root用户可以在任意电脑登录MySQL数据库

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;

授权语句中的“youpassword”为你root账户的MySQL数据库密码。请不要写错!   

连接MySQL数据库报错:1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES) 第5张

步骤5:再次查询授权列表

use mysql

select host, user from user;

再次查询授权列表,是否有我们刚刚新增的授权记录。如下图所示:

连接MySQL数据库报错:1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES) 第6张

可以看到多了一个授权规则,这样就成功了!

步骤6:保存授权

使用命令

flush privileges;

保存授权名单。如下图所示:   

连接MySQL数据库报错:1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES) 第7张

步骤7:退出

操作完毕后,记得使用

quit

命令退出。如下图所示:

连接MySQL数据库报错:1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES) 第8张

最后:再次测试

连接MySQL数据库报错:1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES) 第9张

1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES),不能远程登录的问题就解决了!

其它问题:

如果是已经授权名单中,但是还无法登录时。您可以使用使用语句

delete from user where host = 'host地址' and user = '登录名';

进行删除后再次授权,'host地址'为需要删除授权的登录地址,'登录名为远程登录的用户名。

点赞(0)

评论列表 共有 0 条评论

暂无评论
立即
投稿
发表
评论
返回
顶部