MySql-Server 出于平安方面思考只容许本机(localhost, 127.0.0.1)来连贯拜访,这对于 Web-Server 与 MySql-Server 都在同一台服务器上的网站架构来说是没有问题的。

但随着网站流量的减少,前期服务器架构可能会将 Web-Server 与 MySql-Server 别离放在独立的服务器上,以便失去更大性能的晋升,此时 MySql-Server 就要批改成容许 Web-Server 进行近程连贯。

开启了近程连贯,数据库的前期治理运维也不必每次都登到服务器,只有用图形化界面(如phpMyAdmin)即可远程管理。

开启MySql-Server近程连贯次要从受权拜访ip和服务器端口进行操作:

1.在服务器上登录 Mysql-Server 连贯本地 mysql (默认只容许本地连接,phpMyAdmin的近程拜访理论相当于本地连接):

[root@iZq2mvq6snkcniZ ~]# mysql -uroot -p123456      

123456是明码,请应用您数据库的明码。此处以命令行登录举例,也能够应用图形界面等。

2.批改 Mysql-Server 用户配置:

MySQL [(none)]>use mysql;#查看现有用户,明码及容许连贯的主机MySQL [mysql]> SELECT User, Password, Host FROM user;        +------+-------------------------------------------+-----------+| User | Password                                  | Host      |+------+-------------------------------------------+-----------+| root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | localhost || root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | 127.0.0.1 |+------+-------------------------------------------+-----------+2 rows in set (0.00 sec)#设置为所有IP都能够拜访,比拟危险,不倡议。MySQL [mysql]> UPDATE user SET Host=@'%' where user='root' AND Host='localhost' LIMIT 1;       MySQL [mysql]> flush privileges;#再次查看现有用户,明码及容许连贯的主机MySQL [mysql]> SELECT User, Password, Host FROM user;       +------+-------------------------------------------+-----------+| User | Password                                  | Host      |+------+-------------------------------------------+-----------+| root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |           || root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | 127.0.0.1 |+------+-------------------------------------------+-----------+

3.最初,请留神在linux服务器上,默认3306端口是敞开的,不容许近程拜访。因而须要关上3306端口供mysql近程连贯应用,端口关上办法:

[root@iZq2mvq6snkcniZ ~]# iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT[root@iZq2mvq6snkcniZ ~]# service iptables save

至此,就能够真正近程拜访数据库了,近程拜访举例:

其余命令参考:
上面咱们配置 root 用户: 明码为空, 只容许从 192.168.1.100 连贯。

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.100' IDENTIFIED BY '' WITH GRANT OPTION;@'192.168.1.100'能够替换为@‘%’就可任意ip拜访,当然咱们也能够间接用 UPDATE 更新 root 用户 Host, SQL如下:mysql> UPDATE user SET Host='192.168.1.100' WHERE User='root' AND Host='localhost' LIMIT 1;
本文由Websoft9原创公布,转载请注明出处。