造成报错原因有两个:1. mysql远程连接服务未开启被拒绝。 2. 服务器3306被防火墙阻挡掉,造成拒绝连接。解决方法如下:
1. 设置mysql远程访问权限
//连接mysql
mysql -u root -p
//赋予权限
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY '123456' WITH GRANT OPTION;
mysql> flush privileges;
//退出
mysql>exit
2. iptables中开放3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
提示success,表示设置成功。
查看防火墙状态:
systemctl status firewalld //查看防火墙状态 dead(未开启),running(已开启)。
systemctl start firewalled //开启防火墙,成功没任何提示。
systemctl stop firewalled //关闭防火墙。