如何在Linux上配置Redis以在重启后持久化数据?

8
我在Ubuntu 16.04上安装了Redis,但找不到Redis目录或redis.conf文件(尝试使用:sudo find redis.conf)。我的应用程序依赖于从第三方API中获取的一些数据。我将(处理过的)数据存储在Redis中。问题是,在重新启动后,我会丢失这些数据。我猜想需要在配置文件中指定数据应该在重新启动后持久化,但我找不到配置文件。我需要创建配置文件吗?有没有可用的模板?我的目标只是让数据在重新启动后保留。谢谢!
3个回答

11
使用 dpkg -L redis-server | grep redis.conf 命令查找配置文件路径。根据我的了解,它应该位于 /etc/redis/redis.conf
Redis 有两种持久化方式: 快照追加文件
  • 通过在配置文件中添加(或取消注释)save X Y 来启用 快照。这意味着如果至少有 Y 个键发生变化,则 Redis 将每隔 X 秒自动将数据集转储到磁盘。配置文件中可能会有多个 save 选项。

  • 通过在配置文件中添加(或取消注释)appendonly yes 来启用 追加文件


1
我没有做任何更改,但即使在redis-server重新启动后,我的密钥仍然存在,为什么?@seyed - AATHITH RAJENDRAN
2
默认情况下,在“redis.conf”中启用了三个“save”命令,因此这是正常行为。 - Seyed Mehran Siadati
谢谢,他们默认已经为我们提供了3个save命令,所以快照的点可以跳过(或者您可以根据需要进行修改),现在只需要启用appendonly yes就可以使Redis持久化。 - undefined

5

0

将此添加到配置文件中。

appendonly yes

这将在存储新数据时追加数据。这样可以实现耐久性。


我需要创建配置文件吗?我在我的文件系统中找不到名为redis.conf的文件。 - giliev
配置文件默认存在,只需编辑它。配置文件路径:redis-server /etc/redis.conf - Srini Sydney
这将启用一种持久化方式,可能或可能不是您想要的模式。根据您的耐久性和性能需求,您可能希望使用RDB持久性。 - Tague Griffith

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接