一个 Oracle 11g 上的 SELECT 语句,原来需要 1-2ms,现在需要 80-150ms 了

查看 18|回复 0
作者:liuzhedash   
琢磨了一上午没找到问题,线索如下:
1. SQL 本身很简单,where 条件就一个 id ,索引是加好了的
SELECT * FROM DRIVER WHERE id = '身份证号码'
explain plan 也看不出什么东西,已经是 index(unique scan)了,cost 都是个位数,也试了重建表统计
EXEC DBMS_STATS.gather_table_stats('DRIVER')
重建后几乎无变化
2. Oracle 所在服务器基本是空载的,32core 的服务器 load average 基本不超过 1.0
3. 这个 DRIVER 表会每 5 分钟和上游同步一次,大概几百条数据会删除然后重新插入
目前在试着清空表,重新导入数据。
请大家帮忙分析下,我还真是没招了。
您需要登录后才可以回帖 登录 | 立即注册

返回顶部