您的位置:首页 > 数据库 > Mongodb

MongoDB mongo shell,常用的操作命令,GUI客户端

2016-02-23 11:30 826 查看
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。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息