mysql优化之(定位到需要优化的sql语句)

是周期性的变化还是偶尔问题?

是服务器整体性能的问题, 还是某单条语句的问题?

具体到单条语句, 这条语句是在等待上花的时间,还是查询上花的时间.

监测并观察服务器的状态.

1:观察服务器状态, 一般用如下2个命令,Show status;  Show processlist;

2:也可以通过druid对数据库监控进行观察

3:也可以通过记录慢查询日志观察

 

最好的优化:

不查询>表结构不合理>sql语句效率低>硬件

我们一般注重的是sql语句效率低。

 

Show processlist;

这个命令是显示当前所有连接的工作状态.

如果观察到以下状态,则需要注意

converting HEAP to MyISAM 查询结果太大时,把结果放在磁盘 (语句写的不好,取数据太多)

create tmp table             创建临时表(如group时储存中间结果,说明索引建的不好)

Copying to tmp table on disk   把内存临时表复制到磁盘 (索引不好,表字段选的不好)

locked         被其他查询锁住 (一般在使用事务时易发生,互联网应用不常发生)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值