-
创建/myredis文件夹
-
复制redis.conf配置文件到myredis文件夹中、
将appendonly 关闭 设置为no -
配置一主多从,创建多个配置文件
redis6379.conf
redis6380.conf
redis6380.conf -
编辑三个配置文件内容:(注意不同文件名称和端口号不同)
include /myredis/redis.conf
include /var/run/redis_6379.conf
port 6379
dbfilename dump6379.rdb
- 启动三个redis服务(将原先默认的那台6379机器进程kill掉)
查看当前主机运行情况
info replication
现在主从复制还未关联,在从机上执行 slaveof 主机ip 端口号
slaveof 127.0.0.1 6380
注意: 配置一主多从后,主机是有读写操作权限,从机只有读操作权限
图片.png从服务器挂掉以后 启动后并不能再次成为从服务器,会成为主服务器,将主服务器的数据复制过来,数据不会丢失;需要再次将该服务设置为从服务器;
主服务器挂掉以后,从服务器不会变为主服务器,并不会上位,
主服务器重启后依然是主服务器,
薪火相传:从服务器下面设置一个从服务器
反客为主:主服务器挂掉后,在从服务器下 执行命令:slaveof no one 将该从服务器设置为主服务器;缺点:手动执行完成。
哨兵模式:实现反客为主自动版。
设置哨兵模式:
自定义的/myredis目录下心间sentinel.conf文件,名字绝对不能错
接着配置哨兵,文件填写内容:
sentinel monitor mymaster 127.0.0.1 6379 1
其中mymaster为监控对象起的服务器名称,1 为至少有多少个哨兵同意迁移的数量(每个从服务器都有哨兵)
启动哨兵:(哨兵监听端口为:26379)
ll /usr/local/bin
redis-sentinel /myredis/sentinel.conf
如果主服务挂掉后,从服务器上哨兵会监控到,然后从服务器这个时候会变为主服务器;
哪台从服务器变成主服务是根据规则来选择的(按顺序):
- 优先级:在 redis.conf 中默认 slave-priority 100,值越小优先级越高。
- 偏移量:指获得原主机数据最全的概率。
- runid:每个 redis 实例启动后都会随机生成一个 40 位的 runid。
主服务器挂掉后,在重启之后,不会再变为主服务器,变为从服务器;
网友评论