MySQL优化 慢查询的定位及优化

Posted 风止雨歇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL优化 慢查询的定位及优化相关的知识,希望对你有一定的参考价值。

一、SQL语句优化的一般步骤:

(1)通过 show status 命令了解各种 SQL 的执行效率;

(2)定位执行效率较低的 SQL 语句(重点是 Select);

(3)通过 explain 分析低效率的 SQL 语句的执行情况;

(4)确实问题并采取相应的优化措施;

二、

1、show status 命令

 格式: show [session | global] status like ... 

   如果不写[session | global],默认的是session,即取出当前回话的执行情况;

 如果想查询所有的(即mysql启动到现在的信息), 则增加 global 参数;

show status like "uptime"  //查询MySql启动的时间;
show status like "com_select" //查询MySql的查询次数
show status like "com_insert" //查询MySql的插入次数
show status like "com_update" //查询MySql的更新次数
show status like "com_delete" //查询MySql的删除次数 
show global status like "uptime"  //查询MySql启动的时间;
show global status like "com_select" //查询MySql的查询次数
show global status like "com_insert" //查询MySql的插入次数
show global status like "com_update" //查询MySql的更新次数
show global status like "com_delete" //查询MySql的删除次数 
show global status like "connections" //查询MySQL的连接数
show global status like "slow_queries" //获取慢查询的次数

 

2、如何定位慢查询?

默认情况下,MySql认为超过 10 秒才是一个慢查询;

显示当前慢查询设置的时间:show variables like "long_query_time" ;

修改慢查询的设置时间为1秒:set long_query_time=1

 



以上是关于MySQL优化 慢查询的定位及优化的主要内容,如果未能解决你的问题,请参考以下文章

数据库优化——慢查询MySQL定位优化流程

数据库优化——慢查询MySQL定位优化流程

mysql性能优化-慢查询分析优化索引和配置

mysql性能优化-慢查询分析优化索引和配置

mysql性能优化-慢查询分析优化索引和配置

MySQL索引及查询优化总结