首页 > 数据库 > MySQL > 正文

MySQL中按时间获取慢日志信息的方法

2024-07-24 13:07:13
字体:
来源:转载
供稿:网友
这篇文章主要介绍了MySQL中按时间获取慢日志信息的方法,使用到了cutlogbytime这个工具,主要操作是设置时间戳,需要的朋友可以参考下
 

今天处理一个case: 数据库异常,连接数突增。
想着分析一下慢日志,可是一看慢日志都好几G了,而且是短日志格式,找到那个时间点相对比较难。于是写了一个脚本从慢日志按时间提取点日志。脚本:

https://github.com/wubx/mysql-binlog-statistic/blob/master/bin/cutlogbytime

使用方法:

复制代码代码如下:
cutlogbytime
#用于从慢日志用截取一个时间段的日志方便分析
./cutlogbytime /path/slowlogfile starttime endtime  > dstfile.log

时间需要写时戳
  1. mysql> select unix_timestamp('2013-04-05'); 
  2. +------------------------------+ 
  3. | unix_timestamp('2013-04-05') | 
  4. +------------------------------+ 
  5. | 1365091200 | 
  6. +------------------------------+ 
  7. 1 row in set (0.00 sec) 
  8.  
  9. mysql> select unix_timestamp('2013-04-06'); 
  10. +------------------------------+ 
  11. | unix_timestamp('2013-04-06') | 
  12. +------------------------------+ 
  13. | 1365177600 | 
  14. +------------------------------+ 
  15. 1 row in set (0.00 sec) 
  1. ./cutlogbytime /path/slowlogfile 1365091200 1365177600 > 20130405_slow.log 

这样得到一天的日志文件就小一点的也容易分析了。而且可以根据天的文件,在取一天的某个时间点的日志。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表