成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

mysql監(jiān)控怎么用 mysql監(jiān)控指標有哪些

如何監(jiān)控mysql表記錄變化

本期我們用 MySQL 提供的 DBUG 工具來研究 MySQL 的 SQL 處理流程。

建始ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!

起手先造個實例

這里得稍微改一下實例的啟動文件 start,將 CUSTOM_MYSQLD 改為 mysqld-debug:

重啟一下實例,加上 debug 參數(shù):

我們來做一兩個實驗,說明 DBUG 包的作用:

先設置一個簡單的調(diào)試規(guī)則,我們設置了兩個調(diào)試選項:

d:開啟各個調(diào)試點的輸出

O,/tmp/mysqld.trace:將調(diào)試結果輸出到指定文件

請點擊輸入圖片描述

然后我們創(chuàng)建了一張表,來看一下調(diào)試的輸出結果:

請點擊輸入圖片描述

可以看到 create table 的過程中,MySQL 的一些細節(jié)操作,比如分配內(nèi)存 alloc_root 等

這樣看還不夠直觀,我們增加一些信息:

請點擊輸入圖片描述

來看看效果:

請點擊輸入圖片描述

可以看到輸出變成了調(diào)用樹的形式,現(xiàn)在就可以分辨出 alloc_root 分配的內(nèi)存,是為了解析 SQL 時用的(mysql_parse)

我們再增加一些有用的信息:

請點擊輸入圖片描述

可以看到結果中增加了文件名和行號:

請點擊輸入圖片描述

現(xiàn)在我們可以在輸出中找一下統(tǒng)計表相關的信息:

請點擊輸入圖片描述

可以看到 MySQL 在這里非常機智,直接執(zhí)行了一個內(nèi)置的存儲過程來更新統(tǒng)計表。

沿著 que_eval_sql,可以找到其他類似的統(tǒng)計表,比如下面這些:

請點擊輸入圖片描述

請點擊輸入圖片描述

本次實驗中,我們借助了 MySQL 的 DBUG 包,來讓 MySQL 將處理過程暴露出來。MySQL 中類似的技術還有不少,比如 performance_schema,OPTIMIZER_TRACE 等等。

這些技術將 MySQL 的不同方向的信息暴露出來,方便大家理解其中機制。

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

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

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

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

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

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

三、使用

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

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

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

function:

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

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

variable:

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

threshold:

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

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

cycles:

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

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

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

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

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

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

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

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

retention-time :監(jiān)控數(shù)據(jù)保留時長,默認 30 天。

daemonize:以后臺服務運行,默認不開啟。

log:后臺運行日志,默認為 /var/log/pt-stalk.log。

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

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

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

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

如何監(jiān)控MySQL

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

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

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

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

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

三、使用

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

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

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

function:

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

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

variable:

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

threshold:

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

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

cycles:

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

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

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

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

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

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

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

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

retention-time :監(jiān)控數(shù)據(jù)保留時長,默認 30 天。

daemonize:以后臺服務運行,默認不開啟。

log:后臺運行日志,默認為 /var/log/pt-stalk.log。

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

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

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

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

mysql 如何監(jiān)控表結構修改

Online DDL 工具:pt-osc

對于 MySQL Online DDL 目前主流的有三種工具:

原生 Online DDL;

pt-osc(online-schema-change),

gh-ost

本文主要講解 pt-online-schema-change 的使用以及三種工具的簡單對比。

一、原理及限制

1.1 原理

1.?創(chuàng)建一個與原表結構相同的空表,表名是?_new?后綴;

2. 修改步驟 1 創(chuàng)建的空表的表結構;

3. 在原表上加三個觸發(fā)器:delete/update/insert,用于 copy 數(shù)據(jù)過程中,將原表中要執(zhí)行的語句在新表中執(zhí)行;

4. 將原表數(shù)據(jù)以數(shù)據(jù)塊(chunk)的形式 copy 到新表;

5. rename 原表為 old 表,并把新表 rename 為原表名,然后刪除舊表;

6. 刪除觸發(fā)器。

名稱欄目:mysql監(jiān)控怎么用 mysql監(jiān)控指標有哪些
URL標題:http://jinyejixie.com/article20/ddisjco.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信小程序、云服務器Google、ChatGPT全網(wǎng)營銷推廣、搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設計
平阴县| 衢州市| 隆德县| 麻江县| 河西区| 河西区| 南涧| 九龙城区| 花莲县| 雅江县| 长汀县| 温宿县| 汶川县| 鱼台县| 高碑店市| 泽普县| 项城市| 壶关县| 盐池县| 建宁县| 柞水县| 镇赉县| 萍乡市| 广汉市| 个旧市| 太保市| 托克逊县| 禹城市| 万州区| 民和| 岳阳市| 莱西市| 南京市| 监利县| 乳山市| 崇仁县| 吉林省| 辽宁省| 双江| 西贡区| 利川市|