redis主从复制配置不成功的解决方案

因为centos7中的防火墙由iptabls变为了firewall,所以尽管主服务器和从服务器能够ping通,但无法配置成功,在从服务器的客户端的info命令下,会显示:

1.先查看一下 redis服务哪些机器可以访问

*或0.0.0.0代表任何机器可以访问

127.0.0.1代表本机可以访问

2.检查防火墙端口是否开放

在centos7下,默认的防火墙由之前的iptables改为了firewall,所以查看的方式也有不同。

添加例外端口:
# firewall-cmd --add-port=端口号/tcp
删除例外端口:
# firewall-cmd --remove-port=端口号/tcp
查看例外端口:
# firewall-cmd --query-port=端口号/tcp

如果想永久添加,加上permanent参数,如:
# firewall-cmd --permanent --add-port=端口号/tcp

所以主从服务器都配置一下

firewall-cmd --permanent --add-port=6379/tcp

然后重启防火墙

systemctl restart firewalld

再重启主从redis服务器,问题得到解决。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Redis主从复制是一种常见的数据同步机制,用于将一个Redis实例(主节点)的数据同步到其他Redis实例(从节点)。主从复制可以提高系统的可用性和读取性能,并且可以作为Redis的高可用解决方案。 以下是一个简单的示例,展示如何在Redis设置主从复制: 1. 首先,确保你拥有两个Redis实例:一个作为主节点(Master),另一个作为从节点(Slave)。 2. 在主节点的配置文件(redis.conf)中,取消注释或添加以下配置项: ``` port 6379 bind 0.0.0.0 daemonize yes pidfile /var/run/redis/redis-server.pid appendonly yes appendfilename "appendonly.aof" save 900 1 save 300 10 save 60 10000 rdbcompression yes ``` 这里只展示了一部分常用配置项,你可以根据自己的需求进行进一步配置。 3. 在从节点的配置文件(redis.conf)中,取消注释或添加以下配置项: ``` port 6380 bind 0.0.0.0 daemonize yes pidfile /var/run/redis/redis-server.pid replicaof <master-ip> <master-port> ``` `<master-ip>`和`<master-port>`分别代表主节点的IP地址和端口号。 4. 启动主节点和从节点: ``` $ redis-server /path/to/redis.conf ``` 分别执行以上命令启动主节点和从节点。确保主节点先启动,从节点连接时能够正确同步主节点的数据。 5. 验证主从复制是否成功: 在主节点执行Redis命令,例如: ``` $ redis-cli 127.0.0.1:6379> SET key1 value1 ``` 在从节点执行Redis命令,例如: ``` $ redis-cli 127.0.0.1:6380> GET key1 ``` 如果从节点能够获取到与主节点相同的值,则说明主从复制配置成功。 以上是一个简单的Redis主从复制配置示例。你可以根据自己的实际需求进行进一步的配置和调优。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值