MongoDB复制集配置,数据备份,主从配置

本文介绍了如何设置MongoDB的实时备份和高可用性,通过复制集确保数据安全。首先准备至少两台服务器,安装并配置MongoDB,创建配置文件mongo.conf,设定复制集名称。接着启动MongoDB服务,并在Mongo shell中进行初始化和设置从服务器允许查询。最后,通过rs.status()确认复制集已成功建立,实现数据在两台服务器间同步。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用处

数据库数据实时备份,防止数据库崩溃导致网站访问失败

步骤

  • 准备至少一台服务器,一台的话则默认那一台就是主服务器,官方建议三台,我测试则用两台
    在这里插入图片描述

  • 准备mongodb数据库,这里不详细讲,可以官网下载或私信我,记得创建dbs、logs文件夹,分别是用来存数据库数据,数据库日志,新建mongo.conf文件,里面用来编写配置信息,下一步就将,文件夹名和文件名随意,两台服务器一样
    在这里插入图片描述

  • 编辑mongo.conf,内容如下,两台服务器一样

    dbpath=/opt/mongodb-linux-x86_64-4.0.1/dbs
    logpath=/opt/mongodb-linux-x86_64-4.0.1/logs/mongo.log
    fork=true
    logappend=true
    bind_ip=0.0.0.0
    port=27017
    replSet=rs0  #  重点看这个,复制集名称,任意
    
  • 启动mongodb,自己注意路径,两台服务器一样

    mongod --config mongo.log
    
  • 进入mongo,两台服务器一样

    mongo
    
  • 设置一个变量,任选一台服务器

    var conf = {_id: 'rs0', members: [{_id: 1, host: '192.168.1.19:27017'}, {_id: 2, host: '192.168.1.8:27017'}]}
    
  • 启动,任选一台服务器

    rs.initiate(conf)
    
  • 默认从服务器是不能查询数据库内容的,需要设置一下

    rs.slaveOk()
    
  • 查看下状态,可以看到启动了成功了两台

    rs.status();
    

    在这里插入图片描述

  • 之后自己增加数据测试,会发现两边都会保持一致
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值