真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

mysql怎么監(jiān)控sql,mysql日志監(jiān)控

如何實(shí)時(shí)監(jiān)控mysql中的SQL語句的執(zhí)行情況?

首先介紹下 pt-stalk,它是 Percona-Toolkit 工具包中的一個(gè)工具,說起 PT 工具包大家都不陌生,平時(shí)常用的 pt-query-digest、 pt-online-schema-change 等工具都是出自于這個(gè)工具包,這里就不多介紹了。

庫倫網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)于2013年創(chuàng)立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

pt-stalk 的主要功能是在出現(xiàn)問題時(shí)收集 OS 及 MySQL 的診斷信息,這其中包括:

1. OS 層面的 CPU、IO、內(nèi)存、磁盤、網(wǎng)絡(luò)等信息;

2. MySQL 層面的行鎖等待、會(huì)話連接、主從復(fù)制,狀態(tài)參數(shù)等信息。

而且 pt-stalk 是一個(gè) Shell腳本,對(duì)于我這種看不懂 perl 的人來說比較友好,腳本里面的監(jiān)控邏輯與監(jiān)控命令也可以拿來參考,用于構(gòu)建自己的監(jiān)控體系。

三、使用

接著我們來看下如何使用這個(gè)工具。

pt-stalk 通常以后臺(tái)服務(wù)形式監(jiān)控 MySQL 并等待觸發(fā)條件,當(dāng)觸發(fā)條件時(shí)收集相關(guān)診斷數(shù)據(jù)。

觸發(fā)條件相關(guān)的參數(shù)有以下幾個(gè):

function:

°?默認(rèn)為 status,代表監(jiān)控 SHOW GLOBAL STATUS 的輸出;

°?也可以設(shè)置為 processlist,代表監(jiān)控 show processlist 的輸出;

variable:

°?默認(rèn)為 Threads_running,代表 監(jiān)控參數(shù),根據(jù)上述監(jiān)控輸出指定具體的監(jiān)控項(xiàng);

threshold:

°?默認(rèn)為 25,代表 監(jiān)控閾值,監(jiān)控參數(shù)超過閾值,則滿足觸發(fā)條件;

°?監(jiān)控參數(shù)的值非數(shù)字時(shí),需要配合 match 參數(shù)一起使用,如 processlist 的 state 列;

cycles:

°?默認(rèn)為 5,表示連續(xù)觀察到五次滿足觸發(fā)條件時(shí),才觸發(fā)收集;

連接參數(shù):host、password、port、socket。

其他一些重要參數(shù):

iterations:該參數(shù)指定 pt-stalk 在觸發(fā)收集幾次后退出,默認(rèn)會(huì)一直運(yùn)行。

run-time:觸發(fā)收集后,該參數(shù)指定收集多長(zhǎng)時(shí)間的數(shù)據(jù),默認(rèn) 30 秒。

sleep:該參數(shù)指定在觸發(fā)收集后,sleep 多久后繼續(xù)監(jiān)控,默認(rèn) 300 秒。

interval:指定狀態(tài)參數(shù)的檢查頻率,判斷是否需要觸發(fā)收集,默認(rèn) 1 秒。

dest:監(jiān)控?cái)?shù)據(jù)存放路徑,默認(rèn)為 /var/lib/pt-stalk。

retention-time :監(jiān)控?cái)?shù)據(jù)保留時(shí)長(zhǎng),默認(rèn) 30 天。

daemonize:以后臺(tái)服務(wù)運(yùn)行,默認(rèn)不開啟。

log:后臺(tái)運(yùn)行日志,默認(rèn)為 /var/log/pt-stalk.log。

collect:觸發(fā)發(fā)生時(shí)收集診斷數(shù)據(jù),默認(rèn)開啟。

°?collect-gdb:收集 GDB 堆棧跟蹤,需要 gdb 工具。

°?collect-strace:收集跟蹤數(shù)據(jù),需要 strace 工具。

°?collect-tcpdump:收集 tcpdump 數(shù)據(jù),需要 tcpdump 工具。

根據(jù)mysql慢日志監(jiān)控SQL語句執(zhí)行效率

根據(jù)mysql慢日志監(jiān)控SQL語句執(zhí)行效率

啟用MySQL的log-slow-queries(慢查詢記錄)。

在Linux環(huán)境下先要找到my.cnf文件(一般在/etc/mysql/),然后可能會(huì)發(fā)現(xiàn)該文件修改后無法保存,原因是你沒有相應(yīng)的權(quán)限,可以從屬性中看到該文件的所有者是root,這時(shí)要先以root的身份打開它:

sudo

nautilus

/etc/mysql

接著再打開my.cnf文件然后找到[mysqld]標(biāo)簽在下面加上:

log-slow-queries=/path/slow.log

–慢日志保存路徑,該文件自己新建

long_query_time=2

–超過2秒的查詢

log-queries-not-using-indexes

–記錄沒有使用索引的查詢

保存,關(guān)閉。然后如果重啟MySQL的話會(huì)碰到這樣的提示:world-writable

config

file

etc

my.cnf'

is

ignored

這時(shí)需要你再運(yùn)行這個(gè)代碼:

chmod

644

/etc/my.cnf

–644表示rw-r–r–

然后再重啟服務(wù)就OK了。

但是要注意的是:log-slow-queries=/path/slow.log為慢查詢?nèi)罩敬娣诺牡胤?,而這個(gè)目錄要有MySQL的運(yùn)行帳號(hào)的可寫權(quán)限,一般都將這個(gè)目錄設(shè)置為MySQL的數(shù)據(jù)存放目錄。

我是這么做的:先用root用戶進(jìn)到MySQL的數(shù)據(jù)存放目錄(一般是/var/lib/mysql),新建一個(gè)slow.log文件(root用戶能保證有權(quán)限新建,再運(yùn)行chmod

644)。然后更改該文件的所有者和所在組:

chown

mysql運(yùn)行帳戶的名字(可以看同文件夾中其他文件的所有者和組)+小數(shù)點(diǎn)+組名(方法同用戶名)

/path/slow.log

或者:

chown

mysql運(yùn)行帳戶的名字(可以看同文件夾中其他文件的所有者和組)

/path/slow.log

chgrp

組名(方法同用戶名)

/path/slow.log

這樣才能保證MySQL能往slow.log中寫日志。

如何實(shí)時(shí)監(jiān)控mysql中的SQL語句的執(zhí)行情況

首先介紹下 pt-stalk,它是 Percona-Toolkit 工具包中的一個(gè)工具,說起 PT 工具包大家都不陌生,平時(shí)常用的 pt-query-digest、 pt-online-schema-change 等工具都是出自于這個(gè)工具包,這里就不多介紹了。

pt-stalk 的主要功能是在出現(xiàn)問題時(shí)收集 OS 及 MySQL 的診斷信息,這其中包括:

1. OS 層面的 CPU、IO、內(nèi)存、磁盤、網(wǎng)絡(luò)等信息;

2. MySQL 層面的行鎖等待、會(huì)話連接、主從復(fù)制,狀態(tài)參數(shù)等信息。

而且 pt-stalk 是一個(gè) Shell腳本,對(duì)于我這種看不懂 perl 的人來說比較友好,腳本里面的監(jiān)控邏輯與監(jiān)控命令也可以拿來參考,用于構(gòu)建自己的監(jiān)控體系。

三、使用

接著我們來看下如何使用這個(gè)工具。

pt-stalk 通常以后臺(tái)服務(wù)形式監(jiān)控 MySQL 并等待觸發(fā)條件,當(dāng)觸發(fā)條件時(shí)收集相關(guān)診斷數(shù)據(jù)。

觸發(fā)條件相關(guān)的參數(shù)有以下幾個(gè):

function:

°?默認(rèn)為 status,代表監(jiān)控 SHOW GLOBAL STATUS 的輸出;

°?也可以設(shè)置為 processlist,代表監(jiān)控 show processlist 的輸出;

variable:

°?默認(rèn)為 Threads_running,代表 監(jiān)控參數(shù),根據(jù)上述監(jiān)控輸出指定具體的監(jiān)控項(xiàng);

threshold:

°?默認(rèn)為 25,代表 監(jiān)控閾值,監(jiān)控參數(shù)超過閾值,則滿足觸發(fā)條件;

°?監(jiān)控參數(shù)的值非數(shù)字時(shí),需要配合 match 參數(shù)一起使用,如 processlist 的 state 列;

cycles:

°?默認(rèn)為 5,表示連續(xù)觀察到五次滿足觸發(fā)條件時(shí),才觸發(fā)收集;

連接參數(shù):host、password、port、socket。

其他一些重要參數(shù):

iterations:該參數(shù)指定 pt-stalk 在觸發(fā)收集幾次后退出,默認(rèn)會(huì)一直運(yùn)行。

run-time:觸發(fā)收集后,該參數(shù)指定收集多長(zhǎng)時(shí)間的數(shù)據(jù),默認(rèn) 30 秒。

sleep:該參數(shù)指定在觸發(fā)收集后,sleep 多久后繼續(xù)監(jiān)控,默認(rèn) 300 秒。

interval:指定狀態(tài)參數(shù)的檢查頻率,判斷是否需要觸發(fā)收集,默認(rèn) 1 秒。

dest:監(jiān)控?cái)?shù)據(jù)存放路徑,默認(rèn)為 /var/lib/pt-stalk。

retention-time :監(jiān)控?cái)?shù)據(jù)保留時(shí)長(zhǎng),默認(rèn) 30 天。

daemonize:以后臺(tái)服務(wù)運(yùn)行,默認(rèn)不開啟。

log:后臺(tái)運(yùn)行日志,默認(rèn)為 /var/log/pt-stalk.log。

collect:觸發(fā)發(fā)生時(shí)收集診斷數(shù)據(jù),默認(rèn)開啟。

°?collect-gdb:收集 GDB 堆棧跟蹤,需要 gdb 工具。

°?collect-strace:收集跟蹤數(shù)據(jù),需要 strace 工具。

°?collect-tcpdump:收集 tcpdump 數(shù)據(jù),需要 tcpdump 工具。


當(dāng)前標(biāo)題:mysql怎么監(jiān)控sql,mysql日志監(jiān)控
本文地址:http://weahome.cn/article/dscpgsi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部