一.檢查和安裝與Perl相關的模塊 PT工具是使用Perl語言編寫和執行的,所以需要系統中有Perl環境。 依賴包檢查命令為: rpm -qa perl-DBI perl-DBD-MySQL perl-Time-HiRes perl-IO-Socket-SSL 如果有依賴包確實,可以使用下麵的命令安 ...
一.檢查和安裝與Perl相關的模塊
PT工具是使用Perl語言編寫和執行的,所以需要系統中有Perl環境。
依賴包檢查命令為:
rpm -qa perl-DBI perl-DBD-MySQL perl-Time-HiRes perl-IO-Socket-SSL
如果有依賴包確實,可以使用下麵的命令安裝:
yum install perl-DBI
yum install perl-DBD-MySQL
yum install perl-Time-HiRes
yum install perl-IO-Socket-SSL
二.下載和安裝percona toolkit的包
1、下載和安裝percona toolkit的包
參照:https://www.percona.com/doc/percona-toolkit/3.0/installation.html#installing-percona-toolkit-on-red-hat-or-centos
yum install http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
2、查看可以安裝的包
yum list | grep percona-toolkit
3、安裝percona-toolkit工具包
yum install percona-toolkit
4、出現complete!即表示安裝成功:
5、安裝後,可以通過下麵的命令確認是否安裝成功:
# pt-query-digest --help
# pt-table-checksum --help
如果命令提示可以正常顯示,則說明pt工具已經正常安裝和使用了。
有的32個命令,可以分為7大類
工具類別 |
工具命令 |
工具作用 |
備註 |
開發類 |
pt-duplicate-key-checker |
列出並刪除重覆的索引和外鍵 |
|
pt-online-schema-change |
線上修改表結構 |
||
pt-query-advisor |
分析查詢語句,並給出建議,有bug |
已廢棄 |
|
pt-show-grants |
規範化和列印許可權 |
||
pt-upgrade |
在多個伺服器上執行查詢,並比較不同 |
||
性能類 |
pt-index-usage |
分析日誌中索引使用情況,並出報告 |
|
pt-pmp |
為查詢結果跟蹤,並彙總跟蹤結果 |
||
pt-visual-explain |
格式化執行計劃 |
||
pt-table-usage |
分析日誌中查詢並分析表使用情況 |
pt 2.2新增命令 |
|
配置類 |
pt-config-diff |
比較配置文件和參數 |
|
pt-mysql-summary |
對mysql配置和status進行彙總 |
||
pt-variable-advisor |
分析參數,並提出建議 |
||
監控類 |
pt-deadlock-logger |
提取和記錄mysql死鎖信息 |
|
pt-fk-error-logger |
提取和記錄外鍵信息 |
||
pt-mext |
並行查看status樣本信息 |
||
pt-query-digest |
分析查詢日誌,並產生報告 |
常用命令 |
|
pt-trend |
按照時間段讀取slow日誌信息 |
已廢棄 |
|
複製類 |
pt-heartbeat |
監控mysql複製延遲 |
|
pt-slave-delay |
設定從落後主的時間 |
||
pt-slave-find |
查找和列印所有mysql複製層級關係 |
||
pt-slave-restart |
監控salve錯誤,並嘗試重啟salve |
||
pt-table-checksum |
校驗主從複製一致性 |
||
pt-table-sync |
高效同步表數據 |
||
系統類 |
pt-diskstats |
查看系統磁碟狀態 |
|
pt-fifo-split |
模擬切割文件並輸出 |
||
pt-summary |
收集和顯示系統概況 |
||
pt-stalk |
出現問題時,收集診斷數據 |
||
pt-sift |
瀏覽由pt-stalk創建的文件 |
pt 2.2新增命令 |
|
pt-ioprofile |
查詢進程IO並列印一個IO活動表 |
pt 2.2新增命令 |
|
實用類 |
pt-archiver |
將表數據歸檔到另一個表或文件中 |
|
pt-find |
查找表並執行命令 |
||
pt-kill |
Kill掉符合條件的sql |
常用命令 | |
pt-align |
對齊其他工具的輸出 |
pt 2.2新增命令 |
|
pt-fingerprint |
將查詢轉成密文 |
pt 2.2新增命令 |
上面是pt工具各個命令的基本功能介紹,可以使用 command --help 來查看每個命令的具體作用和使用方法;
有的命令也可以使用 man command 命令查詢相關命令詳細信息。
目前使用的比較多的命令是: pt-query-digest ,pt-kill等命令。
加欄位例子:
/usr/local/bin/pt-online-schema-change --user=用戶名 --password=密碼 --host=127.0.0.1 --port=埠號 --charset=utf8 --nodrop-old-table --alter="modify media_code varchar(64) DEFAULT NULL COMMENT '當前視頻編碼' " D=ad_api,t=t_ad_req_log --exec
註意:若是安轉過程中,遇到yum命令不可用,請替換鏡像源,我這裡是替換成163的鏡像源:
命令如下:
cd /etc/yum.repos.d mv CentOS-Base.repo CentOS-Base.repo.bk ll wget http://mirrors.163.com/.help/CentOS6-Base-163.repo vi /etc/resolv.conf wget http://mirrors.163.com/.help/CentOS6-Base-163.repo yum makecache