萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> 怎麼讓mysql允許遠程連接的方法

怎麼讓mysql允許遠程連接的方法

mysql默認狀態是只支持localhost連接,這樣遠程服務器都輸入IP地址去連接你的服務器是不可以的,下面我來介紹怎麼讓mysql允許遠程連接配置方法,有需要的朋友可參考。

方法一,直接利用phpmyadmin在“權限”-》管理中修改用戶選擇*.*或輸入IP地址。

方法二,使用mysql的GRANT命令進行操作

例如:讓newuser用戶使用newpwd密碼從IP:192.168.1.3主機鏈接到mysql服務器 
 
具體步驟:

 代碼如下 復制代碼

mysql>GRANT ALL PRIVILEGES ON *.* TO ‘newuser’@’192.168.1.3′ IDENTIFIED BY ‘newpwd’ WITH GRANT OPTION;
mysql>flush privileges;  

完整配置方法

假設我們有:

 代碼如下 復制代碼 Web-Server : 192.168.1.100 //ubuntu
Mysql-Server : 192.168.1.101 //xp

我們可以按照下面的步驟修改:
1, 登錄 Mysql-Server 連接本地 mysql (默認只允許本地連接)

 代碼如下 復制代碼

Microsoft Windows XP [版本 5.1.2600]
(C) 版權所有 1985-2001 Microsoft Corp.

C:Documents and Settingskuco>mysql -h localhost -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 13
Server version: 5.1.45-community-log MySQL Community Server (GPL)

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql>

2, 修改 Mysql-Server 用戶配置

 代碼如下 復制代碼

mysql> USE mysql; -- 切換到 mysql DB
Database changed
mysql> SELECT User, Password, Host FROM user; -- 查看現有用戶,密碼及允許連接的主機
+------+----------+-----------+
| User | Password | Host      |
+------+----------+-----------+
| root |          | localhost |
+------+----------+-----------+
1 row in set (0.00 sec)

mysql> -- 只有一個默認的 root 用戶, 密碼為空, 只允許 localhost 連接
mysql> -- 下面我們另外添加一個新的 root 用戶, 密碼為空, 只允許 192.168.1.100 連接
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.100' IDENTIFIED BY '' WITH GRANT OPTION;

mysql> -- 當然我們也可以直接用 UPDATE 更新 root 用戶 Host, 但不推薦, SQL如下:
mysql> -- UPDATE user SET Host='192.168.1.100' WHERE User='root' AND Host='localhost' LIMIT 1;


grant 權限名(所有的權限用all) on    庫名(*全部).表名(*全部) to  ’要授權的用戶名‘@’%'(%表示所有的IP,可以只些一個IP) identified by “密碼”;
身份檢查使用user表(Host, User和Password)3個范圍列執行。服務器只有在user表記錄的Host和User列匹配客戶端主機名和用戶名並且提供了正確的密碼時才接受連接。
在user表Host值的指定方法:

 * Host值可以是主機名或IP號,或’localhost’指出本地主機。
 * 你可以在Host列值使用通配符字符“%”和“_”。
 * Host值’%'匹配任何主機名,空Host值等價於’%'。它們的含義與LIKE操作符的模式匹配操作相同。例如,’%'的Host值與所有主機名匹配,而’%.mysql.com’匹配mysql.com域
的所有主機。


3, 修改 Mysql 配置文件 my.ini

 代碼如下 復制代碼 bind-address = 127.0.0.1

將 bind-address = 127.0.0.1 這一行注釋掉, 即修改為:

 代碼如下 復制代碼 #bind-address = 127.0.0.1

到此 Mysql-Server 端配置就完成了.

4, 連接 Web-Server , 檢查一下是否能連上

 代碼如下 復制代碼

kuco@kuco-desktop:/$ /opt/lampp/bin/mysql -h 192.168.1.101 -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 23
Server version: 5.1.45-community-log MySQL Community Server (GPL)

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql> -- 一切OK

copyright © 萬盛學電腦網 all rights reserved