# MongoDB 監控
在你已經安裝部署并允許MongoDB服務后,你必須要了解MongoDB的運行情況,并查看MongoDB的性能。這樣在大流量得情況下可以很好的應對并保證MongoDB正常運作。
MongoDB中提供了mongostat 和 mongotop 兩個命令來監控MongoDB的運行情況。
## mongostat 命令
mongostat是mongodb自帶的狀態檢測工具,在命令行下使用。它會間隔固定時間獲取mongodb的當前運行狀態,并輸出。如果你發現數據庫突然變慢或者有其他問題的話,你第一手的操作就考慮采用mongostat來查看mongo的狀態。
啟動你的Mongod服務,進入到你安裝的MongoDB目錄下的bin目錄, 然后輸入mongostat命令,如下所示:
```
D:\set up\mongodb\bin>mongostat
```
以上命令輸出結果如下:

## mongotop 命令
mongotop也是mongodb下的一個內置工具,mongotop提供了一個方法,用來跟蹤一個MongoDB的實例,查看哪些大量的時間花費在讀取和寫入數據。 mongotop提供每個集合的水平的統計數據。默認情況下,mongotop返回值的每一秒。
啟動你的Mongod服務,進入到你安裝的MongoDB目錄下的bin目錄, 然后輸入mongotop命令,如下所示:
```
D:\set up\mongodb\bin>mongotop
```
以上命令執行輸出結果如下:

帶參數實例
```
E:\mongodb-win32-x86_64-2.2.1\bin>mongotop 10
```

后面的10是_<sleeptime>_參數 ,可以不使用,等待的時間長度,以秒為單位,mongotop等待調用之間。通過的默認mongotop返回數據的每一秒。
```
E:\mongodb-win32-x86_64-2.2.1\bin>mongotop --locks
```
報告每個數據庫的鎖的使用中,使用mongotop - 鎖,這將產生以下輸出:

輸出結果字段說明:
* **ns:**
包含數據庫命名空間,后者結合了數據庫名稱和集合。
* **db:**
包含數據庫的名稱。名為 . 的數據庫針對全局鎖定,而非特定數據庫。
* **total:**
mongod花費的時間工作在這個命名空間提供總額。
* **read:**
提供了大量的時間,這mongod花費在執行讀操作,在此命名空間。
* **write:**
提供這個命名空間進行寫操作,這mongod花了大量的時間。
- NoSQL 簡介
- 什么是MongoDB ?
- window平臺安裝 MongoDB
- Linux平臺安裝MongoDB
- MongoDB 數據庫,對象,集合
- MongoDB - 連接
- PHP安裝MongoDB擴展驅動
- MongoDB 數據插入
- MongoDB使用update()函數更新數據
- MongoDB使用- remove()函數刪除數據
- MongoDB 查詢
- MongoDB條件操作符
- MongoDB條件操作符 - $type
- MongoDB Limit與Skip方法
- MongoDB 排序
- MongoDB 索引
- MongoDB 聚合
- MongoDB 復制(副本集)
- MongoDB 分片
- MongoDB 備份(mongodump)與恢復(mongorerstore)
- MongoDB 監控
- MongoDB Java
- MongoDB PHP
- MongoDB 關系
- MongoDB 數據庫引用
- MongoDB 覆蓋索引查詢
- MongoDB 查詢分析
- MongoDB 原子操作
- MongoDB 高級索引
- MongoDB 索引限制
- MongoDB ObjectId
- MongoDB Map Reduce
- MongoDB 全文檢索
- MongoDB 正則表達式
- MongoDB 管理工具: Rockmongo
- MongoDB GridFS
- MongoDB 固定集合(Capped Collections)
- MongoDB 自動增長
- 免責聲明