1. 程式人生 > >mysql 允許遠程訪問

mysql 允許遠程訪問

mysqld tcp .net 遠程 lin dmi bar share 註釋

linux裝完MySQL後想用navcat連接數據庫 :

1、登錄到MySQL中,為root進行遠程訪問的授權,執行下面的命令:

mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";

mysql> flush privileges;

第一句中"%"表示任何主機都可以遠程登錄到該服務器上訪問。如果要限制只有某臺機器可以訪問,將其換成相應的IP即可,如:

GRANT ALL PRIVILEGES ON *.* TO root@"172.168.193.25" IDENTIFIED BY "root";

第二句表示從mysql數據庫的grant表中重新加載權限數據。因為MySQL把權限都放在了cache中,所以在做完更改後需要重新加載。

2、修改/etc/mysql/my.cnf,需要root用戶權限。找到文件中的:

bind-address = 127.0.0.1

將其註釋掉,保存。

3、重新啟動MySQL服務器。執行下面的幾條命令即可:

# /usr/bin/mysqladmin -u root -p shutdown

# /usr/bin/mysqld_safe &

如果mysqladmin和mysql_safe不在/usr/bin目錄中,可以通過whereis命令查找,例如:

# whereis mysqladmin
mysqladmin: /usr/bin/mysqladmin /usr/share/man/man1/mysqladmin.1.gz

執行完上面的三步後,還未連接數據庫數據庫了且 Can‘t connect to MySQL server (10060)異常

4.在iptables中開放3306端口

#/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
#/etc/rc.d/init.d/iptables save 保存:

# service iptables restart 重啟生效

當然除了開放3306端口外,還有一個方法就是關閉防火墻,命令為:

# service iptables stop

不過,不推薦這種做法,因為這會引起安全性問題。

mysql 允許遠程訪問