分享方式:


針對適用於 MySQL 的 Azure 資料庫的連線問題進行疑難排解

適用於: 適用於 MySQL 的 Azure 資料庫 - 單一伺服器

重要

適用於 MySQL 的 Azure 資料庫單一伺服器位於淘汰路徑上。 強烈建議您升級至適用於 MySQL 的 Azure 資料庫彈性伺服器。 如需移轉至適用於 MySQL 的 Azure 資料庫彈性伺服器的詳細資訊,請參閱適用於 MySQL 的 Azure 資料庫單一伺服器會發生什麼事

連線問題可能由各種因素造成,包括:

  • 防火牆設定
  • 連線逾時
  • 不正確的登入資訊
  • 某些適用於 MySQL 的 Azure 資料庫資源已達最大限制
  • 服務基礎結構發生問題
  • 正在執行維修維護
  • 調整虛擬核心數目或移至不同的服務層級,變更伺服器的計算配置

一般而言,「適用於 MySQL 的 Azure 資料庫」的連線問題可分類如下:

  • 暫時性錯誤 (短期或間歇性)
  • 持續性或非暫時性錯誤 (定期重複發生的錯誤)

針對暫時性錯誤進行疑難排解

當執行維護、系統遇到硬體或軟體錯誤,或是您變更伺服器的虛擬核心或服務層級時,就會發生暫時性錯誤。 「適用於 MySQL 的 Azure 資料庫」服務內建高可用性,並已設計為可自動解決這些類型的問題。 不過,您的應用程式會有一小段時間與伺服器中斷連線,通常最多不超過 60 秒。 有些事件可能偶爾需要更長的時間才能解決,例如當有大型交易導致長時間執行的復原時。

解決暫時性連線問題的步驟

  1. 檢查 Microsoft Azure 服務儀表板 ,以了解是否有在應用程式回報錯誤期間發生的任何已知中斷。
  2. 連線到雲端服務 (例如「適用於 MySQL 的 Azure 資料庫」) 的應用程式應該預期會發生暫時性錯誤,並實作重試邏輯來處理這些錯誤,而不是將這些錯誤當作應用程式錯誤呈現給使用者。 請檢閱 處理適用於 MySQL 的 Azure 資料庫的暫時性連線錯誤,以了解處理暫時性錯誤的最佳做法和設計指導方針。
  3. 當伺服器接近其資源限制時,錯誤可能似乎是暫時性連線問題。 查看適用於 MySQL 的 Azure 資料庫中的限制
  4. 如果連線問題繼續發生,或如果您的應用程式發生錯誤的持續時間超過 60 秒,或如果您在一天當中,看到錯誤多次發生,請在 Azure 支援網站上選取 [取得支援],來提出 Azure 支援要求。

針對持續性錯誤進行疑難排解

如果應用程式持續無法連線到適用於 MySQL 的 Azure 資料庫,通常表示有下列其中一個問題:

  • 伺服器防火牆設定:請確定適用於 MySQL 的 Azure 資料庫伺服器防火牆已設定為允許來自用戶端的連線,包括 Proxy 伺服器和閘道。
  • 用戶端防火牆設定:用戶端上的防火牆必須允許與資料庫伺服器的連線。 在某些防火牆中,伺服器的 IP 位址和連接埠以及應用程式名稱是不被允許的,例如:MySQL。
  • 使用者錯誤:您可能輸入錯誤的連線參數 (例如連接字串中的伺服器名稱),或使用者名稱中遺漏 @servername 尾碼。

解決持續性連線問題的步驟

  1. 設定防火牆規則以允許用戶端的 IP 位址。 僅適用於臨時性的測試目的,請使用 0.0.0.0 作為起始 IP 位址並使用 255.255.255.255 作為結束 IP 位址來設定防火牆規則。 這麼做將對所有 IP 位址開啟伺服器。 若這樣可解決您的連線問題,請移除此規則並針對已適當限制的 IP 位址或位址範圍建立防火牆規則。
  2. 在用戶端與網際網路之間的所有防火牆上,確定開放連接埠 3306 供輸出連線使用。
  3. 確認您的連接字串和其他連線設定。 請檢閱如何將應用程式連線至適用於 MySQL 的 Azure 資料庫
  4. 在儀表板中檢查服務健康情況。 如果您認為有區域性中斷情況,請參閱使用適用於 MySQL 的 Azure 資料庫的商務持續性概觀,以瞭解復原到新區域的步驟。

下一步