MySQL外网访问故障解决方案(mysql外网访问不了)
MySQL外网访问故障解决方案
作为流行的关系型数据库,MySQL是众多应用系统的重要组成部分,但有时在外网访问数据库时会遇到各种故障,这为服务端管理者带来了一定的麻烦,为此介绍几种解决MySQL外网访问故障的方案。
首先,要想让MySQL可以访问外网,需要配置MySQL的host。host表示主机,如果host不为’localhost’,则外网可以访问它。配置host的具体步骤是:
1. 打开MySQL服务(CentOS7默认MySQL版本为MariaDB)
[root@localhost ~]# service mysqld start
2. 连接MySQL
[root@localhost ~]# mysql -uroot -proot
3. 更改MySQL host
MariaDB [(none)]>use mysql;
MariaDB [mysql]>update user set host='%' where user = 'root'; MariaDB [mysql]>flush privileges;
MariaDB [mysql]>quit
4. 重新启动MySQL服务
[root@localhost ~]# service mysqld restart
其次,要使MySQL能够访问外网,还需要开启MySQL的端口(默认为3306),示例如下:
[root@localhost ~]# iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
再者,如果想使MySQL能够外网访问,还应该修改防火墙的设置,把3306端口放入清单中,如下所示:
[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
最后,如果安装了防火墙,还要把3306端口放入其禁止列表,否则会对MySQL端口进行监控:
[root@localhost ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
以上就是外网访问MySQL的方案,需要注意的是,这些操作会直接影响MySQL的安全性,因此在使用时,务必做到安全第一。