[精讚] [會員登入]
7285

[Mysql/Mariadb] 查看使用狀態,抓出可疑慢查詢SQL

當Mysql 的負載loading飆高時,除了重新啟動外,如果想對症下藥,那該怎麼處理?

分享此文連結 //n.sfs.tw/11062

分享連結 [Mysql/Mariadb] 查看使用狀態,抓出可疑慢查詢SQL@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 13:46:13 最後編修
2017-05-13 21:29:40 By 張○○
 

自動目錄

顯示目前的SQL語法

mysql>show processlist;

mysql> show status;


$ mysqladmin proc -u user -p

列出MySQL目前的狀態

$ mysqladmin status -u user -p
Uptime: 123612  Threads: 3  Questions: 197247  Slow queries: 0  Opens: 130  Flush tables: 1  Open tables: 124  Queries per second avg: 1.595

參數的意義

Uptime 伺服器運作的秒數

Threads 連線中的客戶數

Questions 從伺服器啟動到目前為使客戶送出的查詢 query數

Slow queries 被標注為慢速的查詢數,只要查詢秒數超過long_query_time的設定就是慢速查詢。

Opens 伺服器有開啟的表數

Flush tables 伺服器有執行過flush-*, refresh, and reload的次數

Open tables 伺服器目前有開啟的表數

Memory in use mysql記憶體用量,只有mysql編譯時有加參數 --with-debug=full. 才會顯示

Maximum memory used mysql直接使用記憶體的最大量,只有mysql編譯時有加參數 --with-debug=full. 才會顯示

Queries per second avg 平均每秒查詢數

處置Slow queries

查看超過幾秒算 slow queries,預設是10秒

mysql> show VARIABLES like 'long_query_time';

設定記錄[1]

# vi /etc/my.cnf

[mysqld]
# 開啟slow_query
slow_query_log=1
long_query_time = 5
slow_query_log_file=slow_queries.log

重啟mysql生效

上面的log file 會放在mysql的資料庫路徑中,Centos 在 /var/lib/mysql

重跑 mysql 之後,若再遇到流量飆高,就下指令看看什麼 SQL 在耗流量吧[1]

$ mysqldumpslow -s r -t 10 /var/lib/mysql/slow_queries.log

參考資料

[1] http://ithelp.ithome.com.tw/questions/10097377

[2] 詳解MySQL四種Log機制 以日誌稽核解析追蹤事件


原文 2011-02-19 14:37:49

END

你可能感興趣的文章

[Mysql/MariaDB] 表格的引擎 (engine):查看及修改 MySQL表格引擎預設為 MyISAM,但在4.0以上的mysql 其實支援不只一種引擎,各有優缺點,這篇介紹引擎的操作。

[Mysql] Mysqldump 的預設編碼 --default-character-set 有時Mysqldump 也得要指定編碼才不會造成匯出的亂碼

[Mysql] 資料型態int, float, double, text, char, varchar, blob大小 Mysql中資料型態int, float, text, char, varchar, blob大小

[Mysql/Mariadb] 檢查、修復及優化資料庫 mysql/mariadb 檢查、修復及優化資料庫

[mysqldump] Mysqldump時出現記憶體錯誤Out of memory 當進行 mysqldump 時出現 Out of memory (Needed xxxxx bytes) 的錯誤,該如何處理?

[Mysql] 建立叢集式資料庫4/4--觀察及測試 觀察及測試haproxy+galera建立Mysql的叢集式資料庫,並進行壓力測試

隨機好文

[HP DL380G7] 生效啟動第3,4片網卡/開啟或關閉內建的網卡 HP DL380G7 預設第3,4片網卡裝完系統後找不到,難道是壞了?要怎麼辦?

好用的3+2碼郵遞區號查詢系統推薦 網路上找到用地址輸入判斷3+2碼郵遞區號的辨識率不高,除了這個網站…

[PHP] 檢查檔案是否是圖檔 使用getimagesize函數檢查檔案是否是圖檔

正則表達式:Email名稱防止連續輸入點(.)及下底線(_) Email的名稱中要允許特殊符號,但又不允許連續出現的正則表達式

此一時彼一時 我是不是易怒的人,其實我也不知道,總之我常會失控,不知道自己在幹嘛。這近生活過得浮浮的,不是很踏實,總會想太多,我甚至會