2013-03-22 168 views
4

上的MySQL服務器所以我有一個PHP文件託管在Namecheap服務器上。無法連接到'ipaddress'(110)

$db=mysql_connect ("ipaddress", "user", "pass") or die ('I cannot connect to the database because: ' . mysql_error()); 

,它給這個錯誤:因爲

我無法連接到數據庫:無法連接到MySQL服務器上的「ip地址」(110)

我可以連接到該數據庫使用網絡外的mysql工作臺就好了。

+1

...你沒有連接到'ipaddress' ..你是嗎?另外,'mysql_'函數已被棄用。使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/mysqli) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪一個。 – Kermit 2013-03-22 17:34:10

+0

嘗試連接到127.0.0.1?假設服務器和DB在同一個盒子上? – Doon 2013-03-22 17:37:12

+0

對不起,我沒有清楚地說出來。但Namecheap站點和MYSQL DB不在同一個網絡上。 – 2013-03-22 19:50:59

回答

4

如果你正在使用MySQL的數據庫解決方案(這似乎很奇怪,因爲IIS的Windows Server操作系統上使用)

試運行(作爲root):

GRANT ALL ON Database.* TO [email protected]'IPAddress' IDENTIFIED BY 'PASSWORD';

哪裏第二個是您授予的權限,這是一個佔位符全部

這將允許從您指定的IP連接

另外一個問題是從您的網絡內部連接到您的MySQL引擎,您將自然地從內部IPV4地址(例如192.168.0.x)連接,這不需要portforwarding。但如果您正在使用:

mysql_connect('WANIP', 'User', 'password');您將不得不將端口3306轉發到您的服務器。 http://www.portforward.com尋求幫助。

編輯:

http://dev.mysql.com/doc/refman/5.0/en/can-not-connect-to-server.html

本課程的手冊,如果您使用Microsoft SQL Server檢查此鏈接了這個可以提供一些援助


http://blogs.msdn.com/b/walzenbach/archive/2010/04/14/how-to-enable-remote-connections-in-sql-server-2008.aspx

+0

是我已經完成了這項工作: GRANT ALL ON *。* TO用戶名@'%'IDENTIFIED BY'PASSWORD'; 今天晚些時候我可以試試你的命令。我也會查看其他鏈接。我只是不明白爲什麼我可以連接使用工作臺,而不是從非現場服務器(namecheap)通過PHP。 – 2013-03-22 19:52:09

+0

@AlMcKenzie您使用的是內部IPV4地址嗎?或WANIP? – 2013-03-22 21:39:58

6

我遇到過這個問題。我所做的是使用互聯網地址,而不是您的公共IP/DNS。

因爲我使用的是Linux,所以我會做ifconfig,你會看到inet addr: xxx.xxx.xxx.xxx並使用該IP作爲你的主機而不是公共IP/DNS。在Windows上,只需使用您的本地IP地址即可。

就是這樣!

0

我在我的服務器上安裝opencart時遇到了這個問題。當我使用Windows服務器時,它需要網站/域的IP地址。現在當轉移到Linux主機,Linux主機指定爲本地主機並完成。我可以安裝opencart

相關問題