全部產品
Search
文件中心

ApsaraDB for MongoDB:排查因串連數耗盡導致的資料庫連接問題

更新時間:Jun 20, 2024

當MongoDB執行個體的串連數被耗盡後,新發起的串連請求將無法被響應,本文介紹如何排查因串連數耗盡導致的資料庫連接問題。

故障表現

不同的MongoDB執行個體規格支援的最大串連數有所不同,詳情請參見執行個體規格概述

  • 部署的應用程式突然無法串連資料庫。

  • 已正確設定了白名單,通過Mongo Shell串連資料庫時,提示如下錯誤:

    2019-07-10T10:30:43.597+0800 E QUERY    [js] Error: network error while attempting to run command 'isMaster' on host 'dds-bpxxxxxxxx.mongodb.rds.aliyuncs.com:3717'  :
    connect@src/mongo/shell/mongo.js:328:13
    @(connect):1:6
    exception: connect failed
  • 已正確設定了白名單,通過DMS串連資料庫時,提示如下錯誤:

檢查串連數是否被耗盡

  1. 訪問MongoDB複本集執行個體列表MongoDB分區叢集執行個體列表,在上方選擇地區,然後單擊目標執行個體ID。

  2. 在目標執行個體頁面的左側導覽列,單擊監控資訊

  3. 監控資訊頁面,查看執行個體當前的串連數資訊。

    說明

    執行個體為分區叢集執行個體時,您需要在頁面右上方選擇業務當前使用的Mongos節點。

    不同規格的最大串連數,請參見執行個體規格表

解決方案

您可以通過重啟執行個體或節點來臨時釋放所有的串連。為避免再次出現該問題,重啟後建議您參考下述方法進行調整:

說明

重啟執行個體的操作會將執行個體的節點進行輪轉重啟,每個節點會有30秒左右的閃斷,如果集合的數量較多(超過1萬),閃斷時間也會隨之變長,重啟前請做好業務安排並確保應用有重連機制。