MySQL 監控工具 innotop

innotop的作用爲實時地展示服務器正在發生的事情,監控innodb,監控多個MySQL實例,是一款MySQL運維和問題定位分析的工具。


一. 安裝

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'鍵。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章