zoukankan      html  css  js  c++  java
  • perl 分析mysql binlog

    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!
    ";  
            exit(-1);  
    
                   }; 
    my $a=$ARGV[0];
    my $b=$ARGV[1];
    my $c=$ARGV[2];
    local $/='/*!*/;';
    open (A,"<","$a");
         while (<A>){
          if  (( $_ =~/$bs+$c/i ) or ($_ =~/$bs+`$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!
    ";  
            exit(-1);  
    
                   }; 
    my $a=$ARGV[0];
    my $b=$ARGV[1];
    my $c=$ARGV[2];
    local $/='/*!*/;';
    open (A,"<","$a");
         while (<A>){
          if  (( $_ =~/$bs+$c/i ) or ($_ =~/$bs+`$c`/i) or ($_ =~/$bs+`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!
    ";  
            exit(-1);  
    
                   }; 
    my $a=$ARGV[0];
    my $b=$ARGV[1];
    my $c=$ARGV[2];
    local $/='/*!*/;';
    open (A,"<","$a");
         while (<A>){
          if  (( $_ =~/$bs+$c/i ) or ($_ =~/$bs+`$c`/i) or ($_ =~/$bs+`zjzc`.`$c`/i) or ($_ =~/$bs+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!
    ";  
            exit(-1);  
    
                   }; 
    my $a=$ARGV[0];
    my $b=$ARGV[1];
    my $c=$ARGV[2];
    local $/='/*!*/;';
    open (A,"<","$a");
         while (<A>){
          if  (( $_ =~/$bs+$c/i ) or ($_ =~/$bs+`$c`/i) or ($_ =~/$bs+`zjzc`.`$c`/i) or ($_ =~/$bs+zjzc.$c/i )){
          print $_;
            };
          };

  • 相关阅读:
    读书笔记:C++ Primer系列(10)—— 数组与指针(2)
    读书笔记:C++ Primer系列(9)—— 数组与指针(1)
    牛人博客
    读书笔记:C++ Primer系列(8)—— 标准库类型之bitset
    读书笔记:C++ Primer系列(7)—— 标准库类型之iterator
    读书笔记:C++ Primer系列(6)—— 标准库类型之vector
    读书笔记:C++ Primer系列(5)—— 标准库类型之string
    读书笔记:C++ Primer系列(4)—— 关于const限定符
    读书笔记:C++ Primer系列(3)—— 关于变量
    黑色半透明镂空遮罩指引效果实现jQuery小插件
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13350177.html
Copyright © 2011-2022 走看看