MongoDB mongo shell,常用的操作命令,GUI用戶端
來源:互聯網
上載者:User
mongo shell是一個用來串連MongoDB的JavaScript介面,提供給使用者查詢和操作MongoDB中的資料、以及用來對MongoDB進行管理。
啟動並自動連接到一個MongoDB執行個體: 預設安裝在“/usr/bin/”中,用“which”命令可以查看到: # which mongo /usr/bin/mongo 所以可以直接運行: # mongo MongoDB shell version: 3.2.3 connecting to: test …… 預設串連到localhost的27017連接埠,並預設地使用test資料庫。
切換到其他資料庫: > use <db_name>
插入(Create): 插入命令參考: https://docs.mongodb.org/manual/tutorial/insert-documents/
> db.<collection_name>.insert({key: value}); # "db"表示當前使用的db。 比如: > db.testCollection.insert({name: "Xu"}) WriteResult({ "nInserted" : 1 })
查詢(Read): 查詢命令參考: https://docs.mongodb.org/manual/tutorial/query-documents/
> db.<collection_name>.find() #沒帶條件表示查詢所有,預設返回20條 比如: > db.testCollection.find() { "_id" : ObjectId("56ca7c37012557f8f72c9a1f"), "name" : "Xu" }
美化查詢結果: > db.myCollection.find().pretty()
修改(Update): 修改命令參考: https://docs.mongodb.org/manual/tutorial/modify-documents/
> db.<collection_name>.update({key: "value"}, {key: "newValue"}) #(第一個參數是查詢條件,第二個參數是update的內容)
比如: > db.testCollection.update( ... {name: "Xu"}, ... {name: "Clement-Xu"}) WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) > db.testCollection.find().pretty() { "_id" : ObjectId("56ca7c37012557f8f72c9a1f"), "name" : "XuJijun" }
刪除(Delete): 刪除命令參考: https://docs.mongodb.org/manual/tutorial/remove-documents/
> db.<collection_name>.remove( { key : "value" } ) #如果不帶參數,則刪除所有
比如: > db.testCollection.remove( ... {name: "Clement-Xu"}) WriteResult({ "nRemoved" : 1 })
退出mongo shell: > quit() 或 exit 或 <Ctrl-c>
圖形化(GUI)用戶端: robomongo:https://robomongo.org 需要修改MongoDB的設定檔,去除ip綁定: # vi /etc/mongod.conf 把這句話注釋掉: bindIp: 127.0.0.1 然後重啟服務: # service mongod restart
啟動robomongo之後指定ip和port串連:
註:最新版的robomongo已經取消了ssh tunnel功能(不知為何)。需要的得自己弄,比如通過SecureCRT。