MongoDB中的主从复制架构

本文详细介绍了MongoDB的主从复制架构,包括单台服务器的局限、搭建步骤、测试方法、工作原理及不足之处。主从复制提供数据冗余,确保在主服务器故障时仍有数据备份,但存在服务中断的风险。文章还涵盖了配置认证和测试数据同步的过程。
摘要由CSDN通过智能技术生成

本文主要讲述什么是主从复制架构,为何采用这种架构, MongoDB如何搭建主从复制架构,需要进行怎样的过程,有哪些基本的命令,如何测试其效果。

1. 单台服务器的局限

在学习和开发测试中,是可以采用单台服务器,启动一个mongod服务器进程。但实际生产环境中,这样处理会存在很高的风险,比如服务器崩溃、访问不到了… 这样会影响到数据库服务的使用,也可能跟严重,比如硬盘坏了,不仅数据库服务无法使用,甚至是直接数据丢失了。

为了保证数据可用,一般的数据库架构都会选择一些数据冗余的方式, 比如单台服务器可以选择定时备份,可以选择 ”主从复制“ 模式, 实际上MongoDB也可以选择 “主从复制”

MongoDB中,可以选择两种方式进行数据冗余, 主从复制和副本集的方式 (参考自“MongoDB权威指南”),其中主从复制 (Master-Slaver)

主从复制的基本结构,如下图所示
在这里插入图片描述
基本的结构就是 :

  • 客户端(Client Application)读和写都是看到的主服务器(primary), 用户看不到从节点服务器。
  • 实际上, 在写入的时候,主服务器会向从服务器进行复制 ,实现数据备份的功能。
2 . 搭建的基本步骤

MongoDB中主从复制,配置相对来说,比较简单。按照使用场景,分为 “需要带账号认证”和“不要认证”。基本操作步骤类似,区别是具体的配置项略有不同,具体的操作步骤如下

  1. 需要账号认证的操作步骤
    什么是安全认证,顾名思义,就是在数据库中建立了用户之后,如果开启安全认证,就需要输入用户名+密码才可以访问,开启安全访问也很简单,只需要在配置文件中加上 auth = true 即可

    对于开启安全访问的主服务器中:

    1. 主服务器 (创建用户后),创建一个keyfile文件,并配置keyfile ,基本的创建命令如下
      openssl rand -base64 741 > /Users/workbook/Desktop/LDH_DAY_WORK/mongodb_slave/mongo_key
      
      创建成功之后,将这个文件放到master服务器的一个目录中,并且分配好权限,接下来在配置文件中,配置中keyfile选项,具体配置文件如下
      # cpoy 一份用作 主服务器的配置文件
      dbpath = ../data/db # 相对于bin目录,运行的时候,是进入bin目录运行,因此用的相对路径
      # Append logs to /Users/workbook/Desktop/LDH_DAY_WORK/mongodb_master/log/mongodb/mongo.log
      logpath =  ../log/mongodb/mongo.log
      logappend = true
      
      # 绑定id后,只可以利用ip访问 ,并且只可以利用这个ip访问 
      bind_ip = 127.0.0.1
      
      # 指定主服务器的端口
      port=27110 #端口 
      # maxConns=100 #最大同时连接数 
      journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。
      
      # 设置为主服务器
      master=true
      
      auth
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值