binlog 日志格式:

use `zjzc`/*!*/;
SET TIMESTAMP=1476326343/*!*/;
UPDATE `ProductAccess` pa SET pa.accessType =1 WHERE pa.productSn IN( SET TIMESTAMP=1476326807/*!*/;
update ClientActionTrack set SET TIMESTAMP=1476327571/*!*/;
UPDATE `zjzc`.`scan` SET `sn`='200' WHERE `sn`='100' [root@zjzc01 binlog]# cat binlog.pl
if ( $#ARGV < 2 ){
print "please input file update|insert table_namee!\n";
exit(-1); };
my $a=$ARGV[0];
my $b=$ARGV[1];
my $c=$ARGV[2];
local $/='/*!*/;';
open (A,"<","$a");
while (<A>){
if (( $_ =~/$b\s+$c/i ) or ($_ =~/$b\s+`$c`/i) ){
print $_;
};
}; [root@zjzc01 binlog]# perl binlog.pl aa UPDATE scan
[root@zjzc01 binlog]#
[root@zjzc01 binlog]# /*!*/;[root@zjzc01 binlog]# cat binlog.pl
if ( $#ARGV < 2 ){
print "please input file update|insert table_namee!\n";
exit(-1); };
my $a=$ARGV[0];
my $b=$ARGV[1];
my $c=$ARGV[2];
local $/='/*!*/;';
open (A,"<","$a");
while (<A>){
if (( $_ =~/$b\s+$c/i ) or ($_ =~/$b\s+`$c`/i) or ($_ =~/$b\s+`zjzc`.`$c`/i) ){
print $_;
};
}; [root@zjzc01 binlog]# perl binlog.pl aa UPDATE scan UPDATE `zjzc`.`scan` SET `sn`='200' WHERE `sn`='100' [root@zjzc01 binlog]# perl binlog.pl aa UPDATE scan UPDATE `zjzc`.`scan` SET `sn`='200' WHERE `sn`='100'
/*!*/;
UPDATE `scan` SET `sn`='300' WHERE `sn`='200' [root@zjzc01 binlog]# perl binlog.pl aa UPDATE scan UPDATE `zjzc`.`scan` SET `sn`='200' WHERE `sn`='100'
/*!*/;
UPDATE `scan` SET `sn`='300' WHERE `sn`='200'
/*!*/;
UPDATE scan SET `sn`='400' WHERE `sn`='300' /*!*/;[root@zjzc01 binlog]# cat binlog.pl
if ( $#ARGV < 2 ){
print "please input file update|insert table_namee!\n";
exit(-1); };
my $a=$ARGV[0];
my $b=$ARGV[1];
my $c=$ARGV[2];
local $/='/*!*/;';
open (A,"<","$a");
while (<A>){
if (( $_ =~/$b\s+$c/i ) or ($_ =~/$b\s+`$c`/i) or ($_ =~/$b\s+`zjzc`.`$c`/i) or ($_ =~/$b\s+zjzc.$c/i )){
print $_;
};
}; [root@zjzc01 binlog]# perl binlog.pl aa UPDATE scan UPDATE `zjzc`.`scan` SET `sn`='200' WHERE `sn`='100'
/*!*/;
UPDATE `scan` SET `sn`='300' WHERE `sn`='200'
/*!*/;
UPDATE scan SET `sn`='400' WHERE `sn`='300'
/*!*/;
UPDATE zjzc.scan SET `sn`='500' WHERE `sn`='400' /*!*/;[root@zjzc01 binlog]# cat binlog.pl
if ( $#ARGV < 2 ){
print "please input file update|insert table_namee!\n";
exit(-1); };
my $a=$ARGV[0];
my $b=$ARGV[1];
my $c=$ARGV[2];
local $/='/*!*/;';
open (A,"<","$a");
while (<A>){
if (( $_ =~/$b\s+$c/i ) or ($_ =~/$b\s+`$c`/i) or ($_ =~/$b\s+`zjzc`.`$c`/i) or ($_ =~/$b\s+zjzc.$c/i )){
print $_;
};
};

perl 分析mysql binlog的更多相关文章

  1. 使用python 模仿mybinlog 命令 二进制分析mysql binlog

    出处:黑洞中的奇点 的博客 http://www.cnblogs.com/kelvin19840813/ 您的支持是对博主最大的鼓励,感谢您的认真阅读.本文版权归作者所有,欢迎转载,但请保留该声明. ...

  2. python写的分析mysql binlog日志工具

    因为数据库增删改突然暴增,需要查询是那些表的操作特别频繁,写了一个用来分析bin-log的小工具,找出增删改查的表,并按照操作次数降序排列,以下是代码: 1 2 3 4 5 6 7 8 9 10 11 ...

  3. 腾讯工程师带你深入解析 MySQL binlog

    欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 本文由 腾讯云数据库内核团队 发布在云+社区 1.概述 binlog是Mysql sever层维护的一种二进制日志,与innodb引擎中的red ...

  4. Mysql Binlog 三种格式介绍及分析

    一.Mysql Binlog格式介绍       Mysql binlog日志有三种格式,分别为Statement,MiXED,以及ROW! 1.Statement:每一条会修改数据的sql都会记录在 ...

  5. 基于binlog来分析mysql的行记录修改情况(python脚本分析)

          最近写完mysql flashback,突然发现还有有这种使用场景:有些情况下,可能会统计在某个时间段内,MySQL修改了多少数据量?发生了多少事务?主要是哪些表格发生变动?变动的数量是怎 ...

  6. Mysql Binlog三种格式介绍及分析【转】

    一.Mysql Binlog格式介绍       Mysql binlog日志有三种格式,分别为Statement,MiXED,以及ROW! 1.Statement:每一条会修改数据的sql都会记录在 ...

  7. MySQL Binlog三种格式介绍及分析

    Mysql binlog日志有三种格式,分别为Statement,MiXED,以及ROW! 1.Statement:每一条会修改数据的sql都会记录在binlog中. 优点:不需要记录每一行的变化,减 ...

  8. MySQL Binlog Mixed模式记录成Row格式

    背景: 一个简单的主从结构,主的binlog format是Mixed模式,在执行一条简单的导入语句时,通过mysqlbinlog导出发现记录的Binlog全部变成了Row的格式(明明设置的是Mixe ...

  9. Mysql Binlog日志详解

    一.Mysql Binlog格式介绍       Mysql binlog日志有三种格式,分别为Statement,MiXED,以及ROW! 1.Statement:每一条会修改数据的sql都会记录在 ...

随机推荐

  1. Thrift初用小结

    thrift --gen  csharp  search.thrift thrift --gen java search.thrift Thrift是facebook的一个技术核心框架,07年四月开放 ...

  2. Swift 算法实战之路:基本语法与技巧

    Swift是苹果新推出的编程语言,也是苹果首个开源语言.相比于原来的Objective-C,Swift要更轻便和灵活.笔者最近使用Swift实践了大量的算法(绝大部分是硅谷各大公司的面试题),将心得体 ...

  3. Android(java)学习笔记237:多媒体之图形的变化处理

    1.图形的缩放 (1)布局文件activity_main.xml如下: <LinearLayout xmlns:android="http://schemas.android.com/ ...

  4. POJ 3162 Walking Race(树的直径+单调队列)

    题目大意:对一棵树,求出从每个结点出发能到走的最长距离(每个结点最多只能经过一次),将这些距离按排成一个数组得到dis[1],dis[2],dis[3]……dis[n] ,在数列的dis中求一个最长的 ...

  5. Centos6.3 配置yum 163源

    1. 下载repo文件    下载地址:http://mirrors.163.com/.help/CentOS6-Base-163.repo 2. 备份并替换系统的repo文件[root@localh ...

  6. hash练习

    /* poj 1200 Crazy Search 字符串hash O(n)枚举起点 然后O(1)查询子串hash值 然后O(n)找不一样的个数 复杂度是线性的 */ #include<iostr ...

  7. 自签名SSL生成

    本教程以AppServ生成自签名证书为例,同时配置OpenSSL环境1.生成自签名证书,控制台程序进入Apache目录下的bin目录 >openssl req -config ../conf/o ...

  8. C#中创建线程,创建带参数的线程

    线程操作主要用到Thread类,他是定义在System.Threading.dll下.使用时需要添加这一个引用.该类提供给我们四个重载的构造函 构造函数定义: 无参数委托 [SecuritySafeC ...

  9. xls和xlsx

      xls XLS 就是 Microsoft Excel 工作表,是一种非常常用的电子表格格式.xls文件可以使用Microsoft Excel打开,另外微软为那些没有安装Excel的用户开发了专门的 ...

  10. 安装php时,make步骤报错make: *** [ext/gd/gd.lo] Error 1

    安装PHP时,make步骤报错make: *** [ext/gd/gd.lo] Error 1 /usr/local/src/LAMP+memcahed+catci/php-5.4.0/ext/gd/ ...