2013-04-25 26 views
13

我的網站在本地主機'Wamp'服務器上工作完美。但是,只要我上傳到我的網絡主機供他人使用,我得到以下錯誤:主機'主機名'因多次連接錯誤而被阻止;用'mysqladmin flush-hosts'解鎖'

主機'stats.starfish.arvixe.com'由於連接錯誤而被阻止;用'mysqladmin flush-hosts'解除封鎖

由於我使用共享主機並且缺少權限,我無法執行'flush-hosts'命令。

我在網上進行了大量搜索,找不到可能導致連接錯誤的可靠答案。該網站工作了一段時間,但只要多人開始使用它,MySQL會阻止我的網絡主機,因爲它有太多的連接錯誤。

是否有任何種類的日誌我可以訪問或查看,可以告訴我什麼導致連接錯誤?

+3

嗯....我曾經發現過這個問題。似乎很多人同時使用MySQL服務器,並使錯誤顯示出來。請聯繫您的託管服務提供商爲您檢查。 – 2013-04-26 04:38:08

+0

你使用持續連接嗎?我已經看到由於之前啓用持久連接而導致的這類問題。 – jbrahy 2015-08-04 15:22:32

回答

0

我有同樣的問題。但我解決了它這樣的:

  1. 登錄「域管理員面板」www.yourdomainname.com/cpanel
  2. 轉到「數據庫」部分,然後點擊「遠程MySQL」選項

    enter image description here

  3. 在接下來的頁面中,在「主機(%通配符是允許的)」文本字段把"%"並按「添加主機」按鈕

    enter image description here

  4. 現在你應該看到"%"在下面的列表中,並從那裏你可以隨時按下「X」按鈕將其刪除。

  5. 現在去你的 「PHP腳本」 文件和設置您的數據庫主機名,沒有"http://""www"

    enter image description here

現在嘗試重新連接。希望它能幫助你。

記住:
通過這樣做,你允許外部Web服務器通過增加他們的域名是能夠訪問你的網站數據庫的主機列表來訪問你的MySQL數據庫。

+0

OP的主辦方是否使用cPanel?它是否在該URL下運行? – PeeHaa 2014-08-07 11:54:55

+0

你不覺得它有點不安全嗎? – strangeqargo 2016-04-25 17:55:58

0

使用「localhost」作爲數據庫主機上,如果你的網站是在DB的同一服務器託管

+0

這很可能不成問題,特別是如果MySQL服務器在'stats.starfish.arvixe.com'響應,如問題所示。 – ceejayoz 2015-08-27 18:53:59

1

https://dev.mysql.com/doc/refman/5.0/en/blocked-host.html

你的問題是,你是不斷嘗試連接,你是失敗的。共享服務器被設置爲保護自己免受這種行爲的影響,並且阻止了你。關閉您的應用程序一段時間,然後解決連接問題,然後重新打開。

服務器上設置了再次嘗試之前的時間,可能位於您看不到的地方。所以嘗試每15分鐘一段時間,直到你被允許嘗試...

我會建議一個備用MySQL服務器(也許是本地)來練習,這樣你就可以避免看起來這個主機作爲一個蠻力攻擊未來。在「開啓服務」之前,請始終手動測試您的連接。

相關問題