像搭建量推的时候,需要放开数据库连接权限,又或者需要用Navicat数据库工具连接登陆作修改工作,就会经常遇到过连接MySQL时出现:1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES)报错,简单7步即可解决!
(图:1045 - Access denied for user 'root'@)
准备工作:
安全组放开相应端口,使用终端连接工具FinalShell(其它Shell工具也可以)
解决步骤:
步骤1:登录数据库
mysql -uroot -p
登录到Mysql数据库,password:“输入数据库密码”,完成登陆!
步骤2:进入数据库
use mysql
进入到mysql数据库中
步骤3:查看授权列表
select host, user from user;
查看授权列表如图:
根据上图的结果得知,我没有授权root用户可以在所有IP登录,所以造成无法登录。
步骤4:授权root用户可以在任意电脑登录MySQL数据库
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;
授权语句中的“youpassword”为你root账户的MySQL数据库密码。请不要写错!
步骤5:再次查询授权列表
use mysql
select host, user from user;
再次查询授权列表,是否有我们刚刚新增的授权记录。如下图所示:
可以看到多了一个授权规则,这样就成功了!
步骤6:保存授权
使用命令
flush privileges;
保存授权名单。如下图所示:
步骤7:退出
操作完毕后,记得使用
quit
命令退出。如下图所示:
最后:再次测试
1045 - Access denied for user 'root'@'0.0.0.0'(using password: YES),不能远程登录的问题就解决了!
其它问题:
如果是已经授权名单中,但是还无法登录时。您可以使用使用语句
delete from user where host = 'host地址' and user = '登录名';
进行删除后再次授权,'host地址'为需要删除授权的登录地址,'登录名为远程登录的用户名。
发表评论 取消回复