redis持久化错误

在redis中使用hash去保存对象的时候爆出错误:

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.

究其原因是因为强制把redis快照关闭了导致不能持久化的问题,在网上查了一些相关解决方案,通过stop-writes-on-bgsave-error值设置为no即可避免这种问题。

有两种修改方法,一种是通过redis命令行修改,另一种是直接修改redis.conf配置文件

命令行修改方式示例:

127.0.0.1:6379> config set stop-writes-on-bgsave-error no

修改redis.conf文件:vi打开redis-server配置的redis.conf文件,然后使用快捷匹配模式:/stop-writes-on-bgsave-error定位到stop-writes-on-bgsave-error字符串所在位置,接着把后面的yes设置为no即可。
--------------------- 
作者:Fanrncho 
来源:CSDN 
原文:https://blog.csdn.net/qq_31766907/article/details/78715935 
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Redis提供了两种持久化机制,RDB和AOF。 RDB持久化是将当前Redis的数据快照保存到硬盘上的一个二进制文件中。可以通过配置redis.conf文件中的save选项来设置自动触发RDB持久化的条件,也可以通过执行`SAVE`命令手动触发RDB持久化。此外,还可以使用`BGSAVE`命令在后台异步进行RDB持久化操作。 AOF持久化是将Redis的操作日志以追加的方式写入到一个文件中。可以通过配置redis.conf文件中的appendonly选项来启用AOF持久化,同时还可以通过设置appendfsync选项来控制AOF文件的同步策略,以确保数据的安全性和持久性。 在redis.conf配置文件中,可以通过以下选项来配置Redis持久化机制: - `save <seconds> <changes>`:设置在指定的时间内,如果指定数量的键被修改,则自动触发RDB持久化。 - `stop-writes-on-bgsave-error <yes/no>`:如果在执行BGSAVE命令时发生错误,是否继续接受写入操作。 - `rdbcompression <yes/no>`:是否对RDB文件进行压缩。 - `rdbchecksum <yes/no>`:是否对RDB文件进行校验和计算。 - `dir <directory>`:指定RDB和AOF文件存储的目录。 - `appendonly <yes/no>`:是否启用AOF持久化。 - `appendfilename <filename>`:指定AOF文件的文件名。 - `appendfsync <always/everysec/no>`:设置AOF文件的同步策略。 如果想要同时启用RDB和AOF持久化,可以将`save ""`配置为一个空字符串。这样Redis会禁用自动触发RDB持久化,并将所有的写入操作同时写入到RDB和AOF文件中。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值