文章目录
- 一、安装redis
- 二、复制修改配置文件
- 三、添加conf配置文件
- 四、开启主从复制
- 五、薪火相传
- 六、反客为主
- 7、哨兵模式
一、安装redis
redis安装笔记 https://blog.csdn.net/G_GUi/article/details/128361131
二、复制修改配置文件
- 把redis.conf复制到一个新建文件夹里面
(redis.conf文件从安装的redis里面找)
图1 新建文件夹 |
图2 redis.conf文件 |
- 修改redis.conf里面的appendonly改为no
三、添加conf配置文件
- 创建三个conf配置文件
一主两从,所以要配置三个文件(每个文件里面的数字都要修改,比如6379全部改为6380
)
redis6379.conf
redis6380.conf
redis6381.conf(三个文件都要放下面的内容,要改数字)
# 这个复制的redis.conf 要绝对路径
include /My_Redis/redis.conf
pidfile /var/run/redis_6379.pid #这里的数字要修改,名字要不一样,例如:redis_6380.pid
#指定端口
port 6379 # 这里的端口也要修改例如:6380
dbfilename dump6379.rdb #这里的数字要修改,名字要不一样例如:redis6380.rdb
-
启动3个redis
-
用Xshell工具开启三个窗口(双击蓝色的地方,就是 开启多窗口)
每个窗口开启一个节点
redis-cli -p 6379
redis-cli -p 6380
redis-cli -p 6381
四、开启主从复制
-
查看节点信息
info replication
-
在从机上输入命令,ip和端口是主机的
slaveof <ip> <port>
# 例如
从机6380:
slaveof 127.0.0.1 6379
从机6381:
slaveof 127.0.0.1 6379
-
用info replication查看主从关系,这样主机就是6379,两台从机6380,6381
其他问题:
- 如果主机redis设置了密码,会导致主从连接失败,解决办法就是在从机的配置文件里面添加
masterauth 主库密码
然后重启从机;或者在从机的命令里面输入config set masterauth 主库密码
- 主机挂掉
(角色不会丢失)
,重启就可以了
从机挂掉(角色丢失)
,要重新设置slaveof <ip> <port>
,如果不想一直重新设,在文件中加入配置 slaveof no one
取消主从,可以和主机解除关系- 主从复制流程:
从服务器连上主服务器,从服务器向主机发送一个数据同步的消息,然后主服务器进行持久化操作生成rdb文件,然后发给从服 务器,从服务器读取文件(连接上主服务器的时候,一次操作)
每次主服务器操作后,都会和从服务器进行同步(每次操作)
- 如果主机redis设置了密码,会导致主从连接失败,解决办法就是在从机的配置文件里面添加
五、薪火相传
从机下面再挂一个从机
六、反客为主
主机挂掉,从机上位变成主机master
7、哨兵模式
主机挂掉,从机上位
自动切换主机
创建sentinel.conf文件,里面添加下面内容
sentinel monitor mymaster 127.0.0.1 6379 1
启动命令:
redis-sentinel sentinel.conf
选举优先级为
1.replica-priority 100
2.数据完整性
3. 随机