设为首页 加入收藏

TOP

MongoDB命令行操作(一)
2014-11-24 03:13:21 来源: 作者: 【 】 浏览:23
Tags:MongoDB 命令 操作
MongoDB命令行操作
本文专门介绍MongoDB的命令行操作。其实,这些操作在MongoDB官网提供的Quick Reference上都有,但是英文的,为了方便,这里将其稍微整理下,方便查阅。
这里用来做测试的是远端(10.77.20.xx)的Mongo 数据库
1、登录和退出
mongo命令直接加MongoDB服务器的IP地址(比如:mongo 10.77.20.xx),就可以利用Mongo的默认端口号(27017)登陆Mongo,然后便能够进行简单的命令行操作。
至于退出,直接exit,然后回车就好了。
[plain]
$ mongo 10.77.20.xx
MongoDB shell version: 2.0.4
connecting to: 10.77.20.xx/test
> show collections
> exit
bye
从以上可以看出,登录后mongo会自动连上一个名为test的数据库。如果这个数据库不存在,那么mongo会自动建立一个名为test的数据库。上面的例子,由于Mongo服务器上没有名为test的db,因此,mongo新建了一个空的名为test的db。其中,没有任何collection。
2、database级操作
[plain]
2.1 查看服务器上的数据库
> show dbs
admin (empty)
back_up (empty)
blogtest 0.203125GB
local 44.056640625GB
test (empty)
2.2 切换数据库
切换到blogtest数据库(从默认的test数据库)
> use blogtest
switched to db blogtest
mongo中,db代表当前使用的数据库。这样,db就从原来的test,变为现在的blogtest数据库。
2.3 查看当前数据库中的所有集合
> show collections
book
system.indexes
user
2.4 创建数据库
mongo中创建数据库采用的也是use命令,如果use后面跟的数据库名不存在,那么mongo将会新建该数据库。不过,实际上只执行use命令后,mongo是不会新建该数据库的,直到你像该数据库中插入了数据。
> use test2
switched to db test2
> show dbs
admin (empty)
back_up (empty)
blogtest 0.203125GB
local 44.056640625GB
test (empty)
到这里并没有看到刚才新建的test2数据库。
> db.hello.insert({"name":"testdb"})
该操作会在test2数据库中新建一个hello集合,并在其中插入一条记录。
> show dbs
admin (empty)
back_up (empty)
blogtest 0.203125GB
local 44.056640625GB
test (empty)
test2 0.203125GB
> show collections
hello
system.indexes
这样,便可以看到mongo的确创建了test2数据库,其中有一个hello集合。
2.5 删除数据库
> db.dropDatabase()
{ "dropped" : "test2", "ok" : 1 }
> show dbs
admin (empty)
back_up (empty)
blogtest 0.203125GB
local 44.056640625GB
test (empty)
2.6 查看当前数据库
> db
test2
可以看出删除test2数据库之后,当前的db还是指向它,只有当切换数据库之后,test2才会彻底消失。
3、collection级操作
[plain]
3.1 新建collection
> db.createCollection("Hello")
{ "ok" : 1 }
> show collections
Hello
system.indexes
从上面2.4也可以看出,直接向一个不存在的collection中插入数据也能创建一个collection。
> db.hello2.insert({"name":"lfqy"})
> show collections
Hello
hello2
system.indexes
3.2 删除collection
> db.Hello.drop()
true
返回true说明删除成功,false说明没有删除成功。
> db.hello.drop()
false
不存在名为hello的collection,因此,删除失败。
3.3 重命名collection
将hello2集合重命名为HELLO
> show collections
hello2
system.indexes
> db.hello2.renameCollection("HELLO")
{ "ok" : 1 }
> show collections
HELLO
system.indexes
3.4 查看当前数据库中的所有collection
>show collections
3.5 建立索引在HELLO集合上,建立对ID字段的索引,1代表升序。
>db.HELLO.ensureIndex({ID:1})
4、Record级的操作
这一小节从这里开始,我们用事先存在的blogtest数据库做测试,其中有两个Collection,一个是book,另一个是user。
4.1 插入操作
[plain]
4.1.1 向user集合中插入两条记录
> db.user.insert({'name':'Gal Gadot','gender':'female','age':28,'salary':11000})
> db.user.insert({'name':'Mikie Hara','gender':'female','age':26,'salary':7000})
4.1.2 同样也可以用save完成类似的插入操作
> db.user.save({'name':'Wentworth Earl Miller','gender':'male','age':41,'salary':33000})
首页 上一页 1 2 3 4 5 6 7 下一页 尾页 1/7/7
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇启动hsqldb数据库 下一篇SQLite 3模糊查询简析

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·如何在 C 语言中管理 (2025-12-25 03:20:14)
·C语言和内存管理有什 (2025-12-25 03:20:11)
·为什么C语言从不被淘 (2025-12-25 03:20:08)
·常用meta整理 | 菜鸟 (2025-12-25 01:21:52)
·SQL HAVING 子句:深 (2025-12-25 01:21:47)