mysql学习------MySQL慢查询日志

时间:2022-03-25 11:24:12

一.什么是慢查询日志

1.当查询超过一定时间没有返回结果的时候,才会记录进慢查询日志

2.慢查询日志可以帮助dba找出执行效率缓慢的sql语句,为数据库的优化工作提供帮助

3.慢查询日志默认是不开启的,也没有必要一直开启

4.当需要进行采样分析时手工开启

二常用的慢查询日志相关参数

1.修改以下配置后,需要重启数据库服务使其生效

2.slow_query_log=on|off   #是否开启慢查询日志

3.slow_query_log_file=filename

指定慢查询日志保存路径及文件名,不设置则使用默认值,默认存放位置为数据库文件所在目录下,名次为hostname-slow.log

4.long_query_time=2

指定多少秒未返回结果的查询语句属于慢查询

5.long-queries-not-using-indexes

记录所有没有使用到索引的查询语句

6.min_examined_row_limit=1000

记录那些由于查找了多于1000次而引发的慢查询

7.log-slow-admin-statements

记录那些慢的optimize table,analyze table 和 alter table语句

8.log-slow-slave-statements

记录由slave导致的慢查询

三.不重启修改慢查询的配置

1.set @@global.slow_query_log=1

2.set @@global.long_query_time=3

3.其他参数可以通过以下命令查阅:

show variables like '%slow%';

四.常见的慢查询分析工具

1.mysqldumpslow(mysql自带工具)

例如:mysqldumpslow /var/lib/mysql/localhost-slow.log

2.mysqlsla

hackmysql.com出品的一款分析工具,可以在其网站上下载到,或者在系统提示符下

#wget http://hackmysql.com/scripts/mysqlsla

3.percona-toolkit中的pt-query-digest

安装脚本:yum install percona-toolkit

查看慢查询日志 例如:pt-query-digest /var/lib/mysql/localhost-slow.log

----------------------------------------------------------------------------------------------

percona所需要的依赖包(本机已经安装其相关的依赖包,所以直接yum安装即可)

percona-toolkit

perI-IO-Socket-SSL

perI-Net-LibIDN

perI-Net-SSLeay

五.删除慢查询日志

慢查询日志会不断的增长,因此往往仅仅在在做例如采样分析这样的特别工作时才开启,其他的时候则关闭,无用的慢查询日志要记得及时删除

mysql学习------MySQL慢查询日志的更多相关文章

  1. MySQL学习笔记十:日志管理

    1.错误日志文件 MySQL的错误日志文件记录错误信息,还会记录mysqld进程的关闭和启动的信息,但也不是什么错误信息都会记录,只记录mysqld进程运行过程中发生的关键性错误. 错误日志的启动,可 ...

  2. MySQL 5.7 启用查询日志

    MySQL版本:5.7 新版本的 my.ini 文件改动了,导致原先启用查询日志的方法不再适用 新版本的启用方法如下: 1. 修改 C:\ProgramData\MySQL\MySQL Server ...

  3. mysql中的慢查询日志

    首先我们看一下关于mysql中的日志,主要包含:错误日志.查询日志.慢查询日志.事务日志.二进制日志: 日志是mysql数据库的重要组成部分.日志文件中记录着mysql数据库运行期间发生的变化:也就是 ...

  4. MySQL数据库之慢查询日志

    一.开启慢查询日志 通过show global variables like '%slow%' #查看MySQL慢查询日志是否开启 [root@mysqlmaster01 ~]# mysql --lo ...

  5. MySQL学习-MySQL内置功能_索引与慢查询

    1.索引基础 1.1 介绍 (1.)为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂 ...

  6. MySQL优化之慢查询日志

    慢查询日志概述 所谓慢查询日志,就是用于记录MySQL中响应时间超过设定阈值的SQL语句,通过打开慢查询开关,MySQL会将大于阈值的SQL记录在日志中,以便于分析性能. 慢查询日志选项默认是关闭的, ...

  7. mysql数据库开启慢查询日志

    修改配置文件 在配置文件my.ini中加上下面两句话 log-slow-queries = C:\xampp\mysql_slow_query.log long_query_time=3 第一句使用来 ...

  8. mysql中开启慢查询日志

    开启慢查询日志,需要在配置文件my.ini中配置. long_query_time = 1 #设置慢查询时间,配置是下划线log-slow-queries = d:\mysql5\logs\mysql ...

  9. MySQl学习-——Mysql体系结构与Mysql存储引擎

    Mysql体系结构与Mysql存储引擎 Mysql体系结构 mysql体系结构图:

随机推荐

  1. nios II--实验3——led 100M硬件部分

    led_100M 硬件开发 新建原理图 参照实验二(led) QSys调用模块 参照实验二(led) 原理图添加IP模块 参照实验二(led),在调用PLL的时候需要修改系统和SDRAM的时钟频率为1 ...

  2. #ifdef 和 #if defined 的区别 -- 转

    #ifdef 和 #if defined 的区别在于,后者可以组成复杂的预编译条件,比如 #if defined (AAA) && defined (BBB) xxxxxxxxx #e ...

  3. 基于AngularJS的过滤与排序【转载】

    程序设计分析 首先,如果要是先查询过滤,就要使用到AngularJS中的 过滤器filter 了. 直接在表达式的后面使用管道命令符 | ,按照下面的写法就可以达到一个过滤的效果: {{ person ...

  4. Makefile学习总结

    Makefile用法分析     在linux开发中,应用程序的编译基本都采用GNU的make工具,而make搭配Makefile来实现工程代码的编译,在越是大型复杂的项目中,make的强悍之处越是明 ...

  5. FPGA调试技巧

    FPGA调试技巧 八月,一直在debug, 编译,查信号,几乎没机会,也没心思停留下来看点东西,静心思考,做点笔记.今天,在硬盘上翻到了保存已久,但一直没想起来读的一本手册.这是我初入职场,决定从硬件 ...

  6. 使用EF操作不同数据库(以SQLite为例)

    最近一直在和数据库作对. 从安卓平台上给了我个SQLite数据库,要求程序能够读取不同的文件.由于字段实在太多,不愿意直接使用原来直接读取datatable的方式来做,手动写映射太痛苦...于是想起来 ...

  7. iOS 结构化数据访问

    一.介绍 在存储大量数据时,除了最基本的打开文件,读取文件,存盘等这些没有明确管理机制的方式来存储数据外,iOS还提供了另外几种重要的数据存储方式.虽然这些方式最后还是将数据存储在文件中,但是iOS以 ...

  8. 复习:JSP基本的语法(JSP凝视 + JSP指令 + JSP脚本元素 + JSP动作元素)

    JSP原理: 1.    对于每个请求.jsp容器都会创建一个新的线程来处理它: 2.    Servlet容器载入jsp后转换成的servlet(.class文件)是常驻内存的,所以对应速度一般比較 ...

  9. socket编程时使用了inet_ntoa函数,存储到链表中的数据总是自动改变

    这和inet_ntoa的返回值有关系: 函数声明:char *inet_ntoa (struct in_addr); 返回点分十进制的字符串在静态内存中的指针. 所在头文件:<arpa/inet ...

  10. android--------AndroidStudio 关闭 Install Run

    前面讲热修复的时候说到了一个 AndroidStudio关闭Instant Run的问题 ,今天来简单的写一下. Android Studio 工具中是有很多好东西的,要全部的知道的话,还是要下点功夫 ...