zoukankan      html  css  js  c++  java
  • mysql慢查询

    慢查询

    mysql慢查询,全名是慢查询日志,是mysql提供的一种日志记录,用来记录在mysql中响应时间超过指定时间的语句

    参数

    slow_query_log 慢查询开启状态,1表示开启,0表示关闭
    long_query_time 慢查询指定时间,当查询时间多于这个值时,记录日志
    slow_query_log_file 慢查询日志存放的路径

    设置

    查看慢查询相关参数

    show variables like 'slow_query%,默认情况下是OFF

    show variables like 'long_query_time,查询超过1s就记录

    全局变量设置

    这种设置方法只对当前数据库有效,mysql重启后则会失效
    将slow_query_log全局变量设置为ON状态
    set global slow_query_log='ON';
    设置慢查询日志存放的位置
    set global slow_query_log_file='/opt/mysql/mysqllog/logfile/slow-query.log';
    超过1s就记录
    set global long_query_time=1;

    配置文件设置

    要永久生效,就要修改配置文件my.cnf

    cd /etc
    vim my.cnf
    
    [mysqld]
    #打开慢查询:1表示打开
    slow_query_log=1
    #慢查询的日志保存路径--自定义的
    slow_query_log_file=/opt/mysql/mysqllog/logfile/slow-query.log
    #慢查询的时间,只要达到这个时间,就会在日志里打印
    long_query_time=1
    


    然后重启mysql服务service mysqld restart

    测试

    执行一条慢查询sql语句
    select sleep(2)

    查看是否生成慢查询日志
    tail -f /opt/mysql/mysqllog/logfile/slow-query.log

    参考文章

    《MySQL慢查询—开启慢查询》
    《mysql慢查询》

  • 相关阅读:
    浅谈HashMap的内部实现
    浅谈Java的集合体系
    如何通过注解Bean类来封装SQL插入语句
    谈一谈垃圾回收器
    万物皆对象
    关于枚举
    Servlet向客户端发送中文数据的编码情况
    "流"派家族,一脉相承
    个人简历用HTML编写
    get和post的区别
  • 原文地址:https://www.cnblogs.com/my_captain/p/12832704.html
Copyright © 2011-2022 走看看