• redis主从同步


    redis主从同步

    前言

    • redis主从同步

      img

    • 原理

      1. 从服务端向主服务器发送SYNC命令
      2. 接到 SYNC 命令的主服务器会调用BGSAVE 命令,创建一个 RDB 文件,并使用缓冲区记录接下来执行的所有写命令。
      3. 当主服务器执行完BGSAVE命令时,它会向从服务器发送 RDB 文件,而从服务器则会接收并载入这个文件。
      4. 主服务器将缓冲区储存的所有写命令发送给从服务器执行。
    • 1 在开启主从复制的时候,使用的是RDB方式的,同步主从数据的
      2、同步开始之后,通过主库命令传播的方式,主动的复制方式实现
      3、2.8以后实现PSYNC的机制,实现断线重连

    环境准备

    • 前言:
      • 这里演示的是一主俩从
      • redis数据库支持多实例
    1. 主redis配置信息

      vim redis-6379.conf

      port 6379   		
      daemonize yes 		  
      pidfile /data/6379/redis.pid
      loglevel notice		
      logfile "/data/6379/redis.log"
      dir /data/6379			
      protected-mode yes 
      dbfilename  dbmp.rdb
      
      save 900 1
      save 300 10 
      save 60 10000
      
    2. 俩从配置信息, redis-6380.conf 和redis-6381.conf 信息一样,除了port不一样

      vim redis-6380.conf

      port 6380   		
      daemonize yes 		  
      pidfile /data/6380/redis.pid
      loglevel notice		
      logfile "/data/6380/redis.log"
      dir /data/6380			
      protected-mode yes 
      dbfilename  dbmp.rdb
      save 900 1
      save 300 10 
      save 60 10000
      slaveof  127.0.0.1 6379
      
    3. 启动三个数据库,

      redis-server /data/6380/redis.conf
      redis-server /data/6381/redis.conf
      redis-server /data/6382/redis.conf
      
    4. 启动三个数据库的实例,查看主从同步关系

      redis-cli -p 6379  info replication 
      redis-cli -p 6380  info replication 
      redis-cli -p 6381  info replication 
      
    5. 测试写入数据,主库写入数据,检查从库数据

      主
      127.0.0.1:6379> set name chaoge
      
      
      从
      127.0.0.1:6381>get name 
      
    6. 模拟主库宕机,然后手动进行主从复制故障切换

      # 查看主库进程
      ps -ef |grep redis
      杀死主库进程
      kill -p 主库进程号
      
    7. 检查从库信息

      redis-cli -p 6380  info replication 
      redis-cli -p 6381  info replication 
      
    8. 关闭6380从库身份

      127.0.0.1:6380>slaveof no one
      
    9. 给6381新的主人身份

      127.0.0.1:6381> SLAVEOF no one
      127.0.0.1:6381> SLAVEOF 127.0.0.1 6381
      
    10. 检查6380和6381的主从信息

    11. 还得修改配置文件,永久生效还得修改配置文件,永久生效还得修改配置文件,永久生效

  • 相关阅读:
    软件可靠性与安全性设计与实现知识梳理(软件可靠性与安全性高级技术研讨会心得)
    SSM框架整合
    不注册Tomcat服务,运行Tomcat不弹出JAVA控制台窗口
    ExtJS表单之复选框CheckboxGroup展示与取值
    ExtJS获取父子、兄弟容器元素方法
    LabVIEW之生产者/消费者模式--队列操作 彭会锋
    ExtJS Grid导出excel文件
    jeesite部署到Tomcat后,无法访问,cannot be resolved in either web.xml or the jar files deployed with this application
    滚动轮播插件——jCarouselLite
    统计学基础之假设检验
  • 原文地址:https://www.cnblogs.com/yuncong/p/10293590.html
Copyright © 2020-2023  润新知