如何监控数据库事务?

时间:2011-04-06 12:56:25

标签: java mysql sql transactions

我已经为工资单系统编写了一个web应用程序,可以对mysql数据库进行(插入,更新,删除)。

我想知道

mysql数据库中发生了多少次事务? 在start_time和end_time期间mysql数据库中发生了多少事务?

2 个答案:

答案 0 :(得分:4)

MySQL有命令计数器。可以使用SHOW GLOBAL STATUS LIKE "COM\_%"查看它们。每次执行命令都会增加与之关联的计数器。与交易相关的计数器为Com_beginCom_commitCom_rollback。此外,Uptime是自服务器启动以来的秒数。读取和绘制这些值或它们的delta会产生您要求的信息。

还有Com_insertCom_updateCom_delete及其变体的计数器。您可能也想要绘制这些图表。

答案 1 :(得分:2)

不确定这是您正在寻找的答案我听说以下JDBC记录器对于跟踪应用程序对数据库的操作非常有用。它应该显示您的应用程序打开和提交事务的位置。然后,您应该能够编写一些脚本来处理日志以确定数量事务。

  

http://code.google.com/p/log4jdbc/

它基本上位于您的应用程序和真正的数据库驱动程序之间。您将一个log4jdbc前缀添加到JDBC URL。例如,如果您的普通jdbc网址是

jdbc:mysql://db.foo.com/webapplicationdb

然后你会把它改成:

jdbc:log4jdbc:mysql://db.foo.com/webapplicationdb