Redis主从复制
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Redis主从复制,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2109字,纯文字阅读大概需要4分钟。
内容图文
![Redis主从复制](/upload/InfoBanner/zyjiaocheng/589/6ce71adedbf8494b92d971356c1533a9.jpg)
建立复制
默认情况下,Redis都是主节点。现在,我来演示下如何开启主从复制。
首先,开启两个redis服务,这两个redis服务,除了绑定的端口不同及持久化的文件不同,其他配置完全一致
127.0.0.1:6379> keys * 1) "age" 2) "name" 127.0.0.1:6380> keys * (empty list or set)
6379这个redis目前有两个键,而6380目前是空的。建立6379余6380之间的主从关系,让6379作为主节点,6380作为从节点。
建立复制有两个方式:
修改6380的配置文件,在该配置文件中加上slaveof 127.0.0.1 6379,然后重启redis服务
动态修改,直接输入slaveof 127.0.0.1 6379
127.0.0.1:6380> slaveof 127.0.0.1 6379 OK 127.0.0.1:6380> keys * 1) "name" 2) "age"
可以看到,复制已经建立了,现在6380数据和6379是一致的了。
分别对6379及6380执行info replication命令,可以看到相关信息。
127.0.0.1:6379> info replication # Replication role:master connected_slaves:1 …… 127.0.0.1:6380> info replication # Replication role:slave master_host:127.0.0.1 master_port:6379 ……
断开复制
断开复制操作非常简单,只需执行slaveof no one即可。
127.0.0.1:6380> slaveof no one OK
另外还可以直接切换主节点。比如,现在6380是6370的从节点,现在6380想断开6379的主从关系,与6381建立新的复制关系。那么6380只需执行slaveof 127.0.0.1 6381即可。
但切主的时候需要注意一点,从节点之前的数据将会被清空,然后再去复制新主节点的数据。所以,如果之前的数据有用且没有备份下,且不可进行切主操作。
密码校验
若主节配置了requirepass,那么从节点就需要设置masterauth
只读
默认情况下从节点执行进行读操作,不能进行写操作。因为这么做是非常必要的,如果从节点进行了写操作,那么就会造成主从节点的数据不一致的情况。如果想从节点也可以写的话,修改配置项slave-read-only=no即可。
应用场景
redis的复制常见的应用场景有
数据的实时备份,一般此种情况,只有一个从节点,从节点开启aof持久哈,节点的主要任务就是实时备份数据。
故障转移,如果主节点发生了故障的话,那么可以使用从节点来继续运行系统
读写分离,比较适合于读比较多的场景,主节点进行写操作,多个从节点进行读操作。因为复制是异步进行的,所以从节点数据可能会有延迟,这点也是开发时候需要注意的。
以上就是Redis主从复制的详细内容。
内容总结
以上是互联网集市为您收集整理的Redis主从复制全部内容,希望文章能够帮你解决Redis主从复制所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。