Anemometer工具將慢查詢日誌中語句存儲到數據庫中,並生成報告。
安裝PHP相關服務及perl語言相關模塊(http://blog.csdn.net/u010587433/article/details/50339377),並開啓http服務。
同時需要安裝Percona Toolkit工具(http://blog.csdn.net/u010587433/article/details/50337627)。
下載:http://download.csdn.net/detail/u010587433/9363483
解壓
unzip Anemometer-master.zip
cd Anemometer-master
導入表並授權
mysql < mysql56-install.sql
mysql < install.sql
grant ALL ON slow_query_log.* to 'anemometer'@'%' IDENTIFIED BY '123456';
配置
mkdir -p /var/www/html/anemometer/
cp -r /root/Anemometer-master/* /var/www/html/anemometer/
cd /var/www/html/anemometer/conf
cp sample.config.inc.php config.inc.php
vi /var/www/html/anemometer/conf/config.inc.php
$conf['datasources']['localhost'] = array(
'host' => '192.168.9.130',
'port' => 3306,
'db' => 'slow_query_log',
'user' => 'anemometer',
'password' => '123456',
'tables' => array(
'global_query_review' => 'fact',
'global_query_review_history' => 'dimension'
)
);
$conf['plugins'] = array(
'visual_explain' => '/usr/bin/pt-visual-explain',
...
'explain' => function ($sample) {
$conn['user'] = 'anemometer';
$conn['password'] = '123456';
return $conn;
},
);
vi /var/www/html/anemometer/scripts/anemometer_collect.sh
添加IP
history_db_host=192.168.9.130
PATH=/home/mysql/product/5.6/mysql-1/bin:$PATH #如果執行腳本時報無法找到mysql,則添加此行
注意:腳本中用到的pt-visual-explain用於生成慢查詢的執行計劃,且是絕對路徑,所以最好
把pt-*命令複製到/usr/bin目錄下
cp /usr/local/bin/pt-* /usr/bin/
或創建軟連接
ln -s /usr/local/bin/pt-* /usr/bin/
定時收集慢查詢日誌信息,可將腳本部署到多個MySQL服務器上
crontab -l
*/5 * * * * /var/www/html/anemometer/scripts/anemometer_collect.sh >> /tmp/anemometer.log 2 > 1&
訪問即可查看所有慢查詢語句
http://192.168.9.130/anemometer
參考:
http://ourmysql.com/archives/1359