mysql--慢查询

        上篇博客已经列举了我们经常要用到的查询mysql状态的命令,当我们查看数据库状态一切正常时,此时某些查询还是很慢,我们就需要去找到这些慢查询,下面先了解什么是慢查询。


慢查询:

          分析mysql语句性能的方法,可以让mysql记录下查询超过指定时间的语句,我们将超过指定时间的sql语句查询称为“慢查询”。指定时间指运行时间超过long_query_time值得SQL,long_query_time的默认值是10,意思是运行10s以上的语句。默认情况下mysql数据库不启动慢查询日志,需要我们手动来开启。如果不是调优需要的话,一般不建议启动慢查询日志,其或多或少会带了一定的性能影响。


慢查询相关参数:

1)slow_query_log  :是否开启慢查询日志,1表示开启,0表示关闭。

2)long_query_time : 慢查询阈值,当查询事件超过设定的时间,记录日志。


开启慢查询:

一、windows下实现:

      1)打开命令窗口,进入mysql的server安装路径

         

      2)设置慢查询时间为1s

          set long_query_time = 1;

      3)获取慢查询条数

          show status like 'slow_queries';

      4)设置将慢查询sql记录日志中

           先关闭mysql,再以安全模式启动(这个模式mysql不建议使用,我们测试先用这个模式启动)

           bin\mysqld.exe - -safe-mode  - -slow-query-log

      5)mysql默认会将日志文件记录在my.ini文件中记录的位置,如果找不到,用下面的命令

           show global variables like "%datadir%";

           

     6)查看日志记录

           

           

# Time: 170617 17:54:49
# User@Host: root[root] @ localhost [::1]  Id:     1
# Query_time: 1.560115  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
use temp;
SET timestamp=1497693289;
select sleep(1.56);

          




               

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 57
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 57
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值