Mysql

遠端 MySQL 連接失敗 (10060) - “無法連接到 domainname.com (10060) 上的 MySQL 伺服器”

  • October 3, 2020

我在 VB6 中開發了一個應用程序,並且正在使用一個線上 MySQL 數據庫伺服器來儲存我的應用程序的數據。

我第一次嘗試連接到我的數據庫伺服器是成功的,但是在關閉我的應用程序並再次啟動它之後,我得到:

無法連接到 MySQL 伺服器 (10060)"

一段時間後(大約 30 分鐘),我可以再次成功連接到數據庫。

  • 我已經為所有 MySQL 系統和全域變數(如connection_timeoutwait_timeout等)賦予了最大值。
  • 我已將所有權限授予我的 MySQL 使用者。
  • 我電腦上的防火牆已關閉。
  • 當應用程序關閉時,所有連接都正確關閉。

我詢問了提供線上 MySQL 數據庫服務的技術人員,他們給了我以下三個原因:

  1. 您嘗試連接的本地電腦未在伺服器上列入白名單。
  2. 已超過使用者的最大連接數。
  3. MySQL 伺服器當時停機(儘管他們說他們的伺服器沒有停機)。

如何解決前兩個原因,或確定它們是問題的原因?還是那裡沒有列出另一個問題?

你需要確保有:

  1. 創建的具有遠端訪問權限的使用者,例如 user@‘xxxx’
  2. 兩台機器可以建立連接(例如,它們可以相互ping通或通過另一種方法相互訪問) 兩台機器之間打開埠
  3. 檢查您的配置文件 my.ini/my.cnf中的參數,例如bind-addressskip-networking。是否有阻塞連接參數,例如:bind-address=a.a.a.askip-networking
  4. 當您嘗試從另一台電腦連接時,該服務已啟動並正在執行

我花了一整天的時間試圖弄清楚這一點,結果證明 Windows 網路被設置為公共而不是私有,這會阻止所有傳入連接。

從 tinker.com 上的截圖

網路配置文件

  • public:您的電腦對網路上的其他設備隱藏,不能用於列印機和文件共享
  • private:對於您信任的網路,例如在家或工作中。您的 PC 是可發現的,並且可以用於列印機和文件共享(如果您進行了設置)。

希望這可以幫助某人。

引用自:https://dba.stackexchange.com/questions/94102