2013-12-20 61 views
1

我正在使用C++連接器和與之配合的示例代碼之一,當我將主機地址從本地主機地址更改爲我的計算機地址時,它不會允許外部連接連接到我的數據庫服務器在哪裏運行。MySQL服務器不接受遠程連接

這完全連接,沒有任何問題:

con = driver->connect("tcp://127.0.0.1:3306", "Shawn", "my_pass"); 

但很明顯,當我改變電腦這不會工作,所以我設置的主機地址到我的電腦在服務器運行的是這樣的:

con = driver->connect("tcp://108.xxx.xxx.xxx:3306", "Shawn", "my_pass"); 

* X的表示數來隱藏我的IP

爲什麼不是conn將ECT?

我允許諾頓360(接管Windows防火牆)接受來自我的程序的任何和所有連接和端口。

我給了用戶 「肖恩」 必須接受通過 「%」 的所有主機的privledges:

http://i.imgur.com/F92qeua.png

我得到這個MySQL錯誤:

http://i.imgur.com/OMAhtpg.png

+0

你讀過http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html? – floww

+0

我已經閱讀過文章,希望我能夠更改my.cnf文件中的「綁定地址」,但是我的計算機上與mysql有關的所有my.cnf文件都沒有任何「綁定地址」語句的文件。我不知道人們在哪裏找到這個特殊的my.cnf文件 –

+0

如果你沒有找到它,你可能會添加它。 – floww

回答

0

你也可以使用此連接字符串傳遞Socket參數。 或 您可以嘗試使用主機名而不是ipaddress。

如果仍然youre問題未解決。防火牆/ iptables在服務器端啓用,所以你需要停止它。

+0

你是什麼意思主機名?什麼是主機名的例子,所以我知道你在說什麼,請 –