【问题标题】:How to disable Redis RDB and AOF?如何禁用 Redis RDB 和 AOF?
【发布时间】:2019-02-21 01:30:48
【问题描述】:

如何完全禁用 RDB 和 AOF? 我不关心持久性,只希望它存在于内存中。

我已经注释掉了:

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

但这并没有帮助,我看到 Redis 仍在尝试写入磁盘。 我知道 Redis 想要写入磁盘,因为我收到此错误:“无法打开 .rdb 进行保存:权限被拒绝”

我不关心错误,因为我想完全禁用持久性。

【问题讨论】:

  • 您能否添加更多有关您的环境的详细信息?
  • 单机,CentOS 7,Redis 2.8.19

标签: redis


【解决方案1】:

如果要更改正在运行的redis,请登录redis,然后

禁用 aof

config set appendonly no

禁用 rdb

config set save ""

如果想让这些更改在重启redis后生效,使用

config rewrite

对 redis conf 文件进行这些更改。

如果你的redis还没有启动,只需对redis.conf做一些修改,

appendonly no
save ""

确保上面的句子后面没有“save 60 1000”之类的句子,因为后者会重写前者。

【讨论】:

  • 对我来说,即使在这样做之后,持久性也一直存在。所以,我手动删除了 appendonly.aof 和 dump.rdb 我重新启动了 redis-server,现在持久化没有发生。
  • 这也发生在我身上。我通过注释掉所有保存行来禁用写作。但是,/var/lib/redis 中仍然存在一个 dump.rdb 文件。每次 redis 服务器启动时,都会读取这个过时的文件。当然,删除文件解决了这个问题。
  • 当使用 Redis 集群和 Sentinel 删除 *rdb 文件时,如果您仍然可以看到:rdb_bgsave_in_progress: 1
【解决方案2】:

更新:请查看斐波那契的答案。我的错误,虽然被接受了。


在 redis.conf 中注释“dbfilename”行应该可以解决问题。

【讨论】:

  • 这不是真的,注释该行只会退回到该文件的默认位置。 @fibonacci 答案是正确的。
  • 脱帽致敬,将您接受的答案重定向到实际正确的答案。
  • 我确实看过斐波那契数,但它给我的只是 13 21 34
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多