共計 3444 個字符,預計需要花費 9 分鐘才能閱讀完成。
這期內容當中丸趣 TV 小編將會給大家?guī)碛嘘P基于 Query-Digest-UI 對 mysql 慢日志 web 可視化是怎么樣的,文章內容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
Query-Digest-UI 是一款基于 percona-toolkit 管理工具中 pt-query-digest 的對 MySQL 慢查詢日志進行監(jiān)控并結合 lamp 以圖形化展示的工具。
結構圖如下:
一、準備工作:
1. Apache, mod_php, php_pdo
2. 安裝:perl-DBD-MySQL-3.0007-2.el5
但是安裝此模塊時,可能會報錯:
libmysqlclient.so.15()(64bit) is needed by perl-DBD-MySQL-3.0007-2.el5.x86_64
libmysqlclient.so.15(libmysqlclient_15)(64bit) is needed by perl-DBD-MySQL-3.0007-2.el5.x86_64
需要安裝 或 提供 libmysqlclient.so.15
可在 /usr/lib 或者 /usr/lib64 下,對 libmysqlclient.so.16 或 libmysqlclient.so.18 建立軟連接:libmysqlclient.so.15
ln -s /usr/lib64/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.15
二、安裝
1.Query-Digest-UI 是依賴對 pt-query-digest 工具對慢日志的分析,所以要安裝 percona_toolkit
下載 percona-toolkit_2.2.17-1.tar.gz
安裝:
#perl Makefile.PL
#make
#make install
2. 安裝 LAMP
3. 下載安裝 Query-Digest-UI
官網下載地址:https://github.com/kormoc/Query-Digest-UI
更改版下載:https://pan.baidu.com/share/link?shareid=3651139099 uk=2550236109 (網上提供的,我用的是這版)
query-digest-ui_last-edition.zip
解壓更名放到 /var/www/html/slow
4. 創(chuàng)建庫和表
1.install.sql
Query-Digest-UI 沒有這個腳本,要到 Anemomete 里找這個 sql,下載地址:https://github.com/box/Anemometer Anemometer 和 Query-Digest-UI 是一樣的都是為 mysql 慢日志提供可視化的。
2. 創(chuàng)建用戶(數據庫:192.168.1.1,lamp+Query-Digest-UI:192.168.1.2)
grant all on
slow_query_log.* to slow @ 192.168.1.1 identified by test 在搭建 lamp 的機器上,讓線上的數據庫的機器能向 slow_query_log 庫插入數據
grant all on slow_query_log.* to slow @ localhost identified by test
grant select on *.* to slow_1 @ 192.168.1.2 在線上數據庫上 select on *.* 是為了看執(zhí)行計劃
5. 配置 Query-Digest-UI
# pwd
/var/www/html/slow
#cp config.php.example config.php 更改版就直接有這個文件了
#vim config.php
…….
$reviewhost = array(
// Replace hostname and database in this setting
// use host=hostname;port=portnum if not the default port
dsn = mysql:host=192.168.1.2;port=3306;dbname=slow_query_log ,
user = slow ,
password = test ,
// See http://www.percona.com/doc/percona-toolkit/2.1/pt-query-digest.html#cmdoption-pt-query-digest–review
review_table = global_query_review ,
// This table is optional. You don t need it, but you lose detailed stats
// Set to a blank string to disable
// See http://www.percona.com/doc/percona-toolkit/2.1/pt-query-digest.html#cmdoption-pt-query-digest–review-history
history_table = global_query_review_history ,
);
下面是執(zhí)行計劃配置的了
$explainhosts = array(
label1 = array(
dsn = mysql:host=192.168.1.1;port=3306 ,
user = slow_1 ,
password = test ,
// By default we scan the host to see what databases we can run a
// explain on. To disable this behavour, set an array here
databases = array(
database1 ,
database2 ,
……..
),
),
label2 = array(
dsn = mysql:host=;port=3306 ,
user = ,
password = ,
// You can also just set the field and keep it empty. We will scan for valid databases
databases = array(),
6. 開始收集數據
用 pt-query-digest 工具在線上執(zhí)行想線下的 lamp 的數據庫推送數據
pt 版本小于 2.2 版本的語句:
pt-query-digest –user=slow –password=test –review h=192.168.1.2,D=slow_query_log,t=global_query_review –history h=192.168.1.2,D=slow_query_log,t=global_query_review_history –no-report –limit=0% –filter= \$event- {Bytes} = length(\$event- {arg}) and \$event- {hostname}=\ $HOSTNAME\ /data/mysql/mysql_3306/logs/slow.log
pt 版本大于 2.2 版本的語句:
pt-query-digest –user=slow –password=test –review h=192.168.1.2,D=slow_query_log,t=global_query_review –history h=192.168.1.2,D=slow_query_log,t=global_query_review_history –no-report –limit=0% –filter= \$event- {Bytes} = length(\$event- {arg}) and \$event- {hostname}=\ $HOSTNAME\ /data/mysql/mysql_3306/logs/slow.log
好了
進入頁面了
http://192.168.1.2/slow
就可以看到慢日志了。。。。。
上述就是丸趣 TV 小編為大家分享的基于 Query-Digest-UI 對 mysql 慢日志 web 可視化是怎么樣的了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注丸趣 TV 行業(yè)資訊頻道。