亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 64363 | 回復(fù): 0
打印 上一主題 下一主題

[MongoDB] MongoDB 生態(tài) – 官方命令行工具 [復(fù)制鏈接]

求職 : Linux運(yùn)維
論壇徽章:
203
拜羊年徽章
日期:2015-03-03 16:15:432015年辭舊歲徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:57:092015小元宵徽章
日期:2015-03-06 15:58:182015年亞洲杯之約旦
日期:2015-04-05 20:08:292015年亞洲杯之澳大利亞
日期:2015-04-09 09:25:552015年亞洲杯之約旦
日期:2015-04-10 17:34:102015年亞洲杯之巴勒斯坦
日期:2015-04-10 17:35:342015年亞洲杯之日本
日期:2015-04-16 16:28:552015年亞洲杯紀(jì)念徽章
日期:2015-04-27 23:29:17操作系統(tǒng)版塊每日發(fā)帖之星
日期:2015-06-06 22:20:00操作系統(tǒng)版塊每日發(fā)帖之星
日期:2015-06-09 22:20:00
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2016-11-30 21:00 |只看該作者 |倒序瀏覽
工欲善其事,必先利其器,我們在使用數(shù)據(jù)庫時,通常需要各種工具的支持來提高效率;很多新用戶在剛接觸 MongoDB 時,遇到的問題是『不知道有哪些現(xiàn)成的工具可以使用』,本系列文章將主要介紹 MongoDB 生態(tài)在工具、driver、可視化管理等方面的支持情況。

本文主要介紹 MongoDB 官方的命令行工具

Mongo shell

MongoDB 的命令行管理工具,也是 MongoDB 最常用的工具,功能非常豐富,比如常用的

show dbs / show tables / show users …
db.stats() 查看 db 的元數(shù)據(jù)信息
db.colleciont.stats() 查看集合的元數(shù)據(jù)信息
db.serverStatus() 查看數(shù)據(jù)庫狀態(tài)信息
rs.conf() 查看復(fù)制集的配置信息
rs.status() 查看復(fù)制集的狀態(tài)信息
rs.reconfig() 更改復(fù)制集的配置
db.printSlaveReplicationInfo() 查看主備同步延時
db.runCommand() 執(zhí)行命令

值得一提的是,Mongo shell 還能直接執(zhí)行js 腳本,對于單個語句沒法完成的操作,可以寫個簡單的 js 腳本,然后通過 mongo shell 來調(diào)用,這個功能對于日常的管理、分析等非常方便。

mongo --host localhost:27017 do_something.js
mongo shell 還支持命令歷史、命令補(bǔ)全等非常貼心的功能,用起來跟linux bash 的體驗差不多。

mongostat

mongostat 也是很常用的工具,能查看MongoDB 實時的增刪改查操作的 pqs、以及內(nèi)存使用、網(wǎng)絡(luò)吞吐的信息。

$mongostat --host localhost:27017
insert query update delete getmore command % dirty % used flushes vsize  res qr|qw ar|aw netIn netOut conn                      time
  7803 93665  15601   7803       0 15604|0     6.1   79.7       0  1.8G 1.1G   0|0  14|2   17m    31m    0 2016-11-29T16:42:00+08:00
  7921 95062  15842   7922       0 15842|0     6.4   80.0       0  1.8G 1.1G   7|0  10|1   17m    32m    0 2016-11-29T16:42:01+08:00
  7996 95816  15985   7995       0 15978|0     6.5   79.6       0  1.8G 1.1G   2|0  17|1   17m    29m    0 2016-11-29T16:42:02+08:00
  7995 96038  16001   7995       0 16009|0     7.3   84.7       0  1.8G 1.1G   1|0  13|3   17m    30m    0 2016-11-29T16:42:03+08:00
  7836 93945  15672   7836       0 15665|0     7.3   84.5       0  1.8G 1.1G   0|0  13|1   17m    29m    0 2016-11-29T16:42:04+08:00
mongostat 也支持按復(fù)制集的方式去連接,可以同時查看復(fù)制集多個節(jié)點的實時性能數(shù)據(jù)。

如果使用的是MongoDB 3.2的最新版本,dirty持續(xù)超過20 或者 used 持續(xù)超過95,說明實例的訪問已經(jīng)超負(fù)荷了,可能 cpu 或 IO 資源已經(jīng)不夠用了,需要重點關(guān)注下。

mongotop

mongotop 能實時查看 MongoDB 在哪些集合上花的讀寫時間最多,能快速找出實例里的熱點集合。

$mongotop --host localhost:27017
         ns    total    read    write    2016-11-29T16:52:54+08:00
sb.sbtest30    673ms     0ms    673ms
sb.sbtest32    666ms     0ms    666ms
sb.sbtest56    665ms     0ms    665ms
sb.sbtest36    660ms     0ms    660ms
sb.sbtest38    651ms     0ms    651ms
sb.sbtest29    648ms     0ms    648ms
sb.sbtest21    647ms     0ms    647ms
sb.sbtest5    647ms     0ms    647ms
sb.sbtest53    647ms     0ms    647ms
sb.sbtest28    644ms     0ms    644ms
mongoimport/mongoexport

mongoexport 支持以 JSON 或者 CSV 的格式導(dǎo)出 MongoDB 存儲的數(shù)據(jù),然后使用 mongoimport 將其導(dǎo)入到其他的實例;mongoexport 支持導(dǎo)出單個集合的數(shù)據(jù),并能指定查詢條件來導(dǎo)出部分符合條件的數(shù)據(jù)。

mongoexport --db sales --collection contacts --query '{"field": 1}'
mongodump/mongorestore

mongodump 與 mongoexport 類似,可用于導(dǎo)出 MongoDB 的數(shù)據(jù),不同的時,mongodump 導(dǎo)出的數(shù)據(jù)以 BSON 的格式存儲(BSON 格式數(shù)據(jù)可以通過 bsondump 工具來轉(zhuǎn)換為 json),存儲空間占用上比 JSON、CSV 更小,另外,mongodump 還支持對導(dǎo)出的數(shù)據(jù)進(jìn)行壓縮、歸檔,所以如果要對 MongoDB 的數(shù)據(jù)進(jìn)行定期備份,推薦使用 mongodump 或 直接進(jìn)行物理文件備份。

mongodump --archive=test.20150715.gz --gzip --db test
mongooplog

mongooplog 可以用于2個獨立的 MongoDB 實例間的數(shù)據(jù)同步,它會不斷的從源實例拉取 oplog(tailable cursor),然后重放到目標(biāo)實例。

mongooplog  --from mongodb0.example.net --host mongodb1.example.net
mongofiles

mongofiles 是 gridfs 的命令行客戶端,用于向 MongoDB 存儲、讀取文件,mongofiles 支持put、get、list等接口。

$mongofiles --host localhost:27017 put hello
$mongofiles --host localhost:27017 get hello
mongosniff

mongosniff 是 MongoDB 的抓包工具,直接下載二進(jìn)制包可能并不包含這個工具,需要下載源碼編譯出來,mongosniff 可以抓取某個 MongoDB 實例的所有請求及應(yīng)答數(shù)據(jù),對于 MongoDB driver 的開發(fā)者非常有幫助,也可以用于一些網(wǎng)絡(luò)問題的定位。

$sudo mongosniff --source NET bond0 27017 | head -n 10
sniffing... 27017
10.1.2.3.3:31405  -->> 10.1.2.3.4:27017   172 bytes  id:165a40    1464896
    command: replSetHeartbeat database: admin metadata: { $replData: 1 } commandArgs: { replSetHeartbeat: "mongo-9554", configVersion: 23, from: "r101072137.sqa.zmf:9554", fromId: 0, term: 69 } inputDocs: [ ]
10.1.2.3.4:27017  <<--  10.1.2.3.3:31405   445 bytes  id:133027   1257511
    commandReply: { ok: 1.0, state: 2, v: 23, hbmsg: "", set: "mongo-9554", syncingTo: "r101072137.sqa.zmf:9554", term: 69, primaryId: 0, durableOpTime: { ts: Timestamp 1480088534000|1, t: 69 }, opTime: { ts: Timestamp 1480088534000|1, t: 69 } } metadata: { $replData: { term: 69, lastOpCommitted: { ts: Timestamp 1480088534000|1, t: 69 }, lastOpVisible: { ts: Timestamp 1479887534000|1, t: 68 }, configVersion: 23, replicaSetId: ObjectId('000000000000000000000000'), primaryIndex: 0, syncSourceIndex: 0 } } outputDocs: [ ]
mongoperf

mongoperf 的名字很容易誤導(dǎo)人,乍一看以為是 mongodb 的性能測試工具,實際上它是用來測試磁盤 IO 性能的工具。

echo "{nThreads:16,fileSizeMB:1000,r:true,w:true}" | mongoperf
new thread, total running : 1
read:1 write:1
2958 ops/sec 11 MB/sec
3022 ops/sec 11 MB/sec
3023 ops/sec 11 MB/sec
2832 ops/sec 11 MB/sec

您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP