MYSQL慢查询和日志实例讲解

 更新时间:2021年03月01日 16:15:50   作者:PHP开发社区  
这篇文章主要介绍了MYSQL慢查询和日志实例讲解,有对这方面感兴趣的同学可以研究学习下

一、简介

开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。

二、参数说明

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开启慢查询设置成功!

到此这篇关于MYSQL慢查询和日志实例讲解的文章就介绍到这了,更多相关MYSQL慢查询和日志内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • MySQL专用服务器自动配置参数的实现

    MySQL专用服务器自动配置参数的实现

    本文主要介绍了MySQL专用服务器自动配置参数的实现,MySQL8.0推出了专用数据库服务器自动配置参数,通过打开innodb_dedicated_server,下面就来详细的介绍一下,感兴趣的可以了解一下
    2024-09-09
  • MySQL内部临时表的具体使用

    MySQL内部临时表的具体使用

    MySQL临时表在很多场景中都会用到,比如用户自己创建的临时表用于保存临时数据,以及MySQL内部在执行复杂SQL时,需要借助临时表进行分组、排序、去重等操作,本文就来详细的介绍一下MySQL内部临时表
    2021-10-10
  • MySQL EXPLAIN输出列的详细解释

    MySQL EXPLAIN输出列的详细解释

    这篇文章主要给大家介绍了关于MySQL EXPLAIN输出列的详细解释,文中通过示例代码介绍的非常详细,对大家的学习或者使用mysql具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • MySQL索引的5种应用

    MySQL索引的5种应用

    本文主要介绍了MySQL索引的5种应用,包含聚集索引,唯一索引,非唯一(普通)索引,全文索引,组合索引等,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • MySQL定时备份数据库(全库备份)的实现

    MySQL定时备份数据库(全库备份)的实现

    本文主要介绍了MySQL定时备份数据库(全库备份)的实现,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • mySQL服务器连接,断开及cmd使用操作

    mySQL服务器连接,断开及cmd使用操作

    这篇文章主要介绍了mySQL服务器连接,断开及cmd使用操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • mysql去除重复数据只保留一条数据实例

    mysql去除重复数据只保留一条数据实例

    这篇文章主要给大家介绍了关于mysql去除重复数据只保留一条数据的相关资料,在使用MySQL时,有时需要查询出某个字段不重复的记录,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2023-08-08
  • MySQL 从全库备份中恢复指定的表和库示例

    MySQL 从全库备份中恢复指定的表和库示例

    这篇文章主要介绍了MySQL 从全库备份中恢复指定的表和库示例的相关资料,这里提供了相应的方法,来实现恢复指定的表和库数据,需要的朋友可以参考下
    2016-11-11
  • Navicat连接mysql报错1251错误的解决方法

    Navicat连接mysql报错1251错误的解决方法

    这篇文章主要为大家详细介绍了Navicat连接mysql报错1251错误的解决方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • 详解MySQL索引原理以及优化

    详解MySQL索引原理以及优化

    在本篇文章中小编给大家整理了关于MySQL索引原理以及优化的相关知识点以及实例代码,需要的朋友们参考下。
    2019-06-06

最新评论