MySQL慢查询之开启慢查询

 更新时间:2017年03月07日 11:25:15   作者:成九  
开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。下面这篇文章主要介绍了关于MySQL开启慢查询的相关资料,需要的朋友可以参考下。

一、慢查询有什么用?

它能记录下所有执行超过long_query_time时间的SQL语句, 帮你找到执行慢的SQL, 方便我们对这些SQL进行优化.

二、参数说明

slow_query_log 慢查询开启状态

slow_query_log_file 慢查询日志存放的位置(这个目录需要MySQL的运行帐号的可写权限,一般设置为MySQL的数据存放目录)

long_query_time 查询超过多少秒才记录

三、设置步骤

1、查看慢查询相关参数

mysql> show variables like 'slow_query%';
+---------------------------+----------------------------------+
| Variable_name  | Value    |
+---------------------------+----------------------------------+
| slow_query_log  | OFF    |
| slow_query_log_file | /mysql/data/localhost-slow.log |
+---------------------------+----------------------------------+

mysql> show variables like 'long_query_time';
+-----------------+-----------+
| Variable_name | Value |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+

2、设置方法

方法一:全局变量设置

slow_query_log 全局变量设置为“ON”状态

mysql> set global slow_query_log='ON'; 

设置慢查询日志存放的位置

mysql> set global slow_query_log_file='/usr/local/mysql/data/slow.log';

查询超过1秒就记录

mysql> set global long_query_time=1;

方法二:配置文件设置

修改配置文件my.cnf,在[mysqld]下的下方加入

[mysqld]
slow_query_log = ON
slow_query_log_file = /usr/local/mysql/data/slow.log
long_query_time = 1

3、重启MySQL服务

service mysqld restart

4、查看设置后的参数

mysql> show variables like 'slow_query%';
+---------------------+--------------------------------+
| Variable_name | Value    |
+---------------------+--------------------------------+
| slow_query_log | ON    |
| slow_query_log_file | /usr/local/mysql/data/slow.log |
+---------------------+--------------------------------+

mysql> show variables like 'long_query_time';
+-----------------+----------+
| Variable_name | Value |
+-----------------+----------+
| long_query_time | 1.000000 |
+-----------------+----------+

四、测试

1、执行一条慢查询SQL语句

mysql> select sleep(2);

2、查看是否生成慢查询日志

ls /usr/local/mysql/data/slow.log

如果日志存在,MySQL开启慢查询设置成功!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • sqoop export导出 map100% reduce0% 卡住的多种原因及解决

    sqoop export导出 map100% reduce0% 卡住的多种原因及解决

    这篇文章主要介绍了sqoop export导出 map100% reduce0% 卡住的多种原因及解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • MySQL:reading initial communication packet问题解决方法

    MySQL:reading initial communication packet问题解决方法

    网站访问出现如题错误,经过检查my.cnf,发现innodb_buffer_pool_size = 2048M 设置过大,调整为innodb_buffer_pool_size = 1024M即可,网上也有该问题的其他解决方法,但都不能解决我的问题
    2012-07-07
  • MySQL多版本并发控制mvcc原理浅析

    MySQL多版本并发控制mvcc原理浅析

    mvcc多版本并发控制是一种数据库的并发控制机制,本文主要介绍了MySQL多版本并发控制mvcc原理浅析,具有一定的参考价值,感兴趣的可以了解一下
    2024-07-07
  • MySQL删除数据1093错误

    MySQL删除数据1093错误

    在进行更新和删除操作的时候,条件语句里面有子查询语句,此时会报1093错误,本文就来介绍一下1093错误的解决,感兴趣的可以了解一下
    2024-02-02
  • SQL语句中OR和AND的混合使用的小技巧

    SQL语句中OR和AND的混合使用的小技巧

    在SQL语句中我们可能会经常混合使用到OR和AND,其中可能会出现一些小问题,下面小编来讲一讲它的使用技巧
    2019-05-05
  • Mysql视图和触发器使用过程

    Mysql视图和触发器使用过程

    这篇文章主要介绍了MySql视图与触发器使用过程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2022-12-12
  • MySQL中的自定义函数(CREATE FUNCTION)

    MySQL中的自定义函数(CREATE FUNCTION)

    这篇文章主要介绍了MySQL中的自定义函数(CREATE FUNCTION),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • mysql 8.0.15 winx64解压版安装配置方法图文教程

    mysql 8.0.15 winx64解压版安装配置方法图文教程

    这篇文章主要为大家详细介绍了mysql 8.0.15 winx64解压版安装配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-02-02
  • MySQL常见内置函数以及其使用教程

    MySQL常见内置函数以及其使用教程

    MySQL数据库中提供了很丰富的函数,MySQL函数包括数学函数、字符串函数、日期和时间函数、条件判断函数、系统信息函数、加密函数、格式化函数等,下面这篇文章主要给大家介绍了关于MySQL常见内置函数以及其使用的相关资料,需要的朋友可以参考下
    2022-12-12
  • Mysql中Join的使用实例详解

    Mysql中Join的使用实例详解

    本章节我们将向大家介绍如何使用MySQL 的 JOIN 在两个或多个表中查询数据。对mysql中的join感兴趣的朋友一起学习吧
    2017-04-04

最新评论