数据库外网无法访问解决办法

数据库外网无法访问解决办法

如果是阿里云购买的服务器,首先外网要能访问需要在阿里云里面设置安全策略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、重启服务

你可能感兴趣的:(PHP,Mysql,防火墙,3306)