我寫了一個可以對mysql數據庫執行(插入,更新,刪除)的工資系統的web應用程序。如何監控數據庫事務?
我想知道
多少交易在mysql數據庫發生了什麼?
start_time和end_time期間在mysql數據庫中發生了多少事務?
我寫了一個可以對mysql數據庫執行(插入,更新,刪除)的工資系統的web應用程序。如何監控數據庫事務?
我想知道
多少交易在mysql數據庫發生了什麼?
start_time和end_time期間在mysql數據庫中發生了多少事務?
MySQL有命令計數器。他們可以看到SHOW GLOBAL STATUS LIKE "COM\_%"
。每次執行一個命令都會增加與之關聯的計數器。交易相關的計數器是Com_begin
,Com_commit
和Com_rollback
。另外Uptime
是自服務器啓動以來的秒數。讀取和繪製這些值或它們的增量可以得出您要求的信息。
也有針對Com_insert
,Com_update
,Com_delete
及其變體的計數器。你可能也想繪製這些圖。
謝謝@Isotopp你的解決方案很簡單,正是我所期待的。 [mysql - documentation](http://dev.mysql.com/doc/refman/5.5/en/show-status.html)顯示狀態,如'com_select'; – Nandha 2011-04-07 05:24:54
不確定這是你正在尋找你的答案我聽說下面的JDBC記錄器對於跟蹤應用程序對數據庫做什麼非常有用。它應該顯示您的應用程序在哪裏打開並提交事務。然後您應該能夠編寫一些腳本來處理日誌以確定數量事務。
它的應用程序和真正數據庫驅動程序之間基本上坐。您將一個log4jdbc前綴添加到您的JDBC URL。例如,如果你的正常JDBC URL是
jdbc:mysql://db.foo.com/webapplicationdb
那麼你將其更改爲:
jdbc:log4jdbc:mysql://db.foo.com/webapplicationdb
是不是有沒有MySQL日誌文件? – evotopid 2011-04-06 12:58:49