error:MISCONF Redis is configured to save RDB snapshots
一、背景
在使用redis异步驱动方式下,执行hset指令时,报错
redisAsyncCommand((redisAsyncContext *)c, dumpReply, "hset role:10001", "hset role:10001 name %s age %d sex %s", "mark", 31, "male");
二、原因
2.1 、磁盘空间不足:Redis 所在的磁盘可能没有足够的空间来保存 RDB 快照。
2.2、文件系统权限问题:Redis 进程可能没有权限写入指定的目录。
2.3、磁盘故障:硬盘可能出现故障,导致写入操作失败。
2.4、Redis 配置问题(大概率都是配置有问题)
三、解决方案
目前我排查下来,其他都没问题,只有配置这项了。
3.1、第一种方案,只有该次有效
config set stop-writes-on-bgsave-error no
3.2 、第二种方案,长期生效
修改redis.conf文件,将set stop-writes-on-bgsave-error修改为no
然后关掉redis服务,重新启动redis服务。