文档菜单
文档首页
/
MongoDB 手册
/ / /

replSetInitiate

本页内容

  • 定义
  • 兼容性
  • 语法
  • IP 绑定
  • 示例
replSetInitiate

(此处内容为空)replSetInitiate 命令用于初始化一个新的副本集。

提示

mongosh 中,此命令也可以通过rs.initiate() 辅助方法运行.

辅助方法对 mongosh 用户来说很方便,但它们可能不会返回与数据库命令相同级别的信息。在不需要方便性或需要额外的返回字段的情况下,请使用数据库命令。

要运行 replSetInitiate,请使用 db.runCommand( { <command> } ) 方法。

注意

请在副本集的 mongod 实例之一上运行该命令。

此命令在以下环境中部署的部署中可用

  • MongoDB Atlas:适用于云中MongoDB部署的全托管服务

重要

此命令在M0、M2、M5和M10+集群中不受支持。有关更多信息,请参阅不受支持的命令。

该命令具有以下语法

db.runCommand(
{
replSetInitiate : <config_document>
}
)

<config_document> 是一个指定副本集配置的文档。例如,以下是一个创建简单3成员副本集的配置文档

{
_id : <setname>,
members : [
{_id : 0, host : <host0>},
{_id : 1, host : <host1>},
{_id : 2, host : <host2>},
]
}

重要

为了避免由于IP地址更改而导致的配置更新,请使用DNS主机名而不是IP地址。在配置副本集成员或分片集群成员时,特别重要的是使用DNS主机名而不是IP地址。

在跨越分割网络视域配置集群时,请使用主机名而不是IP地址。从MongoDB 5.0开始,仅配置了IP地址的节点将失败启动验证,并且不会启动。

警告

在将实例绑定到公开可访问的IP地址之前,您必须保护集群免受未经授权的访问。有关安全建议的完整列表,请参阅自托管部署安全清单。至少,请考虑启用身份验证强化网络基础设施

MongoDB 二进制文件,mongodmongos 默认绑定到本地主机。如果二进制文件设置了 net.ipv6 配置文件设置或 --ipv6 命令行选项,则二进制文件将额外绑定到本地主机 IPv6 地址。

默认情况下,仅绑定到本地主机的 mongodmongos 仅接受运行在同一台计算机上的客户端的连接。这种绑定行为包括 mongosh 和您复制集或分片集群的其他成员。远程客户端无法连接到仅绑定到本地主机的二进制文件。

要覆盖默认绑定并绑定到其他 IP 地址,请使用 net.bindIp 配置文件设置或 --bind_ip 命令行选项来指定主机名或 IP 地址列表。

警告

从 MongoDB 5.0 开始,仅配置了 IP 地址的节点失败启动验证并报告错误。请参阅 disableSplitHorizonIPCheck

例如,以下 mongod 实例同时绑定到本地主机和主机名 My-Example-Associated-Hostname,该主机名关联的 IP 地址为 198.51.100.1

mongod --bind_ip localhost,My-Example-Associated-Hostname

为了连接到此实例,远程客户端必须指定主机名或其关联的 IP 地址 198.51.100.1

mongosh --host My-Example-Associated-Hostname
mongosh --host 198.51.100.1

将配置文档分配给一个变量,然后将文档传递给 rs.initiate() 辅助函数

config = {
_id : "my_replica_set",
members : [
{_id : 0, host : "rs1.example.net:27017"},
{_id : 1, host : "rs2.example.net:27017"},
{_id : 2, host : "rs3.example.net", arbiterOnly: true},
]
}
rs.initiate(config)

重要

为了避免由于IP地址更改而导致的配置更新,请使用DNS主机名而不是IP地址。在配置副本集成员或分片集群成员时,特别重要的是使用DNS主机名而不是IP地址。

在跨越分割网络视域配置集群时,请使用主机名而不是IP地址。从MongoDB 5.0开始,仅配置了IP地址的节点将失败启动验证,并且不会启动。

注意,省略端口会导致主机使用默认端口 27017。同时,注意您还可以在配置文档中指定其他选项,如本例中的 arbiterOnly 设置。

提示

另请参阅

返回

replSetGetStatus