Mysql慢查询

MySQL默认情况下慢查询是未开启的。开启MySQL慢查询日志,让MySQL记录查询超过指定时间的SQL语句,定位分析性能瓶颈,可优化数据库系统性能或优化SQL语句。
  • 慢查询参数查询
    mysql> show variables like ‘slow_query%‘;
    +---------------------+----------------------------------------+
    | Variable_name       | Value                                  |
    +---------------------+----------------------------------------+
    | slow_query_log      | OFF                                    |
    | slow_query_log_file | /var/lib/mysql/test-mysql-slow.log |
    +---------------------+----------------------------------------+
    mysql> show variables like ‘long_query_time‘;
    +-----------------+-----------+
    | Variable_name   | Value     |
    +-----------------+-----------+
    | long_query_time | 10.000000 |
    +-----------------+-----------+

    参数:
    slow_query_log #慢查询开启状态
    slow_query_log_file #慢查询日志文件存储路径,需要MySQL的运行帐号的可写权限
    long_query_time #慢查询时长,超过设定的sql语句时长写入到慢查询文件中

  • 开启设置
    方法一、全局变量设置
    mysql> set global slow_query_log=‘ON‘;   #全局变量 slow_query_log 设置为 ON 开启
    mysql> set global slow_query_log_file=‘/var/lib/mysql/test-mysql-srv-slow.log‘;   #慢日志查询存储路径
    mysql> set global long_query_time = 30;   #设置超过的时长为慢查询SQL

    方法二、MySQL配置文件设置
    修改MySQL配置文件my.cnf,在[mysqld]下的下方加入

    slow_query_log = ON
    slow_query_log_file = /var/lib/mysql/test-mysql-srv-slow.log
    long_query_time = 30

    重启MySQL服务

    systemctl restart mysqld.service

Mysql慢查询

上一篇:SqlServer数据库查询,条件查询CASE *** WHEN *** THEN *** ELSE '其它' END


下一篇:[sql 注入] insert 报错注入与延时盲注