<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ### **1、描述:** 我們使用釘釘做數據庫慢日志告警,8月27號收到大量的全表掃描的告警信息,登錄到相關業務的服務器打開日志,開始搜索相關日志,看到如下的日志信息。 ![](images/screenshot_1576198362411.png) #### **1.1、分析一下日志:** 執行操作的具體時間、連接的id信息conn10433,command 后邊是dbname.tablename對哪個庫的那個表進行的操作,執行具體的操作為find dbname.tablename篩選的條件為{ id:28137 }取一行,singleBatch:true 確認是否在第一批之后關閉光標,默認為false,$db:數據庫名字,全表掃描掃描了667917行、查詢耗時325毫秒。 ### **2、排查:** 因為我們_id是主鍵,默認是有索引的,是否是業務新添加了id的字段,我們需要檢查一下這張表的索引和數據字段。 連接復制集群的一個SECONDARY節點查看索引: ``` rs2:SECONDARY> db.check_log.getIndexes() [ { "v" : 1, "key" : { "number" : 1 }, "name" : "number", "ns" : "check.check_log" }, { "v" : 1, "key" : { "createTime" : 1 }, "name" : "createTime", "ns" : "check.check_log" }, { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "check.check_log" } ] ``` #### **2..1、查看表數據** 我這里只展示部分數據,沒有查看到新添加的id字段。 ``` rs2:SECONDARY> db.check_log.find() { "_id" : NumberLong(115864478), "num" : NumberLong(10), "createTime" : NumberLong("1519974767169") } { "_id" : NumberLong(115869609), "num" : NumberLong(10), "createTime" : NumberLong("1519974768174") } { "_id" : NumberLong(105539931), "num" : NumberLong(1), "createTime" : NumberLong("1519974862116") } { "_id" : NumberLong(115915468), "num" : NumberLong(1), "createTime" : NumberLong("1519974864362") } ``` #### **2.2、和業務先溝通** 和業務線進行溝通是否有新上線業務,確認以后和業務一起查看業務查詢check_log表的代碼。 ![](images/screenshot_1577166685018.png) 仔細檢查代碼發現在轉換上缺少了一個下劃線**where("_id").is("id")** #### **2.3、explain執行計劃** 我們可以使用Mongodb的explain來幫助我們分析數據庫執行計劃。 > db.check_log.find({"_id":})
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看