我了解Redis AOF和RDB持久性选项,并且已经阅读了文档(可能还不够透彻)。我想问的是:有没有可能用Redis消除数据丢失的可能性?
将appendfsync设置为always似乎是最接近的解决方案。然而,在用"OK“响应客户端并将数据持久化到磁盘之前,Redis仍然存在崩溃的可能性。客户端将无法知道数据已丢失,这将导致不一致。
就我而言,一个让Redis在fsync之后响应的选项应该可以解决这个问题(或者可能是一个额外的WAITFSYNC命令)。这有可能吗?
发布于 2021-01-15 16:48:13
我认为目前最安全的选择是在你的redis配置中添加appendonly yes。如果您使用的是1.1版或更高版本。
其中appendfsync always是最慢的。如果您对此没有意见,那么请确保您可以使用它。但是,如果您关心数据库的性能,请使用appendfsync everysec。
仅附加文件是Redis的一种完全持久的策略。每次Redis接收到更改数据集(例如SET)的命令时,它都会将其附加到AOF。当您重启Redis时,它将重新播放AOF以重建状态。
https://stackoverflow.com/questions/65732779
复制相似问题