我在mongodb命令行運(yùn)行db.currentOp(),返回結(jié)果中出現(xiàn)"op" : "getmore",,請(qǐng)問(wèn)一下getmore是一個(gè)什么操作?而且特別耗時(shí):
>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)
}
}
}
]
}
getmore是從游標(biāo)中取數(shù)據(jù),遇到問(wèn)題可以先問(wèn)谷歌,那么得先學(xué)會(huì)翻墻……
你的數(shù)據(jù)越多它花的時(shí)間越多,這是正常的。你提供的數(shù)據(jù)是系統(tǒng)在從oplog中拉數(shù)據(jù)分發(fā)到從結(jié)點(diǎn),看起來(lái)是master/slave復(fù)制。
oplog表是一個(gè)沒(méi)有索引默認(rèn)又會(huì)比較大的表,所以第一次遍歷的時(shí)候會(huì)花比較長(zhǎng)的時(shí)間。