Ubuntu
Innodb 統計
我們
InnoDB
作為 MySQL 引擎執行並使用 phpMyadmin 來管理我們的數據庫。在Status
→下Query statistics
,phpMyadmin 為我們提供以下資訊:我們想知道這些數據來自哪裡,因為我們想創建一個
Munin
圖表來顯示這些統計數據隨時間的演變。當我們在
SHOW STATUS;
這裡執行查詢時,我們得到的是:Innodb_rows_deleted 247555 Innodb_rows_inserted 822911 Innodb_rows_read 694934413 Innodb_rows_updated 15048
正如您所看到的,儘管兩者幾乎同時服用,但存在很大差異。
問:你知道
phpMyadmin
它的價值從何而來嗎?
如前所述
RolandoMySQLDBA
,首先要記住的是和之間的區別SHOW GLOBAL STATUS
(SHOW STATUS
請參閱文件)。關於 顯示的值phpMyadmin
,它們是從原始碼確認的Com_*
變數中獲得的:server_status.php
$sql = "SELECT concat('Com_', variable_name), variable_value FROM data_dictionary.GLOBAL_STATEMENTS [...] // For the percentage column, use Questions - Connections, because // the number of connections is not an item of the Query types // but is included in Questions. Then the total of the percentages is 100. $name = str_replace(array('Com_', '_'), array('', ' '), $name);
比較後,似乎
phpMyAdmin
顯示的是正確的值(即匹配MySQL
報告的內容)。
請注意關於顯示狀態的 MySQL 文件
看看這些數字,phpmyadmin 一定在使用
SHOW GLOBAL STATUS;
,因為它會顯示 MySQL 啟動時的統計資訊。當您使用
SHOW STATUS;
時,這會帶回會話級別的統計資訊,當數據庫連接終止時這些統計資訊會變得很糟糕。