针对Redis的话题估计有些读者已经开始反感了,昨天还是有一些读者困惑,这就具体讲述下Redis持久化方式-RDB的实现方式~
例如以下场景:
保存: RDB 文件保存在 dir 配置指定的目录下, 文件名通过 dbfilename 配置指定。可以通过执行 config set dir {newDir}
和 config set dbfilename {newFileName}
运行期动态执行, 当下次运行时 RDB 文件会保存到新目录。
压缩: Redis 默认采用 LZF 算法对生成的 RDB 文件做压缩处理, 压缩后的文件远远小于内存大小, 默认开启, 可以通过参数 config set rdbcompression {yes|no}
动态修改。
校验: 如果 Redis 加载损坏 的RDB 文件时拒绝启动, 并打印如下日志:
# Short read or OOM loading DB. Unrecoverable error, aborting now.
这时可以使用 Redis 提供的 redis-check-dump 工具检测 RDB 文件并获取对应的错误报告。