> 文章列表 > Redis持久化机制导致服务自启动后恢复数据过长无法使用以及如何关闭

Redis持久化机制导致服务自启动后恢复数据过长无法使用以及如何关闭

Redis持久化机制导致服务自启动后恢复数据过长无法使用以及如何关闭

场景

若依前后端分离版手把手教你本地搭建环境并运行项目:

若依前后端分离版手把手教你本地搭建环境并运行项目_霸道流氓气质的博客-CSDN博客

在上面搭建前后端分离的项目后,如果需要在windows服务上进行部署。

若依前后端分离版本,Windows下使用Nginx代理的方式进行部署(全流程,图文教程):

若依前后端分离版本,Windows下使用Nginx代理的方式进行部署(全流程,图文教程)_http://localhost:81/dev-api/_霸道流氓气质的博客-CSDN博客

系统部署后需要新建bat脚本,使服务自动启动。

示例bat内容

ping localhost -n 10cd /d D:\\fzys\\new\\Redis-x86-6.2.5
start windows_conf_6379.batping localhost -n 10start "fzys-show" /i  java -jar D:\\fzys\\server\\ruoyi-admin.jarping localhost -n 10cd /d D:\\fzys\\new\\nginx-1.20.1
start nginx.exe

以上bat先启动redis,然后10s后再启动jar包,最后10秒后再启动nginx。

注:

博客:
霸道流氓气质的博客_CSDN博客-C#,架构之路,SpringBoot领域博主

实现

1、当部署在服务器上,由于该服务器经常断电异常关机,重启后再次双击该脚本时

发现jar包一直起不来,原因是redis启动后一直提示aof....

这是因为redis设置的持久化机制,时间一长,持久化文件越来越大,异常停止再启动

后进行数据恢复时间过长无法在10秒内实现恢复,导致jar包无法连接redis服务。

2、首先要明确这里redis的应用场景不需要对数据进行持久化,redis只做内存数据缓存用。

当异常宕机重启后,redis中的数据可以不用恢复。

所以需要将持久化文件删除掉,并且关闭持久化机制。

这里的redis是在windows服务器上。

删除以rdb和aof结尾的备份文件。

修改redis的配置文件

搜索save,将

save 900 1

save 300 10

save 60 10000

这三个注释掉,并且放开save ""

 

 

然后再搜索

appendonly 修改为no ,关掉aof的持久化机制。