<pre name="code" class="html">if ( $#ARGV < 2 ){
print "please input like binglog-0001 '2013-07-01 00:00:00' '2013-07-02 00:00:00'!\n";
exit(-1);
}
$file= $ARGV[0];
$start_dt = $ARGV[1];
$end_dt = $ARGV[2];
@bin=`mysqlbinlog --start-datetime='$start_dt' --stop-datetime='$end_dt' $file`;
foreach (@bin){
$_ =~ s/`//g;
#\s+匹配一个或者多个空格
if ($_ =~/^update\s+(.*?)\s+/i)
{#print "\$1 is $1\n";
$act='update';
$table=$1;
$var=$act.-$table;
$hash1{$var}++;
} if ($_ =~/^delete\s+from\s+(.*?)\s+/i)
{#print "\$1 is $1\n";
$act='delete';
$table=$1;
$var=$act.-$table;
$hash2{$var}++;
} if ($_ =~/^insert\s+into\s+(.*?)\s+/i)
{#print "\$1 is $1\n";
$act='insert';
$table=$1;
$var=$act.-$table;
$hash3{$var}++;
} }; while(my($tj, $times) = each %hash1) {
print "$tj count(*) == $times\n";
}; while(my($tj, $times) = each %hash2) {
print "$tj count(*) == $times\n";
}; while(my($tj, $times) = each %hash3) { print "$tj count(*) == $times\n"; }; [root@zjzc01 binlog]# perl perl_binlog.pl mysql-bin.000086 '2016-08-26 00:00:00' '2016-08-27 00:00:00'
update-QRTZ_CRON_TRIGGERS count(*) == 59
update-QRTZ_FIRED_TRIGGERS count(*) == 59
update-ClientActionTrack count(*) == 19
update-QRTZ_TRIGGERS count(*) == 132
update-QRTZ_SCHEDULER_STATE count(*) == 323
delete-QRTZ_FIRED_TRIGGERS count(*) == 58
insert-ClientActionTrack( count(*) == 19
insert-QRTZ_FIRED_TRIGGERS count(*) == 55
												

perl binlog dml操作报告的更多相关文章

  1. 14.6.3 Grouping DML Operations with Transactions 组DML操作

    14.6.3 Grouping DML Operations with Transactions 组DML操作 默认情况下,连接到MySQL server 开始是以启动自动提交模式, 会自动提交每条S ...

  2. Vertica并发DML操作性能瓶颈的产生与优化(转)

    文章来源:中国联通网研院网优网管部IT技术研究团队 作者:陆昕 1. 引言 众所周知,MPP数据库以其分布式的超大存储能力以及列式的高速汇总能力,已经成为大数据分析比不可少的工具.Vertica就是这 ...

  3. salesforce 零基础开发入门学习(三)sObject简单介绍以及简单DML操作(SOQL)

    salesforce中对于数据库操作和JAVA等语言对于数据库操作是有一定区别的.salesforce中的数据库使用的是Force.com 平台的数据库,数据表一行数据可以理解成一个sObject变量 ...

  4. Sql Server之旅——第十站 看看DML操作对索引的影响

    我们都知道建索引是需要谨慎的,当只有利大于弊的时候才适合建,我们也知道建索引是需要维护成本的,这个维护也就在于DML操作了, 下面我们具体看看到底DML对索引都有哪些内幕.... 一:delete操作 ...

  5. Oracle DBLINK 抽数以及DDL、DML操作

    DB :  11.2.0.3.0 原库实例orcl:SQL> select instance_name from v$instance; INSTANCE_NAME--------------- ...

  6. 大批量DML操作应该注意什么?

    问:大批量DML操作应该注意什么? 答:大批量DML操作可能会撑爆undo表空间,导致数据库挂起.因此我们应该设置一个合适的undo表空间,或对DML操作的分批提交.

  7. PL/SQL“ ORA-14551: 无法在查询中执行 DML 操作”解决

    环境 Oracle 11.2.0 + SQL Plus 问题 根据以下要求编写函数:将scott.emp表中工资低于平均工资的职工工资加上200,并返回修改了工资的总人数.PL/SQL中有更新的操作, ...

  8. Oracle的闪回技术--闪回错误的DML操作

    提交DML操作后,该操作使用的还原段就可以被其它对象使用了,为了保证闪回操作时这些数据仍然被保存在还原段中,可能需要重新设置undo_retention参数,表示一个事务提交后,该事务的数据必须保存在 ...

  9. salesforce 零基础学习(六十四)页面初始化时实现DML操作

    有的时候我们往往会遇到此种类似的需求:用户在访问某个详细的记录时,需要记录一下什么时候哪个用户访问过此页面,也就是说进入此页面时,需要插入一条记录到表中,表有用户信息,record id,sObjec ...

随机推荐

  1. USB封包格式

    1.起始(SOP)封包 根集线器会在每1 ms时,送出SOF封包.这介于2个SOF封包之间的时间,即称为帧(frame).SOF封包虽是属于令牌封包的一种,但却具有独自的PID形态名称SOF.通常目标 ...

  2. Linux系统目录/bin /sbin /usr/bin /usr/sbin和/lib /usrlib的一些分析

    其实就是相当于转载了. /bin,/sbin,/usr/sbin,/usr/bin 目录 这些目录都是存放命令的,首先区别下/sbin和/bin: 从命令功能来看,/sbin 下的命令属于基本的系统命 ...

  3. Linux中查看是否是固态硬盘(SSD)

       最近在准备测试,需要看看哪些机器挂载的是ssd硬盘,Google了一圈看到了许多方法,但都云里雾里的,不知道怎么确定.ssd硬盘貌似使用的也是scsi接口,所以根据盘符的名称也是判断不出来的.最 ...

  4. ActionForward

    一.只有登录才能显示的页面 这是一个很平常的问题,在访问某些网页的时候,只有登录才可以访问,以此保证安全. 实现原理也很简单,就是将一个属性设置在session中.在访问的时候进行判断即可. 例:re ...

  5. &lt;源代码&gt;FTPclient追加方式上传自己定义信息

    实现功能:向FTPserver以追加方式上传自己定义信息(例程中为:2014-10-08 13:47:15 test.) 源代码下载(免积分):http://download.csdn.net/det ...

  6. Ubuntu配置和修改IP地址

    Ubuntu配置和修改IP地址 1.修改配置文件/etc/network/interfacesroot@ubuntu:~# sudo gedit /etc/network/interfaces 添加以 ...

  7. [jQuery] 自做 jQuery Plugin - Part 1

    有時候寫 jQuery 時,常會發現一些簡單的效果可以重複利用.只是每次用 Copy & Paste 大法似乎不是件好事,有沒有什麼方法可以讓我們把這些效果用到其他地方呢? 沒錯,就是用 jQ ...

  8. js 行列操作

    function insertRow() { var tbl = document.getElementById("tbCarModel"); var rowLen = tbl.c ...

  9. select count(distinct a)

    我想对一个表里面字段a的个数进行进行统计,因为字段a有重复的记录,我想排除重复的记录,该sql语句为: select count(distinct a) 链接:http://www.w3school. ...

  10. WCF如何在浏览器访问

    1.新建wcf服务看到有如下两个方法,在浏览器调用框中的方法.