默认ISIM会记录审计日志,并且导致数据库ENROLE_DATA和ENROLE_INDEXED表空间快速增长到数百G。
在REORG时,发现这个ISIMUSER.AUDIT_EVENT表花的时间特别多。
查了一下,发现居然有2800多万条记录。
执行SQL删除不仅很慢,而且很快会导致事务日志写满!
官方推荐的步骤是用这个DB_Purge程序;
步骤,ssh连接上im:
1.输入im回车
2.输入utilities回车
3.输入db_purge回车
4.输入execute回车
5.选择1.age (按天数) 输入365回车(仅保留最近365天的审计日志)
6.显示高级选项
1: grouping 分组(1-100,默认:50)
单批删除多少条记录
2: workflow 流程数据(默认开启)
3: process_type 流程类型
例如’AP’ 对应账号密码修改,’RC’对应协调数据。更多信息参考 “Database and Directory > Server Schema Reference > Database tables reference > Workflow tables > PROCESS table” TYPE 列的说明。
4: audit 审计数据(默认开启)
5: recon 协调报告(默认开启)
6: threads 清理线程数(1-8,默认4个线程)
7: continue(确认执行)
清理以后记录从2800万减少到了2200万条。