“文档” 菜单
文档首页
/
MongoDB Manual
/ / /

rs.initiate()

在此页面上

  • 说明
  • IP 绑定
  • 副本集配置
  • 例子
rs.initiate(configuration)

启动一个副本集。或者,该方法可以采用保存副本集配置的文档形式的参数。

重要

mongosh 方法

本页面提供 mongosh 方法的相关信息。这不是数据库命令或特定语言驱动程序(例如 Node.js)的相关文档。

有关数据库命令,请参阅 replSetInitiate 命令。

如需了解 MongoDB API 驱动程序,请参阅特定语言的 MongoDB 驱动程序文档。

对于传统 mongo Shell 文档,请参阅相应 MongoDB Server 版本的文档:

mongo shell v4.4

rs.initiate() 方法具有以下参数:

参数
类型
说明
configuration
文档
可选。指定新副本集的配置的文档。如果未指定配置,MongoDB 会使用默认副本集配置。

警告

在绑定到非本地主机(例如可公开访问)IP 地址之前,请确保您已保护集群免受未经授权的访问。有关安全建议的完整列表,请参阅安全检查清单。至少应考虑启用身份验证强化网络基础设施。

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

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

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

例如,以下 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

有关副本集配置文档的详细信息,请参阅副本集配置文档示例

重要

要避免因 IP 地址变更而更新配置,请使用 DNS 主机名而非 IP 地址。在配置副本集成员或分片集群成员时,使用 DNS 主机名而非 IP 地址尤为重要。

在水平分割网络配置下,请使用主机名而非 IP 地址来配置集群。从 MongoDB 5.0 开始,仅配置了 IP 地址的节点将无法通过启动验证,因而不会启动。

以下示例启动一个包含三个节点的新副本集。

三个 mongod 实例必须启动时必须将 --replSet 命令行选项(如果使用配置文件,则为 replication.replSetName)设置为 myReplSet,并将 --bind_ip(如果使用配置文件,则为 net.bindIp)设置得当,以便副本集的其他节点和客户端可以连接。

警告

在绑定到非本地主机(例如可公开访问)IP 地址之前,请确保您已保护集群免受未经授权的访问。有关安全建议的完整列表,请参阅安全检查清单。至少应考虑启用身份验证强化网络基础设施。

mongosh 连接到其中一个 mongod 实例并运行 rs.initiate()

注意

在副本集的一个且仅一个 mongod 实例上运行 rs.initiate()

重要

要避免因 IP 地址变更而更新配置,请使用 DNS 主机名而非 IP 地址。在配置副本集成员或分片集群成员时,使用 DNS 主机名而非 IP 地址尤为重要。

在水平分割网络配置下,请使用主机名而非 IP 地址来配置集群。从 MongoDB 5.0 开始,仅配置了 IP 地址的节点将无法通过启动验证,因而不会启动。

rs.initiate(
{
_id: "myReplSet",
version: 1,
members: [
{ _id: 0, host : "mongodb0.example.net:27017" },
{ _id: 1, host : "mongodb1.example.net:27017" },
{ _id: 2, host : "mongodb2.example.net:27017" }
]
}
)

有关副本集配置的详细信息,请参阅副本集配置字段。

有关部署副本集的详细信息,请参阅部署副本集。

提示

另请参阅:

← rs.help()