mongodb--常用命令
生活随笔
收集整理的這篇文章主要介紹了
mongodb--常用命令
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原文地址
如:如果你想創建一個“myTest”的數據庫,先運行use myTest命令,之后就做一些操作(如:db.createCollection('user')),這樣就可以創建一個名叫“myTest”的數據庫。
數據庫常用命令
1、Help查看命令提示
help db.help(); db.yourColl.help(); db.youColl.find().help(); rs.help();2、切換/創建數據庫
use yourDB; 當創建一個集合(table)的時候會自動創建當前數據庫3、查詢所有數據庫
show dbs;4、刪除當前使用數據庫
db.dropDatabase();5、從指定主機上克隆數據庫
db.cloneDatabase(“127.0.0.1”); 將指定機器上的數據庫的數據克隆到當前數據庫6、從指定的機器上復制指定數據庫數據到某個數據庫
db.copyDatabase("mydb", "temp", "127.0.0.1");將本機的mydb的數據復制到temp數據庫中7、修復當前數據庫
db.repairDatabase();8、查看當前使用的數據庫
db.getName(); db; db和getName方法是一樣的效果,都可以查詢當前使用的數據庫9、顯示當前db狀態
db.stats();10、當前db版本
db.version();11、查看當前db的鏈接機器地址
db.getMongo();Collection聚集集合
1、創建一個聚集集合(table)
//判斷集合是否為定容量db.collName.isCapped(); db.createCollection(“collName”, {size: 20, capped: 5, max: 100});//創建成功會顯示{“ok”:1} //db.createCollection(name, options) 用于創建集合 //Options 是一個文檔,用于指定集合的配置 //capped Boolean (可選)如果為true,它啟用上限集合。上限集合是一個固定大小的集合,當它達到其最大尺寸會自動覆蓋最老的條目。 如果指定true,則還需要指定參數的大小。 //autoIndexID Boolean (可選)如果為true,自動創建索引_id字段。默認的值是 false. //size number (可選)指定的上限集合字節的最大尺寸。如果capped 是true,那么還需要指定這個字段。 //max number (可選)指定上限集合允許的最大文件數。2、得到指定名稱的聚集集合(table)
db.getCollection("account");3、得到當前db的所有聚集集合
db.getCollectionNames();4、顯示當前db所有聚集索引的狀態
db.printCollectionStats();5、展示所有的集合
show collections6、刪除集合
db.COLLECTION_NAME.drop()語句塊操作
1、簡單Hello World
//這種寫法調用了print函數,和直接寫入"Hello World!"的效果是一樣的; print("Hello World!");2、將一個對象轉換成json
tojson(new Object()); tojson(new Object('a'));3、循環添加數據
> for (var i = 0; i < 30; i++) { ... db.users.save({name: "u_" + i, age: 22 + i, sex: i % 2}); ... };這樣就循環添加了30條數據,同樣也可以省略括號的寫法> for (var i = 0; i < 30; i++) db.users.save({name: "u_" + i, age: 22 + i, sex: i % 2});也是可以的,當你用db.users.find()查詢的時候,顯示多條數據而無法一頁顯示的情況下,可以用it查看下一頁的信息;5、forEach迭代循環
db.users.find().forEach(printjson);forEach中必須傳遞一個函數來處理每條迭代的數據信息6、將find游標當數組處理
var cursor = db.users.find(); cursor[4];取得下標索引為4的那條數據 既然可以當做數組處理,那么就可以獲得它的長度:cursor.length();或者cursor.count(); 那樣我們也可以用循環顯示數據for (var i = 0, len = c.length(); i < len; i++) printjson(c[i]);7、將find游標轉換成數組
> var arr = db.users.find().toArray(); > printjson(arr[2]);用toArray方法將其轉換為數組8、定制我們自己的查詢結果
只顯示age <= 28的并且只顯示age這列數據db.users.find({age: {$lte: 28}}, {age: 1}).forEach(printjson); db.users.find({age: {$lte: 28}}, {age: true}).forEach(printjson);排除age的列db.users.find({age: {$lte: 28}}, {age: false}).forEach(printjson);9、forEach傳遞函數顯示信息
db.things.find({x:4}).forEach(function(x) {print(tojson(x));});其他
1、查詢之前的錯誤信息
db.getPrevError();2、清除錯誤記錄
db.resetError();查看聚集集合基本信息
1、查看幫助 db.yourColl.help(); 2、查詢當前集合的數據條數 db.yourColl.count(); 3、查看數據空間大小 db.userInfo.dataSize(); 4、得到當前聚集集合所在的db db.userInfo.getDB(); 5、得到當前聚集的狀態 db.userInfo.stats(); 6、得到聚集集合總大小 db.userInfo.totalSize(); 7、聚集集合儲存空間大小 db.userInfo.storageSize(); 8、Shard版本信息 db.userInfo.getShardVersion() 9、聚集集合重命名 db.userInfo.renameCollection("users"); 將userInfo重命名為users 10、刪除當前聚集集合 db.userInfo.drop();3、其他命令
show dbs:顯示數據庫列表 show collections:顯示當前數據庫中的集合(類似關系數據庫中的表) show users:顯示用戶 use <db name>:切換當前數據庫,這和MS-SQL里面的意思一樣 db.help():顯示數據庫操作命令,里面有很多的命令 db.foo.help():顯示集合操作命令,同樣有很多的命令,foo指的是當前數據庫下,一個叫foo的集合,并非真正意義上的命令 db.foo.find():對于當前數據庫中的foo集合進行數據查找(由于沒有條件,會列出所有數據) db.foo.find( { a : 1 } ):對于當前數據庫中的foo集合進行查找,條件是數據中有一個屬性叫a,且a的值為1轉載于:https://www.cnblogs.com/weloveshare/p/5751861.html
總結
以上是生活随笔為你收集整理的mongodb--常用命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jQuery鼠标事件(转)
- 下一篇: React Native开发环境搭建