Docs 菜单

Docs 主页开发应用程序MongoDB Manual

数据库和集合

在此页面上

  • 概述
  • 数据库
  • 集合

MongoDB 将数据记录存储为文档(具体来说是 BSON 文档),并将它的汇集在集合中。数据库存储一个或多个文档集合。

对于 MongoDB Atlas 中托管的部署,您可以在用户界面中管理 MongoDB 数据库 集合 。

在 MongoDB 中,数据库保存一个或多个文档集合。要选择要使用的数据库,请在 mongosh中发出use <db>语句,如以下示例所示:

use myDB

如果数据库不存在,MongoDB 会在您首次为该数据库存储数据时创建该数据库。因此,您可以切换到一个不存在的数据库,并在mongosh中执行以下操作:

use myNewDB
db.myNewCollection1.insertOne( { x: 1 } )

insertOne() 操作会同时创建数据库 myNewDB 和集合 myNewCollection1(如果尚不存在)。确保数据库和集合名称都遵循 MongoDB 命名限制。

MongoDB 将文档存储在集合中。集合类似于关系数据库中的表。

MongoDB 文档的集合。
点击放大

如果集合不存在,MongoDB 会在您首次存储该集合的数据时创建该集合。

db.myNewCollection2.insertOne( { x: 1 } )
db.myNewCollection3.createIndex( { y: 1 } )

如果集合不存在,则 insertOne()createIndex() 操作都会创建各自的集合。确保集合名称符合 MongoDB 命名限制

MongoDB 提供了 db.createCollection() 方法来显式创建集合,该方法有多种选项,例如设置最大大小或文档验证规则。如果不指定这些选项,则无需显式创建集合,因为 MongoDB 会在您首次向集合中存储数据时创建新集合。

要修改这些集合选项,请参阅collMod

默认情况下,集合不要求其文档具有相同的模式,即单个集合中的文档不需要具有相同的字段集,并且在集合内的不同文档中,字段的数据类型可以不同。

不过从 MongoDB 3.2 开始,您可以在更新和插入操作期间对集合执行文档验证规则。详情参见模式验证

对于 MongoDB Atlas 中托管的部署, 性能优化顾问和 MongoDB Atlas 用户界面会检测常见模式设计问题,并建议遵循 MongoDB 最佳实践的修改建议。要了解更多信息,请参阅模式建议。

若要更改集合中文档的结构,例如添加新字段、删除现有字段或将字段值更改为新类型,请将文档更新为新结构。

集合被分配了一个不可变的 UUID。集合 UUID 在副本集的所有节点和分片集群的分片中保持不变。

要检索集合的 UUID,请运行listCollections命令或db.getCollectionInfos()方法。

← MongoDB 入门
视图 →

在此页面上