mysql优化(添加索引)

博客指出一台虚拟机CPU使用率高,平常超50%,定时任务时达100%。经分析,是MySQL数据库表未使用索引,大量SQL语句运行慢且耗CPU。解决方案是为表字段添加索引,添加后CPU使用率下降,还给出删除索引和查看表字段结构的命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述:

最近有一台虚拟机CPU运行很高,平常超过50%,到有定时任务时,达到100%。
下图为CPU使用率 cpu utilization
CPU


原因分析:

进入到MySQL数据库,
使用查询命令:show processlist;
可以看到此时有很多sql语句正在运行,而且耗时主要集中显示 sending data 。
很有可能是词表没有使用索引,大量的sql语句运行慢且一直消耗cpu 。
进入数据库,查询此表的索引:show index from table_name;
看到结果果然是没有索引


解决方案:

为表的字段添加索引:
create index sss on table_name(zzz_name);
sss为自己随意起的索引名称,zzz_name为要添加的索引字段名称,table_name就是数据表
再次查看表中索引情况:
show index from table_name;
可以看到现在有两个索引了,一个是自带的ID一个是自己刚添加的索引sss
此时看一下cpu使用率 cpu utilization
立马就降了下来
在这里插入图片描述

另外删除索引命令:
ALTER TABLE table_name DROP INDEX sss;
查看表的字段结构情况:
DESC table_name;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值