`
AllenHU0320
  • 浏览: 82785 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

MySQL分析慢查询日志

阅读更多

分析慢查询日志:

默认会将执行时间超过10秒的SQL语句记录在慢查询日志中

使用mysqldumpslow命令,MySQL自带的工具,不大常用

[mysql@mysql1 ~]$ mysqldumpslow -s c -t 1 /data/mysqldata/3306/slow_query.log

-s t:按照总的查询时间排序

-s at:按照平均查询时间排序

-s l:按照总的锁定时间排序

-s al:按照平均的锁定时间排序

-s s:按照总的记录行数排序

-s as:按照平均的记录行数排序

-s c:按照语句执行的次数排序,默认排序方式

-r:按照排序规则倒序输出

-t:用来控制输出的sql语句的数量

 

使用mysqlsla命令,第三方分析工具

[root@mysql1 ~]# perl -MCPAN -e shell

cpan 1 >install Time::HiRes

cpan 2 >install File::Temp

cpan 3 >install Data::Dumper

cpan 4 >install DBI

cpan 5 >install Getopt::Long

cpan 6 >install Storable

cpan 7 >install Term::ReadKey

编译安装

[root@mysql1 /]# tar xvfz mysqlsla-2.03.tar.gz

[root@mysql1 /]# cd mysqlsla-2.03

[root@mysql1 /]# perl Makefile.PL

[root@mysql1 /]# make

[root@mysql1 /]# make && make install

[root@mysql1 /]# mysqlsla -lt slow [slowlogfilepath] > [resultfilepath]

[root@mysql1 /]# mysqlsla -lt slow --top 50 /data/mysqldata/3306/slow_query.log

支持不同格式的日志

slow:慢查询日志

general:普通查询日志

binary:二进制日志,需要通过mysqlbinlog命令处理

 

使MySQL实例中的slowlog文件每日自动归档,而后调用mysqlsla命令对归档的慢查询日志文件进行分析,并将分析后的文件自动发送至DBA邮箱

[root@mysql1 scripts]# more mysql_slowlog_file_archive.sh

#Created by allen

#Init environment variables

LOG_FILEPATH=/data/mysqldata/logs

LOG_FILENAME=${LOG_FILEPATH}/slow-n.log.`date +%F`

LOG_ANALYZE=${LOG_FILEPATH}/slow-ana.log.`date +%F`

SLOWLOG_FILENAME=/data/mysqldata/3306/slow_query.log

#Do the Job!

/bin/cp -f ${SLOWLOG_FILENAME} ${LOG_FILENAME}

/bin/echo "" > ${SLOWLOG_FILENAME}

/usr/bin/mysqlsla -lt slow ${LOG_FILENAME} --top 100 -Ai 1000 > ${LOG_ANALYZE}

/bin/cat ${LOG_ANALYZE} | iconv -f utf-8 -t gb18030 | mail -s "[`date +%F`] MySQL SlowLogs From 3306" allenhu320@sina.com

#Delete slowlog history

/usr/bin/find ${LOG_FILEPATH} -mtime +7 -exec rm {} \;

 

 

 

 

 

分享到:
评论

相关推荐

    MySQL优化篇:慢查询日志.pdf

    主要介绍MySQL数据库中慢查询日志的使用流程、使用方式、以及日志分析工具mysqldumpslow的相关内容

    mysql 开启慢查询 如何打开mysql的慢查询日志记录

    mysql慢查询日志对于跟踪有问题的查询非常有用,可以分析出当前程序里有很耗费资源的sql语句,那如何打开mysql的慢查询日志记录呢?其实打开mysql的慢查询日志很简单,只需要在mysql的配置文件里(windows系统是my.ini,...

    慢查询日志分析工具说明

    mysql的slow_query_log慢查询日志分析工具说明,主要用来进行慢查询日志的linux平台分析输出结果文档进行MySQL的调优/优化数据库

    关于Mysql通用查询日志和慢查询日志分析

    MySQL中的日志包括:错误日志、二进制日志、通用查询日志、慢查询日志等等。这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志。 1、通用查询日志:记录建立的客户端连接和执行的语句。 2、慢查询日志:...

    mysql 慢查询页面工具

    mysql 慢查询页面工具 页面化分析慢日志

    mysql慢日志分析工具mysqlsla

    内涵 mysqlsla-2.03.tar.tar 包 mysqlsla之linux安装及使用.docx man_mysqlsla.txt

    MySQL慢查询日志.docx

    MySQL 有一种日志,叫做慢查询日志,主要就是用来记录一些耗时的查询操 作。通过这个日志我们就可以分析出哪些的操作是影响性能的,我们需要对其 进行一些优化措施。

    MySQL慢查询日志的配置与使用教程

    慢查询日志用于记录一些过慢的查询语句,可以帮助管理员分析问题所在,下面这篇文章主要给大家介绍了关于MySQL慢查询日志的配置与使用教程,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。

    五种MySql日志分析工具比拼

    五种MySql日志分析工具比拼,可以帮助你对mysql进行优化,分析

    详解MySql的慢查询分析及开启慢查询日志

    接下来教大家如何开启MySQL5.0版本以上的慢查询日志记录; OK,一起开始找出mysql中执行起来不“爽”的SQL语句吧。 首先,我们通过mysql命令进入mysql命令行中: [root@yunuo_vm ~]# mysql -u root -p Enter ...

    利用MYSQLDUMPSLOW进行慢日志分析

    mysqldumpslow是一个用Perl脚本写的转存储慢日志查询程序。在慢日志文件比较大的时候,用文件查看命令去分析MYSQL慢日志文件,看起来就会比较费劲,也不能快速的统计出需要优化的SQL语句。 使用mysqldumpslow就可以...

    MySQL日志分析(包括工具)

    介绍MySQL数据库的一套日志纪录文件,可分为4种日志——错误日志、二进制日志、查询日志和慢查询日志。 以及4种日志的作用

    MySQL的慢查询与常见的查找方法(顺序查找,二分查找)

    目录: ...2、分析慢查询日志 直接分析mysql慢查询日志 ,利用explain关键字可以模拟优化器执行SQL查询语句,来分析sql慢查询语句 例如:执行EXPLAIN SELECT * FROM res_user ORDER BYmodifiedtime L

    MySQL开启慢查询日志功能的方法

    mysql慢查询日志对于跟踪有问题的查询非常有用,可以分析出当前程序里是否有很耗费资源的sql语句,这是一个有用的日志。它对于性能的影响不大(假设所有查询都很快),并且强调了那些最需要注意的查询(丢失了索引或...

    mysql-slow-log-import-to-elasticsearch:将mysql慢查询日志导入elasticsearch进行分析

    mysql-slow-log-import-to-elasticsearch 将mysql慢查询日志导入elasticsearch进行分析 它按锡说的做

    MySQL慢查询优化之慢查询日志分析的实例教程

    主要介绍了MySQL慢查询日志分析的实例教程,通过设置参数从慢查询日志开始分析性能问题的原因,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics