7

MongoDB学习笔记:默认数据库与集合

 2 years ago
source link: https://www.cnblogs.com/garvenc/p/mongodb_learning_default_databases_and_collections.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

本文更新于2022-01-15,使用MongoDB 4.4.5。

admin

管理员的数据库。

管理员命令只能在此数据库执行。此数据库中的用户为超级用户,可对所有数据库进行操作,并能执行管理员命令。

system.users

用户身份验证信息的集合。

config

分片集群配置的数据库。

changelog

分片集群变更记录信息的集合。

每个文档包含以下字段:

  • _id:操作的唯一标识符。

  • clientAddr:触发操作的客户端地址。可能为""

  • details:操作详情。

    如果为拆分操作,则包含以下字段:

    • before:拆分前的块。

    • left:块拆分后的左侧块。

    • right:拆分后的右侧块。

      上述各字段都包含以下字段:

      • lastmod:块的版本。Timstamp类型。
      • lastmodEpoch:块的版本。ObjectId类型。
      • max:块范围的最大值(不含)。
      • min:块范围的最小值(含)。

    如果为迁移操作(每次迁移会创建4个文档:迁移前、from分片、to分片、迁移后),则包含以下字段:

    • from:迁移的源分片。
    • max:块范围的最大值(不含)。
    • min:块范围的最小值(含)。
    • step 1 of 6:第1步的耗时。单位为毫秒。
    • step 2 of 6:第2步的耗时。单位为毫秒。
    • step 3 of 6:第3步的耗时。单位为毫秒。
    • step 4 of 6:第4步的耗时。单位为毫秒。
    • step 5 of 6:第5步的耗时。单位为毫秒。
    • step 6 of 6:第6步的耗时。单位为毫秒。
    • to:迁移的目的分片。
  • ns:集合的命名空间。

  • server:操作发生的服务器地址。

  • time:时间。

  • what:操作。拆分为split,迁移为moveChunk.to。

chunks

分片集群块信息的集合。

每个文档包含以下字段:

  • _id:块的唯一标识符。
  • lastmod:块的版本。Timstamp类型,如:Timestamp(MAJOR, MINOR)。MAJOR会在块被迁移至新的分片时改变,MINOR会在块被拆分时改变。
  • lastmodEpoch:块的版本。ObjectId类型。
  • max:块范围的最大值(不含)。
  • min:块范围的最小值(含)。
  • ns:块所属集合的命名空间。
  • shard:块所属的分片。

collections

分片集合信息的集合。

每个文档包含以下字段:

  • _id:集合的命名空。不包括非分片集合。
  • distributionMode:
  • dropped:
  • lastmod:
  • lastmodEpoch:
  • key:片键。
  • unique:片键是否是唯一索引。只当为true才有此字段。
  • uuid:

databases

数据库信息的集合。

每个文档包含以下字段:

  • _id:数据库名。不管数据库有没有被分片。
  • lastMod:
  • partitioned:是否被分片。
  • primary:主分片。数据库的所有新集合默认创建在主分片上。
  • version:

locks

分片集群锁信息的集合。

每个文档包含以下字段:

*_id:锁名称。balancer为均衡器。

  • state:状态。非活跃为0,等待锁为1,均衡中为2。
  • who:代表哪一个mongos。

settings

设置信息的集合。

每个文档包含以下字段:

  • _id:设置名称。均衡器为balancer。块大小为chunksize。
  • enabled:若_id为balancer,则为是否启动均衡器。
  • activeWindow:均衡器的时间窗口。
    • start:开始时间。
    • stop:结束时间。
  • value:若_id为chunksize,则为块大小,单位为MB。

shards

分片信息的集合。

每个文档包含以下字段:

  • _id:分片名称。也为副本集名称。
  • host:主机地址。格式为SHARD_NAME/HOST_PORT[,...]。
  • state:状态。
  • tags:分片标签数组。

分片标签信息的集合。

每个文档包含以下字段:

  • _id:标签ID。
  • max:片键的最大值(不含)。
  • min:片键的最小值(含)。
  • ns:对应集合的命名空间。
  • tag:标签名。

local

本地的数据库。

此数据库不会被复制。此数据库中的用户为超级用户,可对所有数据库进行操作,并能执行管理员命令。

服务器自身信息集合。

oplog.rs

oplog操作日志的集合。是一个固定集合。

slaves

以当前节点作为同步源的节点信息的集合。包括影同步的节点信息。

startup_log

启动日志的集合。

system.replset

副本集配置的集合。

包含一个文档,其字段同rs.config的返回。副本集中所有节点的此文档都是相同的,不要自行修改此文档。

当前数据库

所有数据库都可以拥有以下集合。

fs.chunks

GridFS文件块的集合。

每个文档包含以下字段:

  • _id:块ID。
  • data:文件数据。
  • files_id:文件ID。
  • n:块在文件中的相对位置。

fs.files

GridFS文件元信息的集合。

每个文档包含以下字段:

  • _id:文件ID。
  • chunkSize:块字节大小。默认是256KB。
  • filename:文件名。
  • length:文件字节大小。
  • metadata
  • uploadDate:上传时间。

system.profile

系统分析器记录信息的集合。是一个固定集合。

每个文档包含以下字段:

  • client:客户端地址。
  • ns:集合的命名空间。
  • op:操作类型。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK