如何禁用redis的持久性?

How to disable persistence with redis?

我想知道如何禁用 redis 中的持久性。这里提到了这样做的可能性:http://redis.io/topics/persistence。我的意思与那里描述的完全相同。非常感谢任何帮助!

要在 Redis 中禁用 所有 数据持久性,请在 redis.conf 文件中执行以下操作:

  1. 通过将 appendonly 配置指令设置为 no(这是默认值)来禁用 AOF。像这样:

    appendonly no
    
  2. 通过注释所有 save 配置指令(默认定义了 3 个)并显式禁用保存来禁用 RDB 快照:

    #save 900 1
    #save 300 10
    #save 60 10000
    save ""
    

更改后,请确保重新启动 Redis 以应用它们。

或者,您可以使用 CONFIG SET command to apply these changes during runtime (just make sure you also do a CONFIG REWRITE 来保存更改。

注意:根据您的 Redis 版本,还有其他调整可以防止 Redis 访问磁盘以执行与复制相关的任务。

对于 RDB 快照,您可以使用

禁用它

$ sed -e '/save/ s/^#*/#/' -i /etc/redis/redis.conf && sudo service redis-server restart

它会注释redis.conf中的保存行并重启redis-server

如果你想避免使用 redis.conf(dev/test 环境),你可以通过命令行

redis-server --save "" --appendonly no

(使用 redis 服务器 3.2.65.0.5 测试)

由于AOF(appendonly)默认是禁用的,所以在没有redis服务重启的情况下禁用持久化只需要做一件事是禁用保存配置。

用于在 运行 时间禁用它并验证 运行 下面的命令

检查当前保存配置

pawan@devops:~$ redis-cli config get save
1) "save"
2) "900 1 300 10 60 10000"

相同的设置也将出现在 redis.conf 文件中

pawan@devops:~$ grep -w 'save' /etc/redis/redis.conf | grep -v '#'
save 900 1
save 300 10
save 60 10000

禁用保存配置

pawan@devops:~$ redis-cli config set save ""
OK

使用新的 save 配置修改 redis.conf 文件,以便配置在 redis 服务重新启动时保持永久不变

root@ip-172-16-3-114:~# redis-cli config rewrite
OK

确认新的保存配置

pawan@devops:~$ redis-cli config get save
1) "save"
2) ""

现在,如果您要扫描 redis.conf 文件以获取 保存 配置,将不会有任何结果

pawan@devops:~$ grep -w 'save' /etc/redis/redis.conf | grep -v '#'  
pawan@devops:~$