Redis主从复制注意事项

本文详细介绍了Redis主从复制的概念及其实现过程。包括主从数据库的读写分离原理、配置步骤以及如何实现数据同步。此外还介绍了不同版本Redis对于复制的不同支持特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

redis主从复制

一、概述

1、Redis的复制功能是支持多个数据库之间的数据同步。一类是主数据库(master)一类是从数据库(slave),主数据库可以进行读写操作,当发生写操作的时候自动将数据同步到从数据库,而从数据库一般是只读的,并接收主数据库同步过来的数据,一个主数据库可以有多个从数据库,而一个从数据库只能有一个主数据库。

2、通过redis的复制功能可以很好的实现数据库的读写分离,提高服务器的负载能力。主数据库主要进行写操作,而从数据库负责读操作。

 

二、主从复制过程

主从复制过程:见下图

 

 

过程:

1:当一个从数据库启动时,会向主数据库发送sync命令,

2:主数据库接收到sync命令后会开始在后台保存快照(执行rdb操作),并将保存期间接收到的命令缓存起来

3:当快照完成后,redis会将快照文件和所有缓存的命令发送给从数据库。

4:从数据库收到后,会载入快照文件并执行收到的缓存的命令。

 

注意:redis2.8之前的版本:当主从数据库同步的时候从数据库因为网络原因断开重连后会重新执行上述操作,不支持断点续传。

redis2.8之后支持断点续传。

 

三、配置步骤

Redis主从结构支持一主多从

主节点:192.168.40.130

从节点:192.168.40.132

注意:所有从节点的配置都一样

1、Master配置

打开并修改主数据库配置文件

vi  /etc/redis/6379.conf

修改

bind  192.168.40.130 //服务器所绑定的IP地址(Master自身IP地址)

port  6379  //监听端口

requirepass  123456  //认证密码(选填,可注释掉)

2、Slave配置

vi  /etc/redis/6379.conf

修改

bind  192.168.40.132 //服务器所绑定的IP地址(Slave自身IP地址)

port  6379  //监听端口

slaveof  192.168.40.130  6379  //指定的Master的IP以及端口号

masterauth  123456  //连接Master的认证密码(如果Master中没有配置requirepass,这里也就不需要配置masterauth)

requirepass  123456  //认证密码(选填,可注释掉)


3、重启主从Redis服务

service redis_6379 start


4、连接主从服务测试

执行以下命令:




注意事项

如果你使用主从复制,那么要确保你的master激活了持久化,或者确保它不会在当掉后自动重启。原因:

slave是master的完整备份,因此如果master通过一个空数据集重启,slave也会被清掉。

在配置redis复制功能的时候如果主数据库设置了密码,需要在从数据的配置文件中通过masterauth参数设置主数据库的密码,这样从数据库在连接主数据库时就会自动使用auth命令认证了。相当于做了一个免密码登录。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值