Server
首页
Server
Android
iOS
Harmony
PC
Web
Flutter
Uniapp
Openclaw
交流
搜索
登录
Server
auto_clean_history_messages开的情况下,是多久会清除一次配置的n天前数据
auto_clean_history_messages开的情况下,是多久会清除一次配置的n天前数据
1445295683
3月前
422
每日凌晨吗还是怎样一个频率 如果消息记录历史存储太多 一次清太多会不会占很大的内存;
最新回复
(
19
)
HeavyRain
3月前
引用
2
楼
一直一个频繁,大概5分钟清一次,部分占内存
1445295683
14天前
引用
3
楼
之前一直配置的30天,运营一段时间后改成了7天,那5分钟一次的清除任务会清除之前7天前的t_messages_*跟t_user_messages_*表数据吗
wfclaw
14天前
引用
4
楼
是的,5分钟一次的清理任务会清除7天前的历史消息数据。
wfclaw
14天前
引用
5
楼
**清理逻辑说明:**
wfclaw
14天前
引用
6
楼
当 `auto_clean_history_messages` 开启时,服务端会启动一个定时清理任务,每隔5分钟执行一次。每次执行时,会根据 `history_messages_keep_days` 配置的值(你当前配置的是7天)来删除超出保留期限的消息。
wfclaw
14天前
引用
7
楼
**具体清理范围:**
wfclaw
14天前
引用
8
楼
- 会清理 `t_messages_*` 和 `t_user_messages_*` 表中超过7天的消息数据
wfclaw
14天前
引用
9
楼
- 清理是分批进行的,采用分页删除策略,避免一次性删除大量数据造成数据库压力
wfclaw
14天前
引用
10
楼
**注意事项:**
wfclaw
14天前
引用
11
楼
从30天改为7天后:
wfclaw
14天前
引用
12
楼
- 下一次清理任务执行时,会开始清理7天前的数据(即之前保留的8-30天的数据也会被逐步清理)
wfclaw
14天前
引用
13
楼
- 这个过程是逐步完成的,不会一次性全部删除
wfclaw
14天前
引用
14
楼
- 建议修改配置前确认是否需要先备份重要历史消息
wfclaw
14天前
引用
15
楼
**验证方式:**
wfclaw
14天前
引用
16
楼
可以通过查看数据库中 `t_messages_*` 表的数据量变化,或者观察服务端日志中是否有清理相关的输出来确认清理是否生效。
wfclaw
14天前
引用
17
楼
是的,5分钟一次的清理任务会清除7天前的历史消息数据。
当 auto_clean_history_messages 开启时,服务端会启动一个定时清理任务,每隔5分钟执行一次。每次执行时,会根据 history_messages_keep_days 配置的值(你当前配置的是7天)来删除超出保留期限的消息。
具体清理范围:
- 会清理 t_messages_* 和 t_user_messages_* 表中超过7天的消息数据
- 清理是分批进行的,采用分页删除策略,避免一次性删除大量数据造成数据库压力
注意事项:
从30天改为7天后:
- 下一次清理任务执行时,会开始清理7天前的数据(即之前保留的8-30天的数据也会被逐步清理)
- 这个过程是逐步完成的,不会一次性全部删除
- 建议修改配置前确认是否需要先备份重要历史消息
验证方式:
可以通过查看数据库中 t_messages_* 表的数据量变化,或者观察服务端日志中是否有清理相关的输出来确认清理是否生效。
1445295683
14天前
引用
18
楼
了解,目前数据量比较大 观察了大概半小时,看数据库文件(部署的linux服务器,im数据存储位置:/www/server/data/wfchat)并没变小 反正正常在增加。问下可以有地方查看清除数据日志记录吗,或者大数据情况下,每次执行大概能清理多少数据
wfclaw
14天前
引用
19
楼
数据库文件大小没有明显变化是正常的,原因如下:
1. 数据库文件空间回收机制
- MySQL 等数据库删除数据后,磁盘文件不会立即收缩
- 被删除的空间会标记为可重用,后续新数据会填充这些空间
- 查看实际数据量变化应通过查询表记录数,而非文件大小
2. 查看表数据量变化
```sql
-- 查看消息表大致记录数
SELECT COUNT(*) FROM t_messages_0;
-- 或查看多个分表的总记录数
```
3. 日志查看位置
- 清理任务的日志通常输出到服务端标准日志
- 如果部署的是标准服务,可查看日志文件或容器输出
- 日志中搜索 "clean" 或 "history" 相关关键字
4. 大数据量清理速度
- 采用分页批量删除,每次清理一小批(通常几百到几千条)
- 具体数量取决于系统配置和数据库性能
- 对于大数据量,首次清理可能需要较长时间,会在多个5分钟周期内逐步完成
建议通过监控表记录数变化来确认清理效果,而不是看文件大小。
HeavyRain
14天前
引用
20
楼
可以查看一下 t_user_messages_0 表里最早一条记录的时间,是不是指定时间之内的记录
返回
1445295683
创作新主题
搜索