Ubuntu 16.04.2 LTS mysql 远程连接异常
1.先ping ~看看是否能通
2.telnet 192.168.5.1 3306 端口是否能通
3.设置服务器MySQL的远程访问
mysql -uroot -p
use mysql
2.telnet 192.168.5.1 3306 端口是否能通
3.设置服务器MySQL的远程访问
mysql -uroot -p
use mysql
update mysql.user set host='%'where user='root';
flush privileges;
flush privileges;
4. 设置mysql 3306端口的绑定ip
修改Mysql配置文件(注意路径,跟之前网上的很多版本位置都不一样)
vim /etc/mysql/mysql.conf.d/mysqld.cnf
找到

注释掉这一行
重启Mysql
/etc/init.d/mysql restart
4.仍然不行,检查防火墙状态,观察防火墙是否开启
systemctl status firewalld.service
systemctl status firewalld.service

上图显示防火墙没有开启
防火墙开启: 开放3306端口
1)iptables --list查看;
2)开启防火墙3306端口
vi /etc/sysconfig/iptables
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT(允许3306端口通过防火墙)
/etc/init.d/iptables restart(重启防火墙使配置生效)
3)或者直接关闭防火墙; 参考:http://blog.csdn.net/fjssharpsword/article/details/50973283
centos 7 以后是修改 firewall
systemctl start firewalld # 启动,
systemctl enable firewalld # 开机启动
systemctl stop firewalld # 关闭
systemctl disable firewalld # 取消开机启动
5、mysql配置文件检查
检查my.cnf的配置,bind-address=addr可以配置绑定ip地址。
不配置或者IP配置为0.0.0.0,表示监听所有客户端连接。
#ps -aux | grep mysql 查看进程ID是3340
#ll /proc/3340 查看进程程序情况,找配置文件
或者#which mysql 找程序路径
浙公网安备 33010602011771号