Redis重启后数据不丢失确保数据安全(redis重启不清除数据)

2023-05-13 17:45:45 数据 重启 不清

Redis作为当下比较流行的NoSQL数据库,具备良好的性能和持久性。在使用Redis的过程中,有时候我们会发现,当Redis重启后,存储的数据会丢失,这样,就会严重影响我们的应用性能,我们如何才能保证在重启Redis之后,数据不会丢失,又要求效率高呢?

但是,我们可以通过设置Redis服务器参数,来保证在Redis重启之后,数据不会丢失。具体来说:

在Redis.conf文件中找到如下设置,将其设置为“yes”:

# save  
# The default is:
#
save 900 1
save 300 10

这个设置表示:当更改数据的次数达到10次,或者900秒的时间内没有更改数据,就会自动将缓存中的数据保存到磁盘上。

另外,可以在Redis.conf文件中找到如下设置,将其设置为“always”:

# appendonly yes/no
#
# Append-only file is used to drastically reduce the overheads from
# a RDB save or an AOF rewrite.
appendonly yes

这个设置表示:让Redis将每一次更新数据操作保存到appendonly.aof文件中,这样,可以确保Redis重启之后,这些更新操作都不会丢失。

我们还可以在Redis.conf文件中勾选“auto-aof-rewrite-percentage”参数:

# auto-aof-rewrite-percentage 100
#
# When SDR or AOF is enabled and the AOF file size is greater than
# auto-aof-rewrite-percentage % of the Redis data set size, Redis will
# operate a full rewrite of the AOF file in the background when there
# is a good ratio between used memory and free memory.

这个设置表示:当Redis缓存数据大于磁盘中存储数据的总量时,Redis将自动启用重建AOF文件机制,将缓存中的数据持久化保存到磁盘中,从而使得Redis重启后数据不会丢失。

通过以上设置,可以保证在Redis重启之后,数据不会丢失,并且,确保数据的安全和可靠性,避免出现潜在的业务问题。

相关文章