Welcome 微信登录

首页 / 数据库 / MySQL / 一次诊断事务量突高的原因

收到监控短信,说更新和插入阀值报警,于是登陆mysql-moniter上查看,确实如此,如图:登陆mysql服务器上,通过binlog分析,17:05之前和之后的,看是哪个表更新较大。[root@XXX-02 logs]# mysqlbinlog --no-defaults --base64-output=decode-rows -v -v mysql-bin.053373 |more
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#120802 16:36:47 server id 4713306  end_log_pos 106     Start: binlog v 4, server v 5.1.43sp1-br38368-enterprise-gpl-pro-log c
reated 120802 16:36:47然后用这条命令分析,得出写操作频繁的表[root@XXX-02 logs]# mysqlbinlog --no-defaults --base64-output=decode-rows -v -v mysql-bin.053373 |awk "/###/{if($0~/UPDATE|INSERT|DELETE/)count[$2" "$NF]++}END{for(i in count)print i," ",count[i]}" | column -t | sort -k3nr | more
UPDATE  DB.Dynamic                133971
UPDATE  DB.User                   54834
UPDATE  DB.Quota                  24938
UPDATE  DB.OrderHistory           24482
UPDATE  DB.BOSSOperation          19767
UPDATE  DB.SmsCount               18235
UPDATE  DB.Buddy                  10919
INSERT  DB.Buddy_Log              10024=====================================================================接着查看17:05之后的binlog日志。[root@XXX-02 logs]# mysqlbinlog --no-defaults --base64-output=decode-rows -v -v mysql-bin.053375 |more
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#120802 17:10:54 server id 4713306  end_log_pos 106     Start: binlog v 4, server v 5.1.43sp1-br38368-enterprise-gpl-pro-log c
reated 120802 17:10:54
# at 106然后用这条命令分析,得出写操作频繁的表[root@XXX-02 logs]# mysqlbinlog --no-defaults --base64-output=decode-rows -v -v mysql-bin.053375 |awk "/###/{if($0~/UPDATE|INSERT|DELETE/)count[$2" "$NF]++}END{for(i in count)print i," ",count[i]}" | column -t | sort -k3nr
INSERT  DB.Buddy_Log              194160
INSERT  DB.Buddy                  192587
UPDATE  DB.Dynamic                62767
UPDATE  DB.User                   30103
UPDATE  DB.OrderHistory           12507
UPDATE  DB.Quota                  12318
UPDATE  DB.BOSSOperation          9892这样比较直观的显示出哪些表更新较多,然后找开发确认问题,是否是业务增长导致。MySQL 5.5.19/20同步一个BUGMySQL5.6 支持explain update相关资讯      MySQL基础 
  • MySQL因为区分大小写而引起找不到  (09/08/2012 20:12:21)
  • MySQL 执行计划解读  (09/07/2012 06:18:14)
  • MySQL审计插件安装使用说明文档--  (08/09/2012 08:57:10)
  • MySQL 版本选择  (09/07/2012 06:18:58)
  • MySQL Internal 笔记  (09/01/2012 16:34:19)
  • MySQL的“[Warning] Invalid (old?  (08/09/2012 08:55:01)
本文评论 查看全部评论 (0)
表情: 姓名: 字数