MySQL8.0开启远程连接权限的方法步骤
作者:Yale曼陀罗
问题描述:
开发环境: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
总结
到此这篇关于MySQL8.0开启远程连接权限的文章就介绍到这了,更多相关MySQL8.0开启远程连接权限内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!