某个业务系统被告知需要在3.5上线,因为该系统已经试运行了很久,感觉还是很硬气的,基本上不应该出纰漏。
后来被告知偶尔数据库服务器的CPU飙高,但是等我去看的时候就过去了,然后还是觉得无所谓。
一直到今天,在飙高的瞬间,我刚好在线,于是用我的神器紧急抓了SQL,然后就顺序抓住了低效的SQL:
select count(*)
from AAAA a left join BBBB b
on a.userid=b.userid
where 1=1 and a.iseffect='1' and (a.recordtype='5' or a.recordtype='6' or a.recordtype='8' )
我一跑,如此简单的SQL居然1分钟跑不过去。
发现两个表的数据类型对不上,索引也没有。
于是联系业务厂家,业务厂家在第一时间就反馈给我了真实情况,前段时间做了数据迁移,表结构和数据迁移过来了,但是索引忘了迁移。
扫描二维码关注公众号,回复:
12927761 查看本文章
数据类型的问题没有解释,不知道为什么。。。。。
看来还是“临时工”的问题啊
和谐社会,“临时工”是一个或缺的存在~~~~~~~~~~~~~~~~~~~~~~~~~~