redis 主从备份(手动切换)

redis 默认都是master

redis集群中,必须使用相同版本的redis,最好精确到小版本

  一、开启redis服务,并使用redis客户端连接redis服务

1 redis-server 
2 redis-cli 

  二、使用SLAVEOF 将角色转换为slave,并指向redis 主服务器的IP和对应的端口(redis 中不区分大小写)

 SLAVEOF 192.168.1.4 6379 

输入:SLAVEOF ,后面会自动显示灰色的host 和port表示对方的主机和端口

  三、INFO查看

127.0.0.1:6379> info 
# Replication
role:slave
master_host:192.168.1.4
master_port:6379
master_link_status:down

  1、查看当前的redis中都有哪些key

127.0.0.1:6379> keys *
1) "a"

如果和master建立了连接,就会清空当前redis上的所有数据库,以master为准

  四、配置连接密码

127.0.0.1:6379> CONFIG SET masterauth 12345678
OK
CONFIG SET masterauth 后面跟上的12345678就是master redis的密码

  如果版本不一样,就会提示错误,我这里使用的是redis5.0.12

 slave 模式下是不能写数据的,只能从master那边同步过来

   五、永久有效,直接写到配置中

低版本redis 修改slaveof  <masterip> <masterport>

 高版本redis修改replicaof <masterip> <masterport>

replicaof 192.168.1.4 6379

  2、修改master认证密码

# masterauth <master-password>

修改为:
 masterauth 123456

注意:在redis 5.0版本中IP地址和对应的端口,密码,两边的<>符号必须去掉,否则会导致连不上对应的端口,密码无效。

 

 

 

 

 

 

 

 

 

 


 

报错解决办法:

  1、(error) READONLY You can‘t write against a read only replica

因为连接的是从节点,从节点只有读的权限,没有写的权限

解决办法:

进入redis.conf配置文件,修改配置文件的slave-read-only为no,
那么从节点也就可以进行写的操作了

   2、编译失败之后可以试着清理下残留试试看

make distclean

  

redis 主从备份(手动切换)

上一篇:SV——过程语句和子程序


下一篇:ATM取款机测试点