2015-07-21 73 views
0

遠程連接我試圖讓另一個網絡中的客戶機遠程連接到數據庫I;已經建立,但每次我試圖和設置它們的連接,我得到SQLSTATE[HY000] [2003] Can't connect to MySQL server on 'servername' (110)的MySQL從外部網絡

我有以下幾點:

  • MySQL用戶已經創建,設置爲
  • my.cnf中綁定地址已經被設置爲0.0.0.0
  • mysql服務的服務器的IP地址的主機已重新啓動
  • MySQL是運行在端口3306
  • 3306/TCP呼入被允許在我的服務器的防火牆

我從其他服務器測試這裏面我們的網絡,例如我自己的本地PC和另一臺Web服務器,爲這些特定的主機設置一個MySQL用戶,並且它工作正常。這只是我們網絡之外的那個不起作用。

難道這是他們最終阻止他們能夠連接的東西嗎?或者我錯過了什麼?

謝謝。

回答

1

從外部訪問MySQL。你應該啓用MySQL遠程訪問。

這裏是這樣做的方式:

1註釋掉以下行在MySQL配置(my.cnf中)

#bind-address   = 127.0.0.1 
#skip-networking 

2-保存文件,然後重新啓動MySQL服務器

3-更新GRANT特權

默認情況下,您正在使用的mysql用戶名和密碼被允許在本地訪問mysql-server。所以需要更新權限。

運行下面的查詢來更新特權

GRANT ALL PRIVILEGES ON *.* TO 'USERNAME'@'%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION; 

更改「用戶名」到你的數據庫用戶和「密碼」,以用戶密碼

+0

肯定我在我的問題解決了這些點..? –

+0

你有評論outed綁定地址,並跳過網絡?如果您沒有發現跳過網絡線路,請將其添加並註釋掉。 –

+0

bind-address最初被註釋掉了,我試過把它註釋掉,並將它設置爲0.0.0.0,並將其設置爲實際的IP地址。跳過網絡被註釋掉。仍然沒有快樂。 –