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、至此初始化完成,后续进行增量同步
相关文章:C# Redis 可视化工具 Redis Desktop Manager
参考文章:https://blog.csdn.net/guweiyu_thinker/article/details/78816071
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
java基础巩固-浅析String源码及其不可变性
字符串可以说是广泛应用在日常编程中,jdk从1.0就提供了String类来创建和操作字符串。同时它也是不可改变类(基本类型的包装类都不可改变)的典型代表。 源码查看(基于1.8) public final class String implements java.io.Serializable, Comparable<String>, CharSequence { private final char value[]; //这边只是引用并不是真正对象 ... } //首先string类创建的对象是不可变的(一个对象在创建完成后不能再改变它状态,说明是不可变的,并发程序最喜欢不可变量了), //里面最主要的成员为char类型的数组 几个构造方法 //空的构造方法 例如 String a = new String(); a为""空字符 public String() { this.value = new char[0]; } //带参构造方法 将源的hash和value赋给目标String public String(String original) { this.value ...
- 下一篇
使用checkstyle来规范你的项目
Checkstyle是什么 自从做了程序员,关于格式化的讨论就不曾中断过,到底什么才是正确的,什么才是错误的,到现在也没有完整的定论。但随着时间发展,渐渐衍生出一套规范出来。没有什么绝对的正确和错误,关键在于规范的定义。最出名的就是google style guide. Checkstyle就是以这种风格开发出的一个自动化插件,来辅助判断代码格式是否满足规范。 为什么要用,我们需要吗 最初,我使用checkstyle是因为公司要求,在经历过一段痛苦的格式重构阶段后,渐渐习惯了这样的格式。到后来,我新建项目就会把这个加进去,最多改几条规则。前一段时间,由于赶项目进度,其他人不熟悉,只好先关掉了。到后面发现真的每个人的风格都不一样,都看着代码怪怪的。所以,又加回来了。对于多人合作的项目,还是建议采用这样的规范,内容不必拘泥于google-checks,找出适合你们团队的风格就好。 如何使用 在gralde中使用 在gralde中用法比较简单。示例项目: https://github.com/Ryan-Miao/springboot-security-demo/blob/master/con...
相关文章
文章评论
共有0条评论来说两句吧...