ToB企服应用市场:ToB评测及商务社交产业平台

标题: redis(14)主从复制 [打印本页]

作者: 一给    时间: 2023-3-3 00:16
标题: redis(14)主从复制
Redis主从复制

主机数据更新后根据配置和策略, 自动同步到备机的 master/slaver 机制,Master 以写为主,Slave 以读为主,主从复制节点间数据是全量的。
作用:
上图将主服务器复制了3份从服务器,主服务器进行写操作,从服务器进行读操作,读写分离,减少压力
 
复制原理

 模拟复制操作

①首先我们创建1个文件夹叫myredis
  1. mkdir myredis
复制代码
②复制redis.conf到myredis中
  1. cp /opt/redis-6.2.10/redis.conf myredis/redis.conf
复制代码

③由于我们是一台服务器,所以模拟的话,需要配置3份redis.conf,启动3个端口,分别配置redis6379.conf,redis6380.conf,redis6381.conf。
redis6379.conf
使用命令vi redis6379.conf写入以下内容
  1. include /myredis/redis.conf
  2. pidfile /var/run/redis6379.pid
  3. port 6379
  4. dbfilename dump6379.rdb
  5. masterauth 你的redis密码(如果你有设置的话,没有设置密码这行不用加)
复制代码
然后redis6380.conf和redis6381.conf跟上面一样操作,只是端口号改成对应的即可。
 
④启动3台redis服务
  1. redis-server redis6379.conf
  2. redis-server redis6380.conf
  3. redis-server redis6381.conf
复制代码
使用ps -ef | grep redis查看结果

但目前3个没有主从区分,可以使用info replication查看是否是主从关系
我们先连接6379这台服务
  1. redis-cli -p 6379
复制代码
然后使用info replication,结果如下:

role:master就代表这台服务是主机,connected_salves:0代表主机下面的从机数量为0台
 
⑤将6380和6381这两台服务改成6379的从机
我们连接6380服务器,执行以下命令
  1. slaveof 127.0.0.1 6379
复制代码
这句话代表将此服务器变成6379的从服务器,当然ip地址填写你实际的,这里因为是本机所以填写127.0.0.1。6381服务器也做这个操作,这里就不重复写了
然后来到6379这台主机,执行info replication查看信息

可以看到从服务器的数量变成了2,具体的从服务器的ip和端口也显示出来了。
 
⑥测试主服务器写,从服务器读
我们在6379主服务器写入1个key

在6380和6381中查看


此时我们就完成了主从复制

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4