混合持久化
混合持久化是 Redis 6 版本及以上支持的一种持久化方式,它结合了 RDB 快照和 AOF 日志的优点,提升数据恢复效率和安全性。
原理
混合持久化在 AOF 文件中嵌入 RDB 快照数据,重写生成的 AOF 文件包含:
- RDB 格式的全量数据快照。
- 快照之后的增量命令日志。
这样在重启加载时,Redis 先快速加载快照部分,再执行增量命令,显著加快恢复速度。
配置方法
在 redis.conf 中启用 AOF 并开启混合持久化:
appendonly yes
aof-use-rdb-preamble yes
aof-use-rdb-preamble 设置为 yes 时启用混合持久化。
优点
- 快速恢复:加载 RDB 部分比纯 AOF 更快。
- 数据安全:保持了 AOF 的命令级持久化,减少数据丢失。
- 文件大小合理:结合 RDB 压缩减少了 AOF 文件膨胀。
应用场景
适用于对数据恢复速度和持久化完整性都有较高要求的生产环境,是推荐的持久化策略。
注意事项
- 混合持久化仅在 Redis 6 及以上版本支持。
- 启用混合持久化后,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 中用于键的管理命令,分别用于删除键、设置键的过期时间以及查询键剩余存活时间,帮助实现数据的有效管理和生命周期控...