学习笔记:Redis--主从复制/
2018-01-21 20:43
519 查看
Redis学习笔记--主从复制
主从复制可以用来备份存储数据到另一个redis库中.也可以用来做读写分离操作.更具自己设计的策略进行主从关系的配置实现不同的主从关系.关系master/slaver关系.也因为该关系以及文件配置项可以实现读写分离.master主要负责写.slaver主要负责读.
两个常用命令.
1.用于指定配置主从关系.slaveof +host +port.为当前操作的redis设置master.....host和port指的是主人redis的地址和端口.
2.info replication.这个指令用于查看当前redis的角色(master/slaver).
3.slaveof noone看名字就是么有master.
ps:主从复制.至少两个或以上.这里设A(6379) B(6380) C(6391) 三个redis库......需要在配置文件内部配置不同的端口
配置文件中的NetWork项中配置端口port项.这里配置的是6379默认的端口.可以对其修改进行配置不同的redis.
.
3.几种不同的配置方式
Ps:几个要点.在对数据备份方面.随从备机Slaver会吧主机Master的所有数据(执行主从复制命令前后主机的数据)~全部~都
备份到备机中!
备机Slaver默认配置为只读模式.
执行操作的时候.BC会同步数据到BC的存储文件中.dump.rdb/appendonly.aof文件中.(ps:为了区分.也需要分别在ABC三
个Redis配置文件中配置对应的持久化文件名字)
1.1个master和两个slaver:假设我们设置A为Master.BC同时执行SalveOf A.host A.port...BC就成为了A的随从.既A的备机.
B slaveof A. C slavrof A.
注意点:而当A:master-redis停止工作如shutdown后.BC依旧会保持slaver角色.并且BC其中一个停止工作.互不影响备份工作
而停止工作(断开..)该断开的slaver就会变回master.
2.也可以一个接一个.类似马老师的一字长蛇打野(哈哈).......既 B slaveof A. C slavrof B.
注意点:A:master-redis停止工作如shutdown后. BC依旧slaver....A不死B死C不死.中间的断开了.也就执行不了BC的持久化
3.哨兵模式!!这个比较好.重点一点.大概意思是.在第一种模式之下.当A停止工作了.可以通过后台监控master是否停止.如果停止.
就根据剩下的两个从机进行投票选取.选取一个(B/C)当作master继续工作.避免两个slaver导致的都不能写的问题.
1.需要配置sentinel.conf文件.其中可以这样配置.即监控我们原master主机的名字.host.port.将其设置为1.当我们的master
机停止工作了.会根据剩余两个slaver的票数决定谁成为master
当配置好之后.可以通过redis文件中的redis-sentinel 来执行sentinel配置文件.启动我们的哨兵模式(reids-sentinel sentinel.conf) 启动.
注意点:当原本死掉的Master机恢复工作.他的角色就不是master了.会变成slaver.需要修改课对redis.conf文件中的项进行修改查看的时候会发现!多了一个神头鬼脸的项:就是(slaveof 新maset.host 新master.port) 这样一个东西.还有删除sentinel文件就可以破坏哨兵模式.
主从复制可以用来备份存储数据到另一个redis库中.也可以用来做读写分离操作.更具自己设计的策略进行主从关系的配置实现不同的主从关系.关系master/slaver关系.也因为该关系以及文件配置项可以实现读写分离.master主要负责写.slaver主要负责读.
两个常用命令.
1.用于指定配置主从关系.slaveof +host +port.为当前操作的redis设置master.....host和port指的是主人redis的地址和端口.
2.info replication.这个指令用于查看当前redis的角色(master/slaver).
3.slaveof noone看名字就是么有master.
ps:主从复制.至少两个或以上.这里设A(6379) B(6380) C(6391) 三个redis库......需要在配置文件内部配置不同的端口
配置文件中的NetWork项中配置端口port项.这里配置的是6379默认的端口.可以对其修改进行配置不同的redis.
.
3.几种不同的配置方式
Ps:几个要点.在对数据备份方面.随从备机Slaver会吧主机Master的所有数据(执行主从复制命令前后主机的数据)~全部~都
备份到备机中!
备机Slaver默认配置为只读模式.
执行操作的时候.BC会同步数据到BC的存储文件中.dump.rdb/appendonly.aof文件中.(ps:为了区分.也需要分别在ABC三
个Redis配置文件中配置对应的持久化文件名字)
1.1个master和两个slaver:假设我们设置A为Master.BC同时执行SalveOf A.host A.port...BC就成为了A的随从.既A的备机.
B slaveof A. C slavrof A.
注意点:而当A:master-redis停止工作如shutdown后.BC依旧会保持slaver角色.并且BC其中一个停止工作.互不影响备份工作
而停止工作(断开..)该断开的slaver就会变回master.
2.也可以一个接一个.类似马老师的一字长蛇打野(哈哈).......既 B slaveof A. C slavrof B.
注意点:A:master-redis停止工作如shutdown后. BC依旧slaver....A不死B死C不死.中间的断开了.也就执行不了BC的持久化
3.哨兵模式!!这个比较好.重点一点.大概意思是.在第一种模式之下.当A停止工作了.可以通过后台监控master是否停止.如果停止.
就根据剩下的两个从机进行投票选取.选取一个(B/C)当作master继续工作.避免两个slaver导致的都不能写的问题.
1.需要配置sentinel.conf文件.其中可以这样配置.即监控我们原master主机的名字.host.port.将其设置为1.当我们的master
机停止工作了.会根据剩余两个slaver的票数决定谁成为master
当配置好之后.可以通过redis文件中的redis-sentinel 来执行sentinel配置文件.启动我们的哨兵模式(reids-sentinel sentinel.conf) 启动.
注意点:当原本死掉的Master机恢复工作.他的角色就不是master了.会变成slaver.需要修改课对redis.conf文件中的项进行修改查看的时候会发现!多了一个神头鬼脸的项:就是(slaveof 新maset.host 新master.port) 这样一个东西.还有删除sentinel文件就可以破坏哨兵模式.
相关文章推荐
- 八 redis学习笔记之主从复制
- Redis学习笔记10--Redis主从复制
- Redis学习笔记10--Redis主从复制
- Redis学习笔记10--Redis主从复制
- 八 redis学习笔记之主从复制
- Redis 学习笔记(三):主从复制、主从配置和性能测试
- 八 redis学习笔记之主从复制
- redis学习笔记八之主从复制
- Redis学习笔记九、主从复制
- 八 redis学习笔记之主从复制
- redis学习笔记之主从复制
- Redis学习笔记五:redis主从复制
- redis学习笔记---redis主从复制
- Redis 学习笔记6-主从复制
- Redis学习手册(主从复制)
- Redis学习笔记(4)-持久化、主从配置、哨兵、集群配置
- MongoDB 学习笔记(七):主从复制与副本集
- Redis学习手册(主从复制)(转)
- Redis学习手册(主从复制) Master-Slave
- Linux学习笔记:MySQL主从复制的风险与防范