隐式转换导致的cpu负载近100%
作者:互联网
1.背景:从昨天晚上通过钉钉和邮箱一直接收到频繁报cpu负载超过90%,刚好BI同事晚上、凌晨在线上配合审计频繁DML数据库(备注:BI有一个同事有个库的DML权限,后面等审计完会收回)加上我线上线下在做定时同步和以前这种事也有发生,就没有当回事。
今天早上一来巡检,就发现了异常。
2.以下大量语句频繁,发现是另外一个库(另一个业务,并发量比较大),不是1的原因。
explain分析,发现没有走索引 type:ALL
执行时间都是7秒以上。
3.desc table结构,发现ad_id这个字段是我来之前开发定义的varchar(20),
看到这里无语,这个表关联抖音及引流下单表,是以前开发弄的,建议这里弄成bigint替代varchar(20),开发暂时说不用转换
看到这里,就知道原因了,因为ad_id被开发定义了varchar(20),但sql ad_id后是int类型,发生了隐式转换。
`ad_id` = '1733062082364420'程序中修改完,cpu负载立马下来。
标签:负载,varchar,ad,100%,cpu,隐式,20,id 来源: https://www.cnblogs.com/chinaops/p/16362281.html