【问题标题】:How to disable persistence with Redis 5.x如何使用 Redis 5.x 禁用持久性
【发布时间】:2019-11-06 00:31:59
【问题描述】:

我在 5.0.6 版本中运行一个 6 节点集群,使用 Redis Docker 官方镜像,并且在我的配置文件中有以下配置:

SAVE ""
appendonly no

我可以确认这些设置已加载运行:

config get save
1) "save"
2) ""

config get appendonly
1) "appendonly"
2) "no"

但是Redis还是经常创建dump.rdb文件:

info persistence
# Persistence
loading:0
rdb_changes_since_last_save:364575
rdb_bgsave_in_progress:1
rdb_last_save_time:1570058274
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:68
rdb_current_bgsave_time_sec:54
rdb_last_cow_size:445624320
aof_enabled:0
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok
aof_last_write_status:ok
aof_last_cow_size:0
-rw-r--r-- 1 redis redis Oct  2 19:19 dump.rdb
-rw-r--r-- 1 redis redis Oct  2 18:02 nodes.conf
-rw-r--r-- 1 redis redis Oct  2 19:20 temp-260.rdb

我检查了运行 INFO COMMANDSTATS 的应用程序是否正在发出 BGSAVE 命令,但事实并非如此。

我尝试为 SAVE 设置一个非常大的值( CONFIG SET save "99999999999 1215752191" )以查看它是否会更改快照的频率并且它没有受到影响。快照以相同的频率保存(每隔几秒)。

持久性是集群中不能禁用的东西吗?还有其他方法可以禁用持久性吗?

谢谢,

【问题讨论】:

  • Redis 将创建一个转储文件以便与从属设备同步。对于大型数据库,默认的“client-output-buffer-limit replica”配置可能不适合完成完全同步。当数据库同步失败时,它会不断重试,迫使主服务器生成新的转储。在这种情况下,数据库转储与磁盘上的持久性无关,而是与复制本身有关。

标签: redis


【解决方案1】:

问题中提出的配置是准确的禁用持久化。

【讨论】:

    猜你喜欢
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    • 2017-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多