MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写,是一个基于分布式文件存储的开源数据库系统。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。sql
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库。mongodb
在高负载的状况下,添加更多的节点,能够保证服务器性能。数据库
MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。数组
MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档相似于 JSON 对象。字段值能够包含其余文档,数组及文档数组。服务器
概念上来说:数据结构
MongoDB的集合相似sqlserver的表app
MongoDB的文档相似sqlserver的表数据分布式
db.createCollection(name, {size: ..., capped: ..., max: ...,autoIndexId: ...})
参数说明:sqlserver
name:要建立集合的名称性能
size(数值):(可选)为固定集合指定一个最大值(以字节计)。若是 capped 为 true,也须要指定该字段。
capped(布尔):(可选)若是为 true,则建立固定集合。固定集合是指有着固定大小的集合,当达到最大值时,它会自动覆盖最先的文档。当该值为 true 时,必须指定 size 参数。
autoIndexId(布尔):(可选)如为 true,自动在 _id 字段建立索引。默认为 false。
max(数值):(可选)指定固定集合中包含文档的最大数量。
在插入文档时,MongoDB 首先检查固定集合的 size 字段,而后检查 max 字段。
_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> use tsemongo switched to db tsemongo _mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> db.createCollection("tsecollection") { "ok": 1 }
查看已有集合,能够使用show collections或者show tables这两个命令:
_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> show collections tsecollection → 0.000MB / 0.004MB tsemongo → 0.000MB / 0.016MB _mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> show tables tsecollection → 0.000MB / 0.004MB tsemongo → 0.000MB / 0.016MB
建立固定集合tsegoods,整个集合空间大小 1073741824KB=1GB,最大个数为 10000 个:
#不推荐使用autoIndexId选项,未来的版本中将删除该选项
_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> db.createCollection("tsegoods",{capped:true,autoIndexId:true,size:1073741824,max:10000}) { "note": "the autoIndexId option is deprecated and will be removed in a future release", "ok": 1 }
在MongoDB中,你不须要建立集合。当你插入一些文档时,MongoDB 也会自动建立集合:
_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> show tables tsecollection → 0.000MB / 0.004MB tsegoods → 0.000MB / 0.004MB tsemongo → 0.000MB / 0.016MB _mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> db.tsegload.insert({"name":"Tse先生"}) Inserted 1 record(s) in 311ms WriteResult({ "nInserted": 1 }) _mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> show tables tsecollection → 0.000MB / 0.004MB tsegload → 0.000MB / 0.004MB tsegoods → 0.000MB / 0.004MB tsemongo → 0.000MB / 0.016MB
MongoDB 中删除集合语法:
db.collection.drop()
若是成功删除选定集合,则 drop() 方法返回 true,不然返回 false。
删除集合实例1:
在tsemongo库中删除tsegoods集合,先show tables查询一下tsemongo库中的全部集合,或者show collections查询:
_mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> show tables tsecollection → 0.000MB / 0.004MB tsegload → 0.000MB / 0.004MB tsegoods → 0.000MB / 0.004MB tsemongo → 0.000MB / 0.016MB _mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> db.tsegoods.drop() true _mongodb_116:3717(mongod-3.6.8-2.0) tsemongo> show tables tsecollection → 0.000MB / 0.004MB tsegload → 0.000MB / 0.016MB tsemongo → 0.000MB / 0.016MB