您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“如何掌握ps-top用于MySQL的數(shù)據(jù)庫top工具”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
熟悉Linux的同學(xué)都很喜歡top命令,可以讓我們很方便快捷的一鍵獲取系統(tǒng)運(yùn)行狀態(tài)。除了系統(tǒng)狀態(tài),很多人可能也希望能一鍵獲得數(shù)據(jù)庫的運(yùn)行狀態(tài),很多人會用show profile或者performance_schema數(shù)據(jù)庫獲取各種信息。但是很方便和直接。
本文蟲蟲給大家介紹一個命令行工具ps-top,可從MySQL 5.6+的performance_schema數(shù)據(jù)庫中收集信息,并使用該信息實時顯示服務(wù)器負(fù)載。數(shù)據(jù)以表或文件名顯示,實時顯示在選擇,插入,更新或刪除活動時候信息情況;視圖顯示用戶活動,顯示使用相同用戶名連接的不同主機(jī)的數(shù)量以及這些用戶的活動視圖;關(guān)于互斥、鎖表和sql階段計時的統(tǒng)計信息視圖。
安裝
和一般的golang工具一樣,ps-top安裝很簡單,直接用go get就可以下載、編譯,安裝好:
go get -u github.com/sjmudd/ps-top/cmd/ps-top或 go get -u github.com/sjmudd/ps-top/cmd/ps-stats
這樣就會直接安裝下載工具及其依賴項,安裝后的二進(jìn)制文件在$GOPATH/bin/目錄。如果該路徑在系統(tǒng)PATH設(shè)置中,則無需指定任何特定路徑即可直接運(yùn)行程序。
訪問MySQL
可以通過以下方法之一訪問MySQL:
默認(rèn)使用文件~/.my.cnf。
制定cnf文件,通過--defaults-file=/path/to/.my.cnf。
使用--host=somehost --port=999 --user=someuser --password=somepass連接到主機(jī)
通過本機(jī)socket連接 --socket=/path/to/mysql.sock --user=someuser --password=somepass
如果未指定,則用戶默認(rèn)為的內(nèi)容$USER。如果未指定端口,則默認(rèn)為3306。
可以通過命令行選項--use-environment ps-top或者ps-stats,則在環(huán)境變量中查找MYSQL_DSN的賬號信息去連接Mysql。MYSQL_DSN格式為式:
user:pass@tcp(host:port)/performance_schema
這樣就避免在命令行中直接顯示賬號和密碼,防止信息泄露。
MySQL/MariaDB配置
performance_schema數(shù)據(jù)庫必須配置為支持ps-top。默認(rèn)情況下,在MySQL上會啟用此功能。MariaDB> = 10.0.12上則禁用此功能。因此,需額外配置啟用,在/etc/my.cnf中,設(shè)置:
performance_schema = 1
然后重新啟動MariaDB才能生效。
ps-top和ps-stats需要問performance_schema表的SELECT權(quán)限。如果無法訪問所需表,它們將不會運(yùn)行。
setup_instruments:查看mutex_latency或stages_latency 根據(jù)需要修改改配置,保證用戶有權(quán)限執(zhí)行此操作。如果服務(wù)器,--read-only或者沒有足夠的權(quán)限來更改這些表,則這些視圖可能為空。如果在啟動時成功更新了表,則停止ps-top之前,該setup_instruments配置會將其恢復(fù)為原始設(shè)置。
視圖
ps-top和ps-stats可以顯示7個不同的數(shù)據(jù)視圖,這些視圖默認(rèn)情況下每秒更新一次。這7個視圖為:
table_latency:表等待執(zhí)行操作的時間顯示活動。
table_ops:按MySQL執(zhí)行的活動數(shù)顯示活動。
file_io_latency:顯示MySQL在文件I/O上花費(fèi)的時間。
table_lock_latency:根據(jù)表鎖顯示順序
user_latency:根據(jù)用戶運(yùn)行查詢的時間或用戶與MySQL的連接數(shù)顯示排序。它提供了一些信息,還顯示了總的空閑時間,因為這表明可能有過長的空閑查詢,如果有堆積,這里的值之和可能很有趣。
mutex_latency:按互斥鎖延遲顯示排序。
SQL Stages_latency:在不同的SQL查詢階段中按時間顯示排序。
可以更改輪詢間隔并在模式之間進(jìn)行切換。
快捷鍵
在ps-top模式下,以下按鍵可以讓ps-top在不同模式瀏覽或更改其行為。
h ?:顯示幫助。
· 將輪詢間隔減少1秒(最少1秒)
+ 將輪詢間隔增加1秒
q-退出
t:在顯示自重置ps-top開始以來顯示統(tǒng)計信息或您顯式重置它們(使用'z')[REL]或顯示從MySQL收集的統(tǒng)計信息之間切換[ABS]。
z:重置統(tǒng)計信息。那就是您看到的與"重置"統(tǒng)計信息有關(guān)的計數(shù)器。
左箭頭:切換到上一個屏幕
向右箭頭:切換至下一個屏幕
標(biāo)準(zhǔn)輸出模式
ps-stats和,ps-top都具有與相同的視圖輸出,會定時發(fā)送到stdout。默認(rèn)視圖為table_io_latency??梢允褂门cvmstat相同的方法來調(diào)整收集間隔和收集數(shù)據(jù)的次數(shù)。第一個參數(shù)是delay(默認(rèn)為1秒),第二個參數(shù)是要進(jìn)行的迭代次數(shù),如果未提供,則為一直運(yùn)行。該模式旨在用于使用stdout作為輸出媒體來監(jiān)視ps-top并從中收集數(shù)據(jù)。
相關(guān)的命令行選項包括:
--count=
--interval=
--limit=
--stdout 將輸出發(fā)送到stdout(不是屏幕)
--view=
--totals 僅顯示總計行,而不顯示明細(xì)。
“如何掌握ps-top用于MySQL的數(shù)據(jù)庫top工具”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。