redis连接错误3种解决方案System Error MISCONF Redis is configured to save RDB snapshots

redis连接错误System Error MISCONF Redis is configured to save RDB snapshots, but XX

redis连接错误3种解决方案System Error MISCONF Redis is configured to save RDB snapshots

 
情况1解决办法:
由于强制停止redis快照,不能持久化引起的。
在客户端输入
config set stop-writes-on-bgsave-error no

情况2解决办法:

Redis在保存数据到硬盘时为了避免主进程假死,需要Fork一份主进程,然后在Fork进程内完成数据保存到硬盘的操作,如果主进程使用了4GB的内存,Fork子进程的时候需要额外的4GB,此时内存就不够了,Fork失败,进而数据保存硬盘也失败了。

修改vm.overcommit_memory=1

// 原文:http://pydelion.com/2013/05/27/redis-cant-save-in-background-fork-cannot-allocate-memory/
If you get this error Can't save in background: fork: Cannot allocate memory it means that your current database is bigger than memory you have. To fix the issue enable vm.overcommit_memory: sysctl vm.overcommit_memory=1 To have if after reboot add this line to /etc/sysctl.cnf: vm.overcommit_memory=1

情况3解决办法:

Permission denied持久化文件无权限,改一下文件夹权限就解决了

chmod  777 /xxx/redis_data

 

当然是那种情况需要先看看redis日志文件。

redis在默认情况下,是不会生成日志文件的,所以需要配置 配置方法:

1、首先找到redis的配置文件

2、打开配置文件,直接搜logfile ""

3、将路径填入logfile后面的引号内,例如:logfile "/plus/data/redis_data/redislog/redis.log"

4、手动建立了/plus/data/redis_data/redislog文件夹,日志文件不用建,重启redis会自动生成

上一篇:The Eclipse executable launcher was unable to locate its companion launcher jar的解决方法


下一篇:redis连接错误