1、问题描述: sys_alert_log表中有几千万条历史数据,用delete删除剩余4万条。
即使用 select count(*) from sys_alert_log 查询也要3秒
2、原因:sys_alert_log表的空间变大,导致查询效率特别的慢
3、解决方案:对sys_alert_log表进行表空间压缩和索引重建
(1)压缩表空间语句: alter table sys_alert_log move
(2)重建索引语句:alter index PK_SYS_ALERT_LOG rebuild
4、压缩后查询 select count(*) from sys_alert_log 变成0.2秒