天天看点

如何开启MySQL的远程root帐号登陆

root用户远程连接MySQL时出现如下错误:

Host ‘XXX’ is not allowed to connect to this MySQL server

MySql access denied for user错误

解决方法/步骤

1.MySql远程连接时的“access denied for user **@**”错误,根据错误提示,查出解决方法。记录一下,怕以后再忘记:

2.首先本地登陆MySQL,
MySQL -uroot -p123456   (123456为root用户的密码。)
然后执行这两句代码:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;   #再执行语句,方可立即生效。

格式:grant 权限 on 数据库名.表名 用户@登录主机 identified by “用户密码”;

3.参数说明: 
ALL PRIVILEGES表示赋给远程登录用户的权限,ALL PRIVILEGES表示所有的权限,也可以单独或组合赋select,update,insert,delete权限;
*.*:第一个“*”表示要赋权的数据库名,"*" 表示全部数据库了(项目中注意指定库名),第二个“*”表示数据库下的表名,同理,这里的“*”表示全部表,自己开发当然就直接用*.*了,生产中的数据库就不建议这样使用了。

4.root表示要赋权的用户;%表示远程登录的IP,如果要限制登录IP的话,这里就添你允许登录的IP,比如192.18.1.99等,%表示不限制IP,123456是用户远程登录的密码。就这么简单。这句运行以后再运行FLUSH PRIVILEGES,搞定!

5.实例
GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.0.242.138' IDENTIFIED BY '123456' WITH GRANT OPTION;FLUSH PRIVILEGES;
           

继续阅读