Mysql慢查詢日誌分析工具

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章