這裏使用的是innotop-1.8.0,1.8版本的可以監測遠程服務器,而1.6版本不可以。
一. 安裝
INNOTOP是一個通過文本模式顯示MySQL和InnoDB的監測工具。它有很多特點,快速的配置的,易於使用等。它吸取了MYTOP的精華這使
它變得更加強大。INNOTOP是用PERL語言寫成的,這是它能更加靈活的使用在各種操作平臺之上,它能詳細的的監控出當前MYSQL和
INNODB運行的狀態,以便維護人員根據結果合理的優化MYSQL,讓MYSQL更穩定更高效的運行。
安裝INNOTOP工具非常的簡單,既然是由PERL寫的,當然需要PERL環境和相關的工具包。
在安裝之前先要確定你的系統安裝了Time::HiRes,Term::ReadKey,DBI,DBD::mysql這四個包。安裝可以把包下載下來通過編譯安裝完
成也可以用PERL模塊安裝方式來完成。
安裝Time::HiRes,Term::ReadKey,DBI,DBD::mysql庫文件
通過PERL模塊來安裝
[root@xoyo-test-43 innotop-1.8.0]# perl -MCPAN -eshell
CPAN> install Time::HiRes
CPAN> install Term::ReadKey
CPAN> install DBI
CPAN> install DBD::mysql
也可以通過源碼編輯安裝(略過)
下面安裝innotop-1.8
[root@xoyo-test-43 software]# wget http://innotop.googlecode.com/files/innotop-1.8.0.tar.gz
[root@xoyo-test-43 software]# tar xvzf innotop-1.8.0.tar.gz
[root@xoyo-test-43 software]# cd innotop-1.8.0
[root@xoyo-test-43 software]# perl Makefile.PL
[root@xoyo-test-43 software]# make
[root@xoyo-test-43 software]# make install
至此,innotop就安裝完畢,下面是使用說明
二.使用
innotop -u <username> -p <password> -h <hostname> -P <port>
交互式工具也就是在需要的時候啓動起來,以視圖顯示的形式不斷獲取服務器的最小狀態。
可獲取的內容:
1.顯示當前innodb的全部事務列表;
2.顯示當前正運行着的查詢;
3.顯示當前鎖和鎖等等的列表;
4.服務器狀態和變量的摘要信息 顯示了數值的相對變化幅度;
5.有多種模式可用來顯示Innodb 內部信息,如緩衝區、死鎖、外鍵錯誤、I/O情況、行操作、信號量等。
6.複製健康,將主機和從機的狀態顯示一起;
7.有一個顯示任意服務器變量的模式;
8.服務器組可以幫你更方便的組織多臺服務器;
9.在命令行腳本下可以使用非交互模式。
連接成功後 輸入?可以進入幫助:
括號中爲後加的註釋
Switch to a different mode:
B InnoDB Buffers I InnoDB I/O Info Q Query List
C Command Summary L Locks R InnoDB Row Ops
D InnoDB Deadlocks M Replication Status S Variables & Status
F InnoDB FK Err O Open Tables T InnoDB Txns
Actions:
a Toggle the innotop process(切換innotop進程) k Kill a query's connection(殺死一查詢的連接)
c Choose visible columns (可見列選擇) n Switch to the next connection(切換到下一個連接)
d Change refresh interval (更改刷新間隔) p Pause innotop (暫停innotop)
e Explain a thread's query (說明線程的查詢) q Quit innotop (退出)
f Show a thread's full query(顯示線程的完整查詢) r Reverse sort order (反向排序)
h Toggle the header on and off(頭切換和關閉) s Change the display's sort column(更改顯示的排序列)
i Toggle idle processes (切換空閒進程) x Kill a query (殺死一查詢)
Other:
TAB Switch to the next server group / Quickly filter what you see
! Show license and warranty = Toggle aggregation
# Select/create server groups @ Select/create server connections
$ Edit configuration settings \ Clear quick-filters
Switch to a different mode 詳解:
B InnoDB Buffers:
該模式顯示有關InnoDB緩衝池,頁面統計,插入緩衝,自適應哈希索引。這些數據來自展示InnoDB的狀態。
此模式默認包含buffer_pool,page_statistics,insert_buffers,和adaptive_hash_index表。
C Command Summary:
該命令是建立彙總表通過提取STATUS_VARIABLES變量。變量必須是數字,必須匹配給定的cmd_filter配置變量的前綴。百分比列是在表
中的所有變量總數的
百分比,所以你可以看到變數的相對比例。
默認的前綴是“Com_”。你可以選擇的's'鍵改變過濾前綴。
D InnoDB Deadlocks:
這種模式顯示,在過去InnoDB的死鎖中涉及的事務。第二個表顯示等待事務。
F InnoDB FK Err:
此模式顯示最後InnoDB的外鍵的錯誤信息,
I InnoDB I/O Info:
這種模式顯示InnoDB的I/O信息,包括I/O線程,掛起的I/O,文件I/O,日誌統計。默認顯示io_threads,pending_io,file_io_misc
,和log_statistics
L Locks:
這種模式顯示了當前鎖的信息。目前只支持InnoDB,並在默認情況下你只看到那些鎖等待的事務。
M Replication Status:
這種模式輸出了 SHOW SLAVE STATUS 和 SHOW MASTER STATUS 的信息成3張表,前兩個顯示從的sql和I/O的狀態,最後顯示主的狀態
O Open Tables:
這部分來自SHOW OPEN TABLES命令的輸出,默認情況下,篩選出正由一個或多個查詢使用的表,這樣可以快速得到哪些表是'熱'。也可
以猜測哪些表可能被
鎖。
Q Query List:
此模式顯示從SHOW FULL PROCESSLIST的信息,就像mytop的查詢列表模式。有一個信息頭,顯示有關服務器的一般狀態信息。可以
用'h'切換開或關。
默認情況下,innotop隱藏不活動的進程和它自己的進程。您可以切換和關閉這些用'i'和'a'鍵。
R InnoDB Row Ops:
全名是InnoDB Row Operations and Semaphores(InnoDB的行操作和信號燈)。
這種模式顯示InnoDB行操作、row operation miscellaneous、信號、innodb等待信息
S Variables & Status:
這種模式計算,如每秒查詢的統計信息。您可以顯示絕對值之間,或增量值。
's' 鍵是沒一定時間打印數字到前面
'g' 鍵是打印圖像
'v' 鍵是以一個表格的形式顯示,定期刷新值。
T InnoDB Txns:
全名是InnoDB Transactions。
這種模式從innodb監視器中輸出事務。你可以殺掉一個查詢或進程,通過'k'和'x'鍵,也可以explain一個查詢,通過'e'或'f'鍵。
InnoDB不會輸出所有的查
詢事務,如果查詢太長被截斷。信息頭可以用'h'鍵打開或關閉,
默認情況下,innotop隱藏不活動的進程和它自己的進程。您可以切換和關閉這些用'i'和'a'鍵。