<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. [转载] 50个Android开发人员必备UI效果源码

    好东西,多学习! Android 仿微信之主页面实现篇Android 仿微信之界面导航篇Android 高仿QQ 好友分组列表Android 高仿QQ 界面滑动效果Android 高仿QQ 登陆界面A ...

  2. QTableView使用HTML显示富文本

    对于QTableView中的显示,我们前面介绍过很多种,其中包括:文本.进度条.复选框等,今天我们介绍一下关于富文本的显示. 可能绝大多数小伙伴会通过QAbstractTableModel中的data ...

  3. Socket 编程示例(二)

    利用晚上这点闲暇时间,写了一个Socket通信的小实例,该实例包含服务器端和客户端.其基本工作流程是:当服务器启动服务以后,客户端进行连接,如果连接成功,则用户可以在发送消息框中输入待发送的消息,然后 ...

  4. C# sql Helper

    using System; using System.Collections; using System.Collections.Generic; using System.Configuration ...

  5. Android ListView中带有时间数据的排序

    下面是activity: public class MainActivity extends Activity { private ListView mListView = null; private ...

  6. 多线程并发 synchronized对象锁的控制与优化

    本文针对用户取款时多线程并发情境,进行相关多线程控制与优化的描述. 首先建立用户类UserTest.业务操作类SynchronizedTest.数据存取类DataStore,多线程测试类MultiTh ...

  7. Unix命令行学习

    Listing files and directories ls 显示你当前目录的文件 ls -a 显示你千亩目录的文件(包括隐藏文件)ls <name1>/<name2> 显 ...

  8. Nginx日志文件配置与切割

    Nginx日志的指令主要有两条: log_format,设置日志的格式 access_log,指定日志文件的存放路径.格式和缓存大小 两条指令在Nginx配置文件中的位置可以在http{……..}之间 ...

  9. Vanya and Scales(思维)

    Vanya and Scales time limit per test 1 second memory limit per test 256 megabytes input standard inp ...

  10. 使用SOAPUI测试WEBAPI接口

    其实很简单,用起来也挺方便的. 首先,先去百度下SoapUI 下载,下载安装好后,打开软件. 1.新建一个项目 点击 Create Empty Project 按钮后,会自动新建一个项目,名字默认为: ...