MySQL8.0开启远程连接权限
Yale曼陀罗 人气:10问题描述:
开发环境:MySQL8+Centos8;
执行MySQL语句:mysql -h 180.76.XXX.XX -u root -pPassword;
报错原因:
ERROR 1130 (HY000): Host ‘180.76.XXX.XX’ is not allowed to connect to this MySQL server
解决方法:
首先,检查要连接数据库的服务器的防火墙等是否关闭,检查与服务器连接是否通畅(方法:在cmd控制台中 输入 ping ip地址)
接下来,进入正题:
具体操作步骤如下:
登录本地MySQL库, 切换至database= “mysql” 下,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从"localhost"改称"%" :
执行的mysql命令如下:
【1】mysql命令连接要开启远程连接权限的本地mysql库 >mysql -u root -pPassWord # ”root“为登录账号,”Password“为登录密码,按自己设置的修改 >use mysql; # 使用的database名称为”mysql“ >update user set host = '%' where user = 'root'; # 修改”root“账号的配置信息 # update user set host='%' where user='test'; ## 如果账号是“test”,使用该命令 >select host, user from user; # 验证修改成功;
在mysql命令行的具体执行结果如下图:
2. 此时“如果连接远程MySQL,还是没连接上”时,则再继续执行操作 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
进行账号授权,之后执行FLUSH PRIVILEGES;
进行刷新,即可。" :
>mysql -u root -pPassWord # ”root“为登录账号,”Password“为登录密码,按自己设置的修改 # 连接MySQL数据库 >GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION; # 授权 # Grant all privileges on test.* to 'test'@'%'; # 如果账号为“test”时,使用该命令 >FLUSH PRIVILEGES; # 刷新 >EXIT; # 退出MySQL
在mysql命令行的具体执行结果如下图:
备注:注意这里一定要以英文分号结尾!!!
这时没有上面的ERROR 1133错误了,经过测试,已经能连接到远程服务器了。
总的执行步骤如下:
参考文献:
解决mysql8报错:ERROR 1410 (42000): You are not allowed to create a user with GRANT
总结
加载全部内容