网站编辑模版,小程序制作流程及步骤,长春公司网站模板建站,有没有专门做教育培训的网站深入mysql慢查询设置的详解在web开发中#xff0c;我们经常会写出一些SQL语句#xff0c;一条糟糕的SQL语句可能让你的整个程序都非常慢#xff0c;超过10秒一般用户就会选择关闭网页#xff0c;如何优化SQL语句将那些运行时间 比较长的SQL语句找出呢#xff1f;MySQL给我… 深入mysql慢查询设置的详解在web开发中我们经常会写出一些SQL语句一条糟糕的SQL语句可能让你的整个程序都非常慢超过10秒一般用户就会选择关闭网页如何优化SQL语句将那些运行时间 比较长的SQL语句找出呢MySQL给我们提供了一个很好的功能那就是慢查询所谓的慢查询就是通过设置来记录超过一定时间的SQL语句那么如何应用慢查询呢1.开启MySQL的慢查询日志功能默认情况下MySQL是不会记录超过一定执行时间的SQL语句的。要开启这个功能我们需要修改MySQL的配置文件windows下修改my.ini,Linux下修改my.cnf文件,在[mysqld]最后增加如下命令slow_query_loglong_query_time 12.测试慢查询日志功能(1)进入MySql控制台执行如下语句:select sleep(2);mysql select sleep(2);----------| sleep(2) |----------| 0 |----------1 row in set (2.12 sec)(2)查看慢查询日志文件think-slow.log在文件最后发现# Time: 121120 20:06:23# UserHost: root[root] localhost [127.0.0.1]# Query_time: 2.104120 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0SET timestamp1353413183;select sleep(2);3.解释(1)slow_query_log 这句是开启记录mysql 慢查询功能slow_query_log0关闭slow_query_log1开启这个1可以不写 (2)long_query_time 1 这句是记录超过1秒的SQL执行语句(3)那么这个日志文件存放在什么地方呢默认是放在mysql的data目录并且文件名为host_name-slow.log即 主机名-slow.log,比如在笔者的开发机上就是THINK-slow.log(因为偶用的Thinkpad呵呵)(4)如果日志文件不想放在data目录我们可以通过如下配置指定存放的目录及日志文件名slow_query_log_filefile_name其中file_name就是你的存放日志的目录和文件名在这里注意有的资料上可能是log-slow-queriesfile_name,这个在mysql5.5版已经过时4.如何记录低于1s的慢查询记录呢MySQL5.21版以前long_query_time 参数的单位是秒默认值是10。这相当于说最低只能记录执行时间超过 1 秒的查询怎么记录查询时间超过100毫秒的SQL语句记录呢在mysql5.21后版本支持毫秒记录(1)进入MySql控制台运行如下sql语句set global long_query_time0.1该句是设置记录慢查询超过时间100ms的SQL记住要重启mysql才能生效(2)测试进入mysql控制台执行如下sql语句select sleep(0.5);查看慢查询日志文件看到最后添加的新信息# Time: 121120 20:42:06# UserHost: root[root] localhost [127.0.0.1]# Query_time: 0.500028 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0SET timestamp1353415326;select sleep(0.5);更多有关mysql慢查询的内容请参考有关 mysql 慢查询日志mysql开启慢查询实例演练(图文)mysql开启慢查询日志的方法MySQL 5.1.6以上版本动态开启慢查询日志的方法mysql 慢查询的原因分析点滴学习开启mysql慢查询与分析查询语句mysql开启慢查询以检查查询慢的语句出处http://www.cnblogs.com/cfinder010/p/3434778.html 转载于:https://blog.51cto.com/frankch/1759125