Redis 提供了两种主要的持久化存储方式:RDB(Redis DataBase)和 AOF(Append Only File)。以下是如何为 Redis 设置这两种持久化存储的方法:
配置文件设置:
打开 Redis 的配置文件 redis.conf
,找到并修改以下参数:
save 900 1
save 300 10
save 60 10000
这些参数的含义是:
save 900 1
:如果在 900 秒内至少有 1 个键发生变化,则进行快照。save 300 10
:如果在 300 秒内至少有 10 个键发生变化,则进行快照。save 60 10000
:如果在 60 秒内至少有 10000 个键发生变化,则进行快照。你可以根据需要调整这些参数。
手动触发快照: 你也可以通过 Redis 命令手动触发快照:
redis-cli save
或者使用 BGSAVE
命令在后台生成快照:
redis-cli BGSAVE
配置文件设置:
打开 Redis 的配置文件 redis.conf
,找到并修改以下参数:
appendonly yes
这将启用 AOF 持久化。
配置 AOF 文件名:
默认情况下,AOF 文件名是 appendonly.aof
。你可以通过以下参数更改文件名:
appendfilename "myredis.aof"
配置 AOF 重写: AOF 文件会随着时间的推移变得越来越大,因此 Redis 提供了 AOF 重写功能来减小文件大小。你可以通过以下参数配置 AOF 重写:
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
这些参数的含义是:
auto-aof-rewrite-percentage 100
:当 AOF 文件大小比上次重写后的文件大小增加 100% 时,触发重写。auto-aof-rewrite-min-size 64mb
:当 AOF 文件大小至少为 64MB 时,触发重写。手动触发 AOF 重写: 你也可以通过 Redis 命令手动触发 AOF 重写:
redis-cli BGREWRITEAOF
你可以同时启用 RDB 和 AOF 持久化,以提供更高的数据安全性。在这种情况下,Redis 会优先使用 AOF 文件进行数据恢复,因为 AOF 文件通常比 RDB 文件更完整。
在 redis.conf
中,确保以下参数设置正确:
appendonly yes
save ""
save ""
表示禁用 RDB 快照,只使用 AOF 持久化。
通过以上步骤,你可以为 Redis 设置持久化存储,确保数据在服务器重启后不会丢失。