MySql-Server 出于安全方面考虑只允许本机(localhost, 127.0.0.1)来连接访问. 这对于 Web-Server 与 MySql-Server 都在同一台服务器上的网站架构来说是没有问题的. 但随着网站流量的增加, 后期服务器架构可能会将 Web-Server 与 MySql-Server 分别放在独立的服务器上, 以便得到更大性能的提升, 此时 MySql-Server 就要修改成允许 Web-Server 进行远程连接.
假设我们有:
Web-Server : 192.168.1.100 //ubuntu
Mysql-Server : 192.168.1.101 //xp
我们可以按照下面的步骤修改:
1, 登录 Mysql-Server 连接本地 mysql (默认只允许本地连接)
01 |
Microsoft Windows XP [版本 5.1.2600] |
02 |
(C) 版权所有 1985-2001 Microsoft Corp. |
04 |
C:\Documents and Settings\kuco>mysql -h localhost -u root -p |
06 |
Welcome to the MySQL monitor. Commands end with ; or \g. |
07 |
Your MySQL connection id is 13
|
08 |
Server version: 5.1.45-community-log MySQL Community Server (GPL) |
10 |
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
|
2, 修改 Mysql-Server 用户配置
03 |
mysql> SELECT User , Password , Host FROM user ;
|
05 |
| User | Password | Host |
|
07 |
| root | | localhost | |
09 |
1 row in set (0.00 sec)
|
13 |
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root' @ '192.168.1.100' IDENTIFIED BY '' WITH GRANT OPTION ;
|
3, 修改 Mysql 配置文件 my.ini
1 |
bind-address = 127.0.0.1 |
2 |
将 bind-address = 127.0.0.1 这一行注释掉, 即修改为: |
3 |
#bind-address = 127.0.0.1 |
4 |
到此 Mysql-Server 端配置就完成了. |
4, 连接 Web-Server , 检查一下是否能连上
view sourceprint?
1 |
kuco@kuco-desktop:/$ /opt/lampp/bin/mysql -h 192.168.1.101 -u root -p |
3 |
Welcome to the MySQL monitor. Commands end with ; or \g. |
4 |
Your MySQL connection id is 23
|
5 |
Server version: 5.1.45-community-log MySQL Community Server (GPL) |
7 |
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
|
当然也可以用 php 程序去验证:
2 |
mysql_connect( "192.168.1.101" , "root" , "" ) or die ( "Could not connect: " . mysql_error());
|