• 【Redis】主从复制


    一、概述

    • 1、redis的复制功能是支持多个数据库之间的数据同步。一类是主数据库(master)一类是从数据库(slave),主数据库可以进行读写操作,当发生写操作的时候自动将数据同步到从数据库,而从数据库一般是只读的,并接收主数据库同步过来的数据,一个主数据库可以有多个从数据库,而一个从数据库只能有一个主数据库。
    • 2、主从复制应用场景:集群(多台服务器)、读写分离
    • 3、通过redis的复制功能可以很好的实现数据库的读写分离,提高服务器的负载能力。主数据库主要进行写操作,而从数据库负责读操作。
    • 4、什么是读写分离
      • 读和写分库连接,读一个库,写一个库。互不影响,增加整体吞吐量。
      • 主服务器可以做写,从服务器可以读。
      • 读写分离问题:集群同步问题。(redis已经自带)

    二、主从复制过程

    见下图:

    15560915439569
    155609

    1. 当一个从数据库启动时,会向主数据库发送sync命令
    2. 主数据库接收到sync命令后会开始在后台保存快照(执行rdb操作),并将保存期间接收到的命令缓存起来
    3. 当快照完成后,redis会将快照文件和所有缓存的命令发送给从数据库。
    4. 从数据库收到后,会载入快照文件并执行收到的缓存的命令。

    三、配置

    • 修改从服务器 Redis配置文件(注意修改的是从服务器) redis.conf:
    slaveof 192.168.33.130 6379    #这里是 主服务器的ip地址和redis端口号
    masterauth 123456   #主redis服务器配置了密码,则需要配置
    

    测试:
    如图中所示,左边为主服务器,右边为从服务器,在主服务中添加的数据,可以在从服务器中获取到。

    在从服务器中写入数据,会提示错误,从服务器没有写的权限,只允许读

  • 相关阅读:
    Tomcat部署时war和war exploded区别以及平时踩得坑
    BAPI_REQUISITION_CREATE创建采购…
    alv 类cl_gui_alv_grid事件查…
    修改采购申请;BAPI_REQUISITION_CH…
    OO ALV常用功能完整简例(热键单击…
    ModeShape 3.1.0.Final 发布,元数据管理
    《Thinking in Java》中讲到了final,发现自己有部分地方迷糊
    IntelliJ IDEA 2022ava开发工具注册版
    数据库游标
    Python获取一个月后的日期
  • 原文地址:https://www.cnblogs.com/haoworld/p/redis-zhu-cong-fu-zhi.html
Copyright © 2020-2023  润新知