远程连接服务器mysql,连接失败问题及解决
作者:白鸽呀
本文主要介绍了如何设置MySQL远程访问权限,首先检查并开启防火墙,然后开放MySQL的3306端口,接着设置新的具有远程访问权限的账户,并并更新用户权限;最后重启MySQL,文中建议使用第二种方案,即创建新用户并赋予其远程访问权限
防火墙
1、查看防火墙是否打开
sysytemctl status firewalld

2、如果没有打开需要打开防火墙
systemctl start firewalld 或者 firewall-cmd --reload
3、如果防火墙开了,查看对应的3306端口是否向外开放
firewall-cmd --list-all

如果没有开放该端口,那么
firewall-cmd --permanent --add-port=3306/tcp 开放 firewall-cmd --reload 刷新
确保万一,可以取云服务器设置开放安全组
云服务器中的账户,并不允许外部访问/没有开放外部访问的权限
登入mysql
use mysql; select host,user from user;
可以看到此时,root用户只允许本地访问

此时要能远程访问,要么root用户要拥有远程访问的权限,要么新建用户且拥有远程访问的权限
建议第二种,第一个命令
上述完成后
flush privileges;
重启mysql即可。
- 设置新的账户并支持远程登录,语句为:GRANT ALL PRIVILEGES ON . TO ‘xiaoxuya’@’%’;
- 给与root权限 update user set host="%" where user=“root”; 或者 GRANT ALL PRIVILEGES ON . TO ‘root’@’%’
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
