首页主机资讯Ubuntu下MongoDB复制集如何搭建

Ubuntu下MongoDB复制集如何搭建

时间2026-01-15 16:43:06发布访客分类主机资讯浏览816
导读:在Ubuntu下搭建MongoDB复制集(Replica Set)可以提供数据冗余和高可用性。以下是详细的步骤: 1. 安装MongoDB 首先,确保你已经在Ubuntu上安装了MongoDB。如果还没有安装,可以使用以下命令: sudo...

在Ubuntu下搭建MongoDB复制集(Replica Set)可以提供数据冗余和高可用性。以下是详细的步骤:

1. 安装MongoDB

首先,确保你已经在Ubuntu上安装了MongoDB。如果还没有安装,可以使用以下命令:

sudo apt update
sudo apt install -y mongodb-org

2. 配置MongoDB

编辑MongoDB配置文件 /etc/mongod.conf,添加复制集配置。假设我们有三个节点,分别命名为 rs0/primary, rs0/secondary1, rs0/secondary2

storage:
  dbPath: /var/lib/mongodb
  journal:
    enabled: true

systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

net:
  port: 27017
  bindIp: 0.0.0.0

replication:
  replSetName: rs0

3. 重启MongoDB服务

保存配置文件并重启MongoDB服务:

sudo systemctl restart mongod

4. 初始化复制集

连接到MongoDB shell:

mongo --host <
    primary_ip>
 --port 27017

在MongoDB shell中初始化复制集:

rs.initiate(
  {

    _id: "rs0",
    members: [
      {
     _id: 0, host: "<
    primary_ip>
:27017" }
,
      {
     _id: 1, host: "<
    secondary1_ip>
:27017" }
,
      {
     _id: 2, host: "<
    secondary2_ip>
:27017" }

    ]
  }
    
)

< primary_ip> , < secondary1_ip> , < secondary2_ip> 替换为实际的IP地址。

5. 验证复制集状态

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

rs.status()

你应该能看到复制集的成员及其状态。

6. 添加更多节点(可选)

如果你需要添加更多的节点,可以使用以下命令:

rs.add("<
    new_node_ip>
    :27017")

< new_node_ip> 替换为新节点的IP地址。

7. 故障转移测试(可选)

为了测试故障转移,可以手动停止主节点,观察复制集是否能够自动选举新的主节点:

sudo systemctl stop mongod

然后在MongoDB shell中再次运行 rs.status(),你应该能看到新的主节点。

8. 配置防火墙(可选)

确保你的防火墙允许MongoDB的端口(默认是27017)通信:

sudo ufw allow 27017

总结

通过以上步骤,你可以在Ubuntu上成功搭建一个MongoDB复制集。复制集提供了数据冗余和高可用性,是生产环境中常用的数据库架构之一。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu下MongoDB复制集如何搭建
本文地址: https://pptw.com/jishu/780193.html
MongoDB在Ubuntu上的认证与授权如何设置 Ubuntu下MongoDB索引如何创建与优化

游客 回复需填写必要信息