小編給大家分享一下pt-stalk如何監(jiān)控MySQL運(yùn)行,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:空間域名、雅安服務(wù)器托管、營(yíng)銷軟件、網(wǎng)站建設(shè)、德城網(wǎng)站維護(hù)、網(wǎng)站推廣。1. 使用pt-stalk
pt-stalk --collect-tcpdump --function status \
--variable Threads_connected --threshold 2500 \
--daemonize -- --user=root --password=YOURPASSWORD
上面的命令表示,讓pt-stalk后臺(tái)運(yùn)行(--daemonize),并監(jiān)視SHOW GLOBAL STATUS中的Threads_connected狀態(tài)值,如果該值超過(guò)2500,則觸發(fā)收集主機(jī)和MySQL的性能、狀態(tài)信息。pt-stalk會(huì)每隔一秒檢查一次狀態(tài)值,如果連續(xù)5次滿足觸發(fā)條件,則開(kāi)始收集。
--collect-tcpdump表示除了收集基本信息外,還將額外使用tcpdump收集當(dāng)時(shí)的網(wǎng)絡(luò)包,類似的還可以使用--collect-gdb等。
2. pt-stalk如何連接MySQL
在上面的命令中參數(shù),"-- --user=root --password=YOURPASSWORD"表示,將使用"--"后面的所有參數(shù)用于mysql和mysqladmin命令,所以這里確保你給出正確的用戶名和密碼。下面是man pt-stalk中給出的語(yǔ)法:
SYNOPSIS
Usage: pt-stalk [OPTIONS] [-- MYSQL OPTIONS]
看到前面的[OPTIONS]是pt-stalk使用的參數(shù),[-- MYSQL OPTIONS]是mysql和mysqladmin使用的參數(shù)。
3. pt-stalk的工作狀態(tài)
pt-stalk是一個(gè)后臺(tái)程序,默認(rèn)我們可以通過(guò)文件/var/log/pt-stalk.log,查看pt-stalk的運(yùn)行狀態(tài):
tail -f /var/log/pt-stalk.log
2012_06_05_00_00_35 Check results: Threads_connected=1641, matched=no
2012_06_05_00_00_36 Check results: Threads_connected=1641, matched=no
2012_06_05_00_00_37 Check results: Threads_connected=1641, matched=no
2012_06_05_00_00_38 Check results: Threads_connected=1641, matched=no
2012_06_05_00_00_39 Check results: Threads_connected=1641, matched=no
2012_06_05_00_00_40 Check results: Threads_connected=1641, matched=no
2012_06_05_00_00_41 Check results: Threads_connected=1641, matched=no
你還可以通過(guò)參數(shù)--log指定一個(gè)你希望的log目錄和文件。
4. pt-stalk收集的性能和狀態(tài)數(shù)據(jù)
默認(rèn)pt-stalk將收集的數(shù)據(jù)放在目錄/var/lib/pt-stalk下,你可以使用參數(shù)--dest指定你希望的目錄。下面是一個(gè)pt-stalk觸發(fā)收集后的數(shù)據(jù)文件:
這些數(shù)據(jù)都是原始數(shù)據(jù),我們可以根據(jù)這些來(lái)分析當(dāng)時(shí)MySQL或者主機(jī)是否有異常。
5. pt-stalk的觸發(fā)條件
在上面的示例中觸發(fā)參數(shù)是:"--function status --variable Threads_connected --threshold 2500",表示MySQL狀態(tài)值Threads_connected超過(guò)2500時(shí)觸發(fā)數(shù)據(jù)收集。常用的觸發(fā)條件還可以使用Threads_running等。
另外還可以使用SHOW PROCESSLIST的中的結(jié)果觸發(fā),例如"--function processlist --variable State --match statistics --threshold 10"表示,show processlist中State列的值為statistics的線程數(shù)超過(guò)10則觸發(fā)收集。
6. 一些其他有用的參數(shù)
--iterations:該參數(shù)指定pt-stalk在收集幾次故障現(xiàn)場(chǎng)后就退出。默認(rèn)pt-stalk會(huì)一直運(yùn)行
--run-time:觸發(fā)收集后,該參數(shù)指定收集多長(zhǎng)時(shí)間的數(shù)據(jù)。默認(rèn)是30秒
--sleep:為防止一直觸發(fā)收集數(shù)據(jù),該參數(shù)指定在某次觸發(fā)后,必須sleep一段時(shí)候才繼續(xù)觀察并觸發(fā)收集。默認(rèn)是300秒
--interval:默認(rèn)情況pt-stalk會(huì)每隔一秒檢查一次狀態(tài)數(shù)據(jù),判斷是否需要觸發(fā)收集。該參數(shù)指定間隔時(shí)間,默認(rèn)是1秒。
--cycles:默認(rèn)情況pt-stalk只有連續(xù)觀察到五次狀態(tài)值滿足觸發(fā)條件時(shí),才觸發(fā)收集。該參數(shù)控制,需要連續(xù)幾次滿足條件,收集被觸發(fā),默認(rèn)是5次。
看完了這篇文章,相信你對(duì)“pt-stalk如何監(jiān)控MySQL運(yùn)行”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!