• Redis 主从配置(Windows版)


    安装从库

    1、复制一份 Redis 文件,当做从库。

    2、修改从库文件中 redis.windows.conf 的端口号。

    3、安装服务,需要重新设置名称。然后去服务中,开启“redis6380”(此时就可以连接6380的库了)

    redis-server --service-install redis.windows.conf  --service-name Redis6380

    配置主从服务器

    Redis Slaveof 命令

    Redis Slaveof 命令可以将当前服务器转变为指定服务器的从属服务器(slave server)。

    如果当前服务器已经是某个主服务器(master server)的从属服务器,那么执行 slaveof host port 将使当前服务器停止对旧主服务器的同步,丢弃旧数据集,转而开始对新主服务器进行同步。

    另外,对一个从属服务器执行命令 slaveof no one 将使得这个从属服务器关闭复制功能,并从从属服务器转变回主服务器,原来同步所得的数据集不会被丢弃。

    利用『 slaveof no one 不会丢弃同步所得数据集 』这个特性,可以在主服务器失败的时候,将从属服务器用作新的主服务器,从而实现无间断运行。

    在从库6380上输入命令,来开启数据同步(格式:slaveof host port)

    slaveof 127.0.0.1 6379 //同步主库 6379

    在从库上输入命令,关闭数据同步

    slaveof no one         //取消同步

    1、通过 cd 命令进入解压的目录,使用 redis-cli -p 6380 命令切到6380从库

    2、slaveof 127.0.0.1 6379 设置主从,6379是主库,6380是从库。(设置同步时,会将主库所有数据一起同步过来。

    3、测试

    6379库 set A 123 ,6380库 get A,从库默认是不允许写入数据的。

    4、永久保存主从关系

    按如下所示,添加命令 slaveof 127.0.0.1 6379 ,配置好以后,每次redis服务重启时,会自动同步主库数据。

    主从同步过程

    下面来研究下slave服务器和master服务器间是如何建立起主从同步机制的。

    1、Slave服务启动,主动连接Master,并发送SYNC命令,请求初始化同步

    2、Master收到SYNC后,执行BGSAVE命令生成RDB文件,并缓存该时间段内的写命令

    3、Master完成RDB文件后,将其发送给所有Slave服务器

    4、Slave服务器接收到RDB文件后,删除内存中旧的缓存数据,并装载RDB文件

    5、Master在发送完RDB后,即刻向所有Slave服务器发送缓存中的写命令

    6、至此初始化完成,后续进行增量同步

  • 相关阅读:
    Cocos2dx 3.0 交流篇
    android获取ip和本机的物理地址
    半平面交总结and模板
    页面跳转的三种方式
    83. 从视图索引说Notes数据库(上)
    IE7IE8兼容性设置_服务器端设定
    [置顶] 王志成30岁前自传-我曾创造过的“第一”
    Android CTS 结果 testResult.xml 修改 fail 项 为 notExecuted 项 分析
    java android面试题分析总结
    android之写文件到sd卡
  • 原文地址:https://www.cnblogs.com/raincedar/p/14245181.html
Copyright © 2020-2023  润新知