提问者:小点点

MISCONF Redis配置为保存RDB快照


在写入Redis(set foo bar)的过程中,我收到以下错误:

MISCONF Redis配置为保存RDB快照,但当前无法在磁盘上持久保存。禁用可能修改数据集的命令。有关该错误的详细信息,请查看Redis日志。

基本上,我知道问题是redis不能在磁盘上保存数据,但不知道如何解决这个问题。

下面的问题也有同样的问题,它很久以前就被放弃了,没有答案,很可能也没有试图解决问题。


共2个答案

匿名用户

如果遇到错误,并且无法丢弃正在运行的redis实例上的某些重要数据(rdb文件或其目录的权限问题不正确,或者磁盘空间不足),则始终可以将rdb文件重定向到其他地方写入。

使用redis-cli,可以执行如下操作:

CONFIG SET dir /tmp/some/directory/other/than/var
CONFIG SET dbfilename temp.rdb

在此之后,您可能需要执行bgsave命令,以确保将数据写入rdb文件。请确保执行信息持久性时,bgsave_in_progress已经是0并且rdb_last_bgsave_status确定。之后,您现在可以开始在安全的地方备份生成的rdb文件。

匿名用户

使用redis-cli,您可以阻止它尝试保存快照:

config set stop-writes-on-bgsave-error no

这是一个快速的解决方法,但是如果您关心使用它的数据,您应该检查以确定bgsave首先失败的原因。