数据库外网无法访问解决办法
如果是阿里云购买的服务器,首先外网要能访问需要在阿里云里面设置安全策略80端口和3306
如果mysql无法外网无法访问就需要修改配置文件my.cnf
注释掉 skip-grant-tables skip-networking 这两个
netstat -an | grep 3306 查看3306是否监控
1.登录数据库
mysql -u root -p
输入密码
mysql> use mysql;
2.查询host
mysql> select user,host from user;
3.创建host
如果没有"%"这个host值,就执行下面这两句:
mysql> update user set host='%' where user='root';
mysql> flush privileges;
4.授权用户
任意主机以用户root和密码mypwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;
备注:防火墙需要开放3306端口
5、打开防火墙配置文件(还是不能的就检查防火墙配置)
(1)、打开防火墙配置文件
vi /etc/sysconfig/iptables
(2)、增加下面一行(注意:增加的开放3306端口的语句一定要在icmp-host-prohibited之前)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
(3)、重启防火墙
service iptables restart
备注:关闭防火墙 service iptables stop
6、重启服务