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

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')

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章