mysql的慢查询
① 首先我们了解mysql数据库的一些运行状态如何查询(比如想知道当前mysql运行的时间/一共执行了多少次select/update/delete.. / 当前连接)
show status
常用的:
show status like ‘uptime’ ;
show stauts like ‘com_select’ showstauts like ‘com_insert’ ...类推 update delete
☞ show [session|global] status like .... 如果你不写 [session|global] 默认是session 会话,指取出当前窗口的执行,如果你想看所有(从mysql 启动到现在,则应该 global)
show status like ‘connections’;
//显示慢查询次数
show status like ‘slow_queries’;
② 如何去定位慢查询
2.1 修改mysql的慢查询.
show variables like 'long_query_time'; //可以显示当前慢查询时间,默认是10秒,查询结果如下图
2.2set long_query_time=0.5 ;//可以修改慢查询时间,然后再使用show variables like 'long_query_time';查询可知道修改成功了,如下图
2.3 我的数据里有有张emp表这里我查询一下语句,用时为0.84秒大于我们前面设置的0.5秒,然后到我们Mysql的my.ini文件查看数据存放的位置,依次如下图
3.4 来到这个文件下,我们看到查询慢日志
3.5 ,打开这个文件,看到已经记录下了这条慢查询