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优化 慢查询的定位及优化的主要内容,如果未能解决你的问题,请参考以下文章