MongoDB 常用操作命令
前言】
以下命令摘自官網截止目前2016年8月25日為止最新版3.2的部分,只作為參考,鄙人水平有限(其實我是渣渣)有的地方翻譯不到位,還請海涵並指出,一定虛心學習!
一、常用命令
命令 |
參考釋義 |
help |
顯示基本操作命令 |
db.help() |
顯示資料庫操作命令 |
db.collection.help() |
顯示集合操作命令 |
sh.help() |
顯示資料庫分片操作命令 |
rs.help() |
顯示副本集操作命令 |
help admin |
顯示管理員操作命令 |
help connect |
顯示連線資料庫命令 |
help keys |
顯示快捷鍵 |
help misc |
顯示其他該知道的東西 |
show dbs |
顯示所有資料庫列表 |
show collections |
顯示當前資料庫所有集合列表 |
show users |
顯示所有使用者列表 |
show logs |
顯示所有日誌名稱列表(預設為global) |
use dbname |
切換/建立資料庫(若不存在則自動建立) |
二、資料庫相關
命令 |
參考釋義 |
db.cloneCollection() |
在MongoDB例項之間複製集合資料 |
db.cloneDatabase() |
從指定主機上克隆資料庫到當前資料庫 |
db.commandHelp() |
返回資料庫命令的幫助資訊 |
db.copyDatabase() |
從指定的主機上覆制指定資料庫資料到某個資料庫 |
db.createCollection() |
建立一個新的集合 |
db.currentOp() |
顯示當前正在進行的操作。 |
db.dropDatabase() |
刪除當前資料庫。 |
db.fsyncLock() |
重新整理寫入磁碟並鎖定該資料庫,以防止寫入操作,並協助備份操作。 |
db.fsyncUnlock() |
允許繼續進行寫入鎖住的資料庫(解鎖) |
db.getCollection() |
返回一個集合物件。需要傳遞一個在資料庫中存在的一個有效的集合名稱 |
db.getCollectionInfos() |
返回當前資料庫中的所有集合資訊。 |
db.getCollectionNames() |
列出當前資料庫中的所有集合。 |
db.getLastError() |
檢查並返回最後一個操作的狀態。 |
db.getLastErrorObj() |
返回上次操作狀態的檔案。 |
db.getLogComponents() |
返回日誌訊息詳細級別。 |
db.getMongo() |
返回MongoDB當前連線的連線物件。 |
db.getName() |
返回當前資料庫的名稱。(也可以直接使用db;命令) |
db.getPrevError() |
返回包含自上次錯誤復位所有的錯誤狀態檔案。 |
db.hostInfo() |
返回當前資料庫主機系統的相關資訊 |
db.killOp() |
終止指定的操作。 |
db.listCommands() |
顯示公共資料庫的命令列表。 |
db.logout() |
登出登入 |
db.repairDatabase() |
修復當前資料庫 |
db.resetError() |
重置db.getPrevError()和getPrevError返回的錯誤資訊。 |
db.runCommand() |
執行一個數據庫命令。 |
db.serverStatus() |
返回當前資料庫狀態的概要 |
db.setLogLevel() |
設定一個單獨的日誌資訊級別。 |
db.setProfilingLevel() |
修改當前資料庫的分析級別。 |
db.shutdownServer() |
關閉當前資料庫執行例項或安全停止有關操作程序 |
db.stats() |
返回在當前資料庫的狀態報告。 |
db.version() |
返回當前資料庫的版本資訊 |
三、集合相關
命令 |
參考釋義 |
db.collection.bulkWrite() |
批量寫入 |
db.collection.count() |
返回集合總數或匹配查詢的結果集總數 |
db.collection.copyTo() |
已過時。現此操作被封裝在兩個資料庫例項之間的複製資料中 |
db.collection.createIndex() |
建立一個集合索引 |
db.collection.dataSize() |
返回集合的大小 |
db.collection.deleteOne() |
刪除集合中的一個文件 |
db.collection.deleteMany() |
刪除集合中的多個文件。 |
db.collection.distinct() |
返回具有指定欄位不同值的文件(去除指定欄位的重複資料) |
db.collection.drop() |
刪除當前資料庫中的collection集合 |
db.collection.dropIndex() |
刪除一個集合中的指定索引 |
db.collection.dropIndexes() |
刪除一個集合中的所有索引 |
db.collection.ensureIndex() |
已過時。現使用db.collection.createIndex() 。 |
db.collection.explain() |
返回各種方法的查詢執行資訊 |
db.collection.find() |
查詢集合,無引數則查詢所有,並返回一個遊標物件。 |
db.collection.findAndModify() |
查詢並修改 |
db.collection.findOne() |
查詢單條資料 |
db.collection.findOneAndDelete() |
查詢單條資料並刪除 |
db.collection.findOneAndReplace() |
查詢單條資料並替換 |
db.collection.findOneAndUpdate() |
查詢單條資料並更新 |
db.collection.getIndexes() |
返回當前集合的所有索引陣列 |
db.collection.group() |
提供簡單的資料聚合功能 |
db.collection.insert() |
在當前集合插入一條或多條資料(或叫文件) |
db.collection.insertOne() |
在當前集合插入一條資料 |
db.collection.insertMany() |
在當前集合插入多條資料 |
db.collection.isCapped() |
判斷集合是否為定容量 |
db.collection.reIndex() |
重建當前集合的所有索引 |
db.collection.replaceOne() |
替換集合中的一個文件(一條資料) |
db.collection.remove() |
從當前集合刪除資料 |
db.collection.renameCollection() |
重新命名集合名稱 |
db.collection.save() |
在當前集合插入一條資料,同insert()方法的區別: 當要插入的資料已存在時,save會執行更新操作,而insert方法會忽略當前操作 |
db.collection.stats() |
返回當前集合的狀態 |
db.collection.storageSize() |
返回當前集合已使用的空間大小 |
db.collection.totalSize() |
返回當前集合的總佔用空間,包括所有檔案和所有索引 |
db.collection.totalIndexSize() |
返回當前集合所有的索引所佔用的空間大小 |
db.collection.update() |
修改集合中的資料。 |
db.collection.updateOne() |
修改集合中的一條資料。 |
db.collection.updateMany() |
修改集合中的多條資料。 |
db.collection.validate() |
執行對集合驗證操作。 |