日期:2014-05-16  浏览次数:20405 次

mongo简介——数据库与集合

至于安装过程将要放到后面的某个时候单独再说。

本文说明一下数据库与集合的创建、删除,还有集合的种类。

?

创建数据库

connection.DATABASE_NAME;

//如果这个DATABASE_NAME还不存在,在向这个数据库插入第一条记录时就会自动创建

?

删除数据库

use?DATABASE_NAME;

db.dropDataBase();

?

查看数据库状态

db.state();

?

创建集合

use?DATABASE_NAME;

db.createCollection(‘COLLECTION_NAME’);//创建一个新的集合,并为这个集合分配默认硬盘空间

db.createCollection(‘COLLECTION_NAME’,{size:_INIT_SIZE});//创建一个新的集合,并为这个集合分配_INIT_SIZE的空间,单位是字节,一般不必显式指定初始尺寸。因为随着数据量的增长,mongo会自动扩容集合尺寸。

重命名集合

db.COLLECTION_NAME.renameCollection('NEW_COLLECTION_NAME');

?

集合的命名规则:以字母或数字开头,包含字母、数字、点号

MONGO数据文件尺寸:命名空间文件.ns固定16MB,大约可存储24000个命名空间,也就是一个数据库的索引和集合总数不能超过24000。所有数据保存在DATABASE_NAME.NUM这样的文件内,NUM从0开始。DATABASE_NAME.0是64MB,DATABASE_NAME.1是128MB,以此类推。数据文件最大是2GB,当数据文件达到2GB时,数据量继续增加,以后再创建的新的数据文件都是2GB。

?

集合类型:

1)标准集合,默认集合类型

2)固定集合,这类集合占用的磁盘空间在创建时就确定了,数据量达到创建指定的初始值的时候,新数据会覆盖旧数据。

? ? ? 创建方法:db.createCollection('COLLECTION_NAME',{capped:true,size:_INIT_SIZE});

3)系统集合:这些集合保存着mongo自身的一些数据。刚安装完mysql的时候,mysql也会自动创建一些系统数据库。这里的系统集合也是类似的特性。

? ? ? system.namespace//标准集合,是当前数据库的命名空间

? ? ? system.indexes//标准集合,当前数据库的所有索引

? ? ? oplog.rs//每个副本集成员把所有写操作记录在这个集合。