停止服务时Redis数据丢失

时间:2015-04-09 11:52:29

标签: python flask redis

我有这个使用Redis进行数据管理的python(Flask)平台。 https://github.com/murphyt7/projectHandover/blob/master/app.py

问题是当我重新启动app.py时,所有信息都会丢失。我听说在此之前运行BGSAVE命令可以解决问题,但问题是服务重启是不可预测的。

有没有办法以持久的方式自动保存数据?

2 个答案:

答案 0 :(得分:2)

除非你强行杀死redis,否则你的数据不应该消失。然而,这......

第27行:

postRedisDB.flushall()

FLUSHALL

  

删除所有现有数据库的所有密钥,而不仅仅是   目前选择了一个。这个命令永远不会失败。

答案 1 :(得分:1)

通过代码

在执行申请之前或之后,不要刷新数据库内容。

postRedisDB.flushall()

通过Redis

此外,将您的设置配置为通过RDB或AOF(或两者)保留,这样您就可以确保即使在生产模式下也不会丢失数据

  

RDB:Redis数据库(快照)
  AOF:仅附加文件(操作日志)

有关Redis持久性的更多信息,请单击此处:http://redis.io/topics/persistence