搜索

首页  >  问答  >  正文

mongodb - db.currentOp()里面"op" : "getmore"是什么意思

我在mongodb命令行运行db.currentOp(),返回结果中出现"op" : "getmore",,请问一下getmore是一个什么操作?而且特别耗时:

>db.currentOp()
{
    "inprog" : [
            {
                    "opid" : 821006778,
                    "active" : true,
                    "secs_running" : 0,
                    "microsecs_running" : NumberLong(252939),
                    "op" : "getmore",
                    "ns" : "local.oplog.$main",
                    "query" : {

                    },
                    "client" : "10.171.53.62:34632",
                    "desc" : "conn9912",
                    "threadId" : "0x7f9665e39700",
                    "connectionId" : 9912,
                    "waitingForLock" : false,
                    "numYields" : 0,
                    "lockStats" : {
                            "timeLockedMicros" : {
                                    "r" : NumberLong(14),
                                    "w" : NumberLong(0)
                            },
                            "timeAcquiringMicros" : {
                                    "r" : NumberLong(1),
                                    "w" : NumberLong(0)
                            }
                    }
            }
    ]
}
某草草某草草2757 天前1760

全部回复(1)我来回复

  • PHP中文网

    PHP中文网2017-05-02 09:24:35

    getmore是从游标中取数据,遇到问题可以先问谷歌,那么得先学会翻墙……
    你的数据越多它花的时间越多,这是正常的。你提供的数据是系统在从oplog中拉数据分发到从结点,看起来是master/slave复制。
    oplog表是一个没有索引默认又会比较大的表,所以第一次遍历的时候会花比较长的时间。

    回复
    0
  • 取消回复