You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

2.0 KiB

数据清理指南

本指南说明如何使用数据清理脚本,定期删除过期的临时数据。

清理功能

  1. 自动清理15天前的未完成记录:删除超过15天且没有签名的临时记录
  2. 优化历史记录:对于每个sessionId,只保留最新的记录,删除更早的历史记录

使用方法

手动执行清理

在项目根目录下执行:

# 使用npm命令执行
npm run cleanup

# 或直接使用node命令执行
node cleanup.js

设置定时任务

Windows系统

  1. 打开任务计划程序
  2. 点击创建基本任务
  3. 设置任务名称(如"清理合格证过期数据")
  4. 设置触发器为每天每周
  5. 设置操作为启动程序
  6. 程序/脚本:node.exe
  7. 添加参数:cleanup.js
  8. 起始于:项目根目录(如D:\xt\hgzxx
  9. 完成向导并启用任务

Linux系统

使用cron定时任务:

# 编辑crontab
crontab -e

# 添加每天凌晨执行的任务
0 0 * * * cd /path/to/hgzxx && node cleanup.js >> cleanup.log 2>&1

macOS系统

使用launchd或cron:

# 使用cron
crontab -e

# 添加每天凌晨执行的任务
0 0 * * * cd /path/to/hgzxx && node cleanup.js >> cleanup.log 2>&1

清理效果

执行清理后,系统会:

  • 删除15天前的未完成记录(无签名)
  • 保留每个sessionId的最新记录,删除历史记录
  • 保持数据库的健康状态
  • 提高查询性能

注意事项

  1. 数据安全:清理操作是不可逆的,请确保理解清理逻辑后再执行
  2. 执行时机:建议在系统低峰期执行清理操作
  3. 日志记录:执行结果会输出到控制台,建议配置日志文件以便查看
  4. 备份:定期对数据库进行备份,以防止意外情况

定制清理策略

如需调整清理策略,可修改cleanup.js文件中的以下参数:

  • 清理天数:修改INTERVAL 15 DAY中的数字
  • 清理条件:调整SQL语句中的条件判断
  • 保留策略:修改历史记录的保留逻辑