因为数据库增删改突然暴增,需要查询是那些表的操作特别频繁,写了一个用来分析bin-log的小工具,找出增删改查的表,并按照操作次数降序排列,以下是代码:#form
因为数据库增删改突然暴增,需要查询是那些表的操作特别频繁,写了一个用来分析bin-log的小工具,,找出增删改查的表,并按照操作次数降序排列,以下是代码:
#for mysql5.5 binlogimport os,sys#python binlog.py binglog-0001 ‘2013-07-01 00:00:00’ ‘2013-07-02 00:00:00’def log_w(type,text):logfile = “%s.txt” % (type,text)#now = time.strftime(“%Y-%m-%d %H:%M:%S”)tt = str(text) + “n”f = open(logfile,’a+’)f.write(tt)f.close()logname = sys.argv[1]start_time = sys.argv[2]end_time = sys.argv[3]comn = “/usr/bin/mysqlbinlog –start-datetime=’%s’ –stop-datetime=’%s’ %s” % (start_time,end_time,logname)aa=os.popen(comn).readlines()mylist=[]for a in aa:if (‘UPDATE’ in a):update = ‘ ‘.join(a.split()[:2])mylist.append(update)if (‘INSERT INTO’ in a):update = ‘ ‘.join(a.split()[:3]).replace(“INTO “,””)mylist.append(update)if (‘DELETE from’ in a):update = ‘ ‘.join(a.split()[:3]).replace(“from “,””)mylist.append(update)mylist.sort()bb = list(set(mylist))bb.sort()cc = []for item in bb:cc.append([mylist.count(item),(item)])cc.sort()cc.reverse()for i in cc:print str(i[0])+’t’+i[1]


执行结果如下:

本文出自 “王伟” 博客,请务必保留此出处
析稿Ai写作
科研人的高效工具:AI论文自动生成,十分钟万字,无限大纲规划写作思路。
97 查看详情 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/533489.html
微信扫一扫
支付宝扫一扫