Redis提供了复制功能,可以实现在主数据库(Master)中的数据更新后,自动将更新的数据同步到从数据库(Slave)。一个主数据库可以拥有多个从数据库,而一个从数据库只能拥有一个主数据库。
Redis的主从数据复制原理如下:
步骤说明:
1)一个从数据库在启动后,会向主数据库发送SYNC命令。
2)主数据库在接收到SYNC命令后会开始在后台保存快照(即RDB持久化的过程),并将保存快照期间接收到的命令缓存起来。在该持久化过程中会生成一个.rbd快照文件。
3)在主数据库快照执行完成后,Redis会将快照文件和所有缓存的命令以.rdb快照文件的形式发送给从数据库。
4)从数据库收到主数据库的.rdb快照文件后,载入该快照文件到本地。
5)从数据库执行载入后的.rdb快照文件,将数据写入内存中。
【以上步骤称为复制初始化】
6)在复制初始化结束后,主数据库在每次收到写命令时都会将命令同步给从数据库,从而保证主从数据库的数据一致。
在Redis中开启复制功能时,主数据库无需进行任何配置,而需要在从数据库配置文件中加入如下配置:
# slaveof master_address master_port
slaveof 127.0.0.1 9000
# 如果master有密码,则需要设置masterauth
masterauth=123
【注意:配置完需重启从Redis】
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?