Redis

关注公众号 jb51net

关闭
首页 > 数据库 > Redis > Redis报错MISCONF Redis

解决Redis报错MISCONF Redis is configured to save RDB snapshots

作者:奔跑吧邓邓子

这篇文章主要给大家介绍了关于如何解决Redis报错MISCONF Redis is configured to save RDB snapshots的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

一、问题描述

Redis 之前一直使用正常,某一天突然报错:

MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk. Commands that may modify the data set are disabled, because this instance is configured to report errors during writes if RDB snapshotting fails (stop-writes-on-bgsave-error option). Please check the Redis logs for details about the RDB error.

二、解决方法

两种方法解决:一是通过命令行修改,一是通过配置文件修改。

1.命令行修改

redis-cli
auth XXX
127.0.0.1:6379> config set stop-writes-on-bgsave-error no

2.配置文件修改

修改 redis.conf ,将 stop-writes-on-bgsave-error 设置为 no,然后重启服务。

三、其它问题

一般还会同时有两个警告:

WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

警告1解决方法:

echo 1 > /proc/sys/vm/overcommit_memory

警告2解决方法:

vi /etc/sysctl.conf

#添加配置
net.core.somaxconn = 1024

检查是否成功:sysctl -p

总结

到此这篇关于解决Redis报错MISCONF Redis is configured to save RDB snapshots的文章就介绍到这了,更多相关Redis报错MISCONF Redis内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文