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

MongoDB(4)数据库 & 集合操作

2018-02-22 01:51 543 查看

MongoDB 入门专栏

http://blog.csdn.net/column/details/19681.html


数据库操作

查看数据库

 
# 查看当前mongo下的所有数据库
> show databases  
> show dbs

创建数据库 

 
# 连接,创建 testdb 数据库
> use testdb
此时已经创建了 testdb 数据库,但是如果使用 show dbs 指令并不能查询到相关信息,这是由于 mongodb 是不显示空数据库的,如果向空数据库 testdb 插入一些数据,便可以显示该数据库了;

删除数据库

 
# 删除 testdb 数据库
> use testdb
> db.dropDatabase()

复制数据库

可以使用 db.copyDatabase(from_db,to_db [,from_host]) 来复制数据库; 
# 复制 testdb 库为 testdb_copy 库
> use testdb
> db.copyDatabase("testdb", "testdb_copy")

重命名数据库

mongodb 没有提供重命名数据库的指令,可以通过复制数据库来实现数据库的重命名; 
# 重命名 testdb 为 testdb233
> use testdb
> db.copyDatabase('testdb', 'testdb233')
> db.dropDatabase()
但是这种方式如果数据库庞大时很占用资源,可以使用遍历重命名集合的方式来实现: 
# 重命名 testdb 为 testdb233
> use testdb
> db.runCommand( { renameCollection:'testdb.orders', to: 'testdb233.orders' } )


集合操作

查看集合

 
# 显示指定数据库的所有集合
> use testdb
> show collections  # 或者 show tables

创建集合

db.createCollection(name,option) 用于创建集合,其中 option 可选参数如下:autoIndexID:是否在 _id 字段自动创建索引,默认为 false;

capped:是否创建固定集合,指定为 true 时当集合容量到最大值时,会自动覆盖最早的文档,当指定 capped时,必须指定 size  参数;

size:指定固定集合的大小的上限,单位为字节;

max:指定固定集合的文档数量上限;

※在插入文档时,mongodb 先检查 size,再检查 max; 
> use testdb
> db.createCollection('articles')
> db.createCollection( 'site', { capped:true, autoIndexID:true, size:233300, max: 10000} )
实际上 mongodb 中并不需要创建集合,在插入文档时候,mongodb 会自动创建集合;

删除集合

 
# 删除 testdb 的 site 集合
> use testdb
> db.site.drop()

重命名集合

 
# 重命名 testdb 库的 site 集合为 site233
> use testdb
> db.site.renameCollection('site233')
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: