redis无法进行读写

问题描述

远程访问reids显示无法链接,通过服务器本地登录,可以进入界面,但是无法进行读写操作,报错信息如下:

(error) MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.

查找原因

查看reids错误日志:
2473:M 22 Feb 10:14:20.075 * 1 changes in 900 seconds. Saving…
2473:M 22 Feb 10:14:20.076 # Can’t save in background: fork: Cannot allocate memory

查询文件得知是因为在存储数据时,redis进行硬盘读写时出的错

我查询了下硬盘的存储,只用了百分之五,所以不是硬盘的问题。
然后查看内存的问题,发现4G的内存,已经用了3.5G了,只空闲300M

解决问题

  1. 首先用存储方式变更解决问题,这是网上查到的大部分文章使用的方法,就是关闭数据存储时关于快照的存储:
config set stop-writes-on-bgsave-error no

问题是,关闭了快照的存储,数据出现问题后,恢复困难。

  1. 其次是增加内存,彻底解决问题

备注

关于stop-writes-on-bgsave-error参数的描述:

#默认情况下,如果 redis 最后一次的后台保存失败,redis 将停止接受写操作,
#这样以一种强硬的方式让用户知道数据不能正确的持久化到磁盘,
#否则就会没人注意到灾难的发生。
#如果后台保存进程重新启动工作了,redis 也将自动的允许写操作。
#然而你要是安装了靠谱的监控,你可能不希望 redis 这样做,那你就改成 no 好了。
stop-writes-on-bgsave-error yes

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Michael·Ren

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值