RDB 快照
RDB(Redis Database)快照是 Redis 提供的持久化方式之一,通过将内存中的数据生成快照文件保存到磁盘,实现数据的持久化备份。
工作原理
Redis 会按照配置的触发条件,fork 出一个子进程,子进程负责将当前数据写入一个临时文件,然后替换旧的快照文件 dump.rdb,整个过程对主进程无阻塞。
配置方式
在 redis.conf 文件中配置触发快照的条件:
save 900 1 # 900秒内如果至少有1个key被修改,就触发快照
save 300 10 # 300秒内如果至少有10个key被修改,就触发快照
save 60 10000 # 60秒内如果至少有10000个key被修改,就触发快照
快照文件位置
默认快照文件为 dump.rdb,存储在 Redis 工作目录(dir 配置)下。
手动触发快照
可以通过命令手动生成快照:
SAVE # 阻塞式保存,主线程等待完成
BGSAVE # 异步保存,子进程完成后写入文件
优缺点
- 优点:生成的快照文件体积小,加载速度快,适合做定期备份。
- 缺点:快照之间的修改会丢失,存在数据丢失风险;保存时可能阻塞(SAVE 命令)。
应用场景
适合对数据持久化要求不是特别严格的场景,或者结合 AOF 作为混合持久化方案,提高数据安全性和恢复速度。
相关内容
- Redis 是什么 Redis 是一个高性能的开源内存数据库,支持丰富的数据结构和多种操作命令。它广泛应用于缓存、消息队列和实时分析,具备持久化与高可用集群能力,提升系统性能和可靠...
- 应用场景 Redis 在缓存加速、实时数据处理、消息队列和排行榜等多种场景中表现出色,帮助提升系统性能和响应速度,是现代互联网和分布式应用的重要技术选型。
- 安装与配置 本章详细介绍 Redis 在主流操作系统上的安装步骤,包括 Linux(Ubuntu、CentOS)、macOS 以及 Windows 平台的多种安装方式,并辅...
- 命令行工具 Redis 提供强大的命令行工具 redis-cli,用于连接和操作 Redis 服务器。通过命令行可执行数据读写、管理配置、监控性能等操作,是开发和运维的重要...
- SET / GET SET 和 GET 是 Redis 中最基础且常用的字符串操作命令,用于存储和获取键值对,支持丰富的参数和选项,满足各种缓存和数据存取需求。
- DEL / EXPIRE / TTL DEL、EXPIRE 和 TTL 是 Redis 中用于键的管理命令,分别用于删除键、设置键的过期时间以及查询键剩余存活时间,帮助实现数据的有效管理和生命周期控...