mongo statmongostat是mongdb自帶的狀態(tài)檢測(cè)工具,在命令行下使用。它會(huì)間隔固定時(shí)間獲取mongodb的當(dāng)前運(yùn)行狀態(tài),并輸出。如果你發(fā)現(xiàn)數(shù)據(jù)庫(kù)突然變慢或者有其他問(wèn)題的話,你第一手的操作就考慮采用mongostat來(lái)查看mongo的狀態(tài)。
它的輸出有以下幾列:
inserts/s 每秒插入次數(shù)
query/s 每秒查詢次數(shù)
update/s 每秒更新次數(shù)
delete/s 每秒刪除次數(shù)
getmore/s 每秒執(zhí)行g(shù)etmore次數(shù)
command/s 每秒的命令數(shù),比以上插入、查找、更新、刪除的綜合還多,還統(tǒng)計(jì)了別的命令
flushs/s 每秒執(zhí)行fsync將數(shù)據(jù)寫入硬盤的次數(shù)。
mapped/s 所有的被mmap的數(shù)據(jù)量,單位是MB,
vsize 虛擬內(nèi)存使用量,單位MB
res 物理內(nèi)存使用量,單位MB
faults/s 每秒訪問(wèn)失敗數(shù)(只有Linux有),數(shù)據(jù)被交換出物理內(nèi)存,放到swap。不要超過(guò)100,否則就是機(jī)器內(nèi)存太小,造成頻繁swap寫入。此時(shí)要升級(jí)內(nèi)存或者擴(kuò)展
locked % 被鎖的時(shí)間百分比,盡量控制在50%以下吧
idx miss % 索引不命中所占百分比。如果太高的話就要考慮索引是不是少了
q t|r|w 當(dāng)mongodb接收到太多的命令而數(shù)據(jù)庫(kù)被鎖住無(wú)法執(zhí)行完成,它會(huì)將命令加入隊(duì)列。這一欄顯示了總共、讀、寫3個(gè)隊(duì)列的長(zhǎng)度,都為0的話表示mongo毫無(wú)壓力。高并發(fā)時(shí),一般隊(duì)列值會(huì)升高。
conn 當(dāng)前連接數(shù)
time 時(shí)間戳