為mysqlmtop開啟慢查詢功能以及工具元件功能
阿新 • • 發佈:2019-01-27
MySQL-MTOP很多人都應該或多或少的使用過,尤其是MySQL DBA從業人員要對資料庫進行效能監控
至於MySQL-MTOP的其它監控模組在此就不多少說了,詳見摘取天上星早些年的MySQL-MTOP文件即可
這裡主要說的是MySQL-MTOP慢查詢模組的開啟方法還有工具元件的開啟方法,過程回顧如下
首先在被監控伺服器安裝如下元件:
http://cpan.metacpan.org/authors/id/T/TI/TIMB/DBI-1.628.tar.gz# tar xvzsf DBI-1.628.tar.gz
# cd DBI-1.628
# perl Makefile.PL
# make && make install
http://search.cpan.org/CPAN/authors/id/C/CA/CAPTTOFU/DBD-mysql-4.024.tar.gz
# tar xvzf DBD-mysql-4.024.tar.gz
# cd DBD-mysql-4.024
# perl Makefile.PL --mysql_config=/usr/local/mysql/bin/mysql_config --with-mysql=/usr/local/mysql
# make && make install
http://search.cpan.org/CPAN/authors/id/S/SU/SULLR/IO-Socket-SSL-1.972.tar.gz
# tar xvzf IO-Socket-SSL-1.972.tar.gz
# cd IO-Socket-SSL-1.972
# perl Makefile.PL
# make && make install
或者直接YUM安裝上面的三個元件也可以:
yum -y install perl-DBI
yum -y install perl-DBD-MySQL
yum install perl-IO-Socket-SSL
然後再在被監控伺服器安裝percona-toolkit
進入頁面https://www.percona.com/downloads/percona-toolkit/LATEST/ 下載適合自己的percona-toolkit-2.2.7.tar.gz檔案
或者直接 wget https://www.percona.com/downloads/percona-toolkit/2.2.7/percona-toolkit-2.2.7.tar.gz 下載
tar xvzf percona-toolkit-2.2.7.tar.gz
cd percona-toolkit-2.2.7
perl Makefile.PL
make && make install
開啟 MySQL 本身的慢查詢功能
slow_query_log = 1
slow_query_log_file = /usr/local/mysql/data/mysql/slow_query.log (此處根據實際地址填寫)
long_query_time = 1
在被監控伺服器(localhost)上新增如下 crontab 項(第一次剛剛安裝好時可以手動跑下命令列以測試效果如何)
00 * * * * /usr/local/bin/pt-query-digest --user=mtop_user --password=mysql_12315_password --port=3306 --review h=localhost,D=mysqlmtop,t=mysql_slow_query_review_1 --history h=localhost,D=mysqlmtop,t=mysql_slow_query_review_history_1 --no-report --limit=0% /data/mysql/mysql-slow.log >/dev/null 2>&1
以上資料表 mysql_slow_query_review、mysql_slow_query_review_history 的字尾為主機 ID,如圖:
(如果出現未找到資料庫表mysql_slow_query_review_*、mysql_slow_query_review_history_*的提示,只需手動複製資料庫mysqlmmtop中的 mysql_slow_query_review、mysql_slow_query_review_history表結構出來重新命名建立成對應的新表即可)
為被監控的伺服器開啟慢查詢
檢視慢查詢板塊如圖所示:
工具元件配置:
在被監控伺服器上新增如下 crontab 項(剛安裝成功,第一次請手動跑下指令碼,以便能立馬能看到效果)*/30 * * * * cd /usr/local/mysqlmtop/mysqlmtop; ./check_mysql_widget_bigtable.py >/dev/null 2>&1
*/1 * * * * cd /usr/local/mysqlmtop/mysqlmtop; ./check_mysql_widget_hit_rate.py >/dev/null 2>&1
*/1 * * * * cd /usr/local/mysqlmtop/mysqlmtop; ./check_mysql_widget_connect.py >/dev/null 2>&1
效果如圖(以下是mysql命中率介面,其餘自行點選檢視即可):
由於時間關係,今天暫時寫到這裡,後續有時間再另行更新相關事宜...