网络知识
MongoDB复制集如何在CentOS上设置
2025-07-12 15:54  点击:0

在CentOS上设置MongoDB复制集涉及几个步骤,包括安装MongoDB、配置复制集以及启动MongoDB服务。以下是一个详细的指南:

1. 安装MongoDB

首先,确保你的CentOS系统已经更新到最新状态:

sudo yum update -y

然后,添加MongoDB官方YUM仓库:

sudo cat <<EOF > /etc/yum.repos.d/mongodb-org.repo[mongodb-org-4.4]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/redhat/\$releasever/mongodb-org/4.4/x86_64/gpgcheck=1enabled=1gpgkey=https://www.mongodb.org/static/pgp/server-4.4.ascEOF

安装MongoDB:

sudo yum install -y mongodb-org
2. 启动MongoDB服务

启动MongoDB服务并设置开机自启动:

sudo systemctl start mongodsudo systemctl enable mongod
3. 配置复制集

假设你有三个MongoDB实例,分别运行在不同的服务器上,IP地址分别为192.168.1.1192.168.1.2192.168.1.3

在每个服务器上编辑MongoDB配置文件

编辑/etc/mongod.conf文件,添加或修改以下内容:

replication:replSetName: "rs0"
重启MongoDB服务

在每个服务器上重启MongoDB服务以应用配置更改:

sudo systemctl restart mongod
初始化复制集

连接到任意一个MongoDB实例并初始化复制集。例如,连接到192.168.1.1上的MongoDB实例:

mongo --host 192.168.1.1

在Mongo shell中执行以下命令来初始化复制集:

rs.initiate({_id: "rs0",members: [{ _id: 0, host: "192.168.1.1:27017" },{ _id: 1, host: "192.168.1.2:27017" },{ _id: 2, host: "192.168.1.3:27017" }]})
4. 验证复制集状态

在Mongo shell中执行以下命令来验证复制集的状态:

rs.status()

你应该看到所有成员的状态都是SECONDARYPRIMARY,并且复制集已经成功初始化。

5. 添加更多成员(可选)

如果你需要添加更多的成员到复制集中,可以使用以下命令:

rs.add("192.168.1.4:27017")
6. 监控复制集

你可以使用MongoDB的监控工具来监控复制集的状态和性能。例如,使用mongostatmongotop工具:

sudo yum install -y mongodb-org-shellmongostatmongotop

通过以上步骤,你应该能够在CentOS上成功设置MongoDB复制集。如果有任何问题,请检查日志文件/var/log/mongodb/mongod.log以获取更多信息。