[精讚] [會員登入]
7326

[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] 正規表達式(regular express) mysql的正規表達式很詭異,很不能接受

[MySQL/Mariadb] console 將查詢結果輸出到檔案 在mysql 的console中該如何將查詢結果輸出到檔案?

[Mysql/Mariadb] 利用phpMyAdmin 建立關聯式資料表 利用phpMyAdmin 建立關聯式資料表

[phpmyadmin] 登錄超時 (1440 秒未操作),請重新登錄 phpmyadmin登錄超時 (1440 秒未操作),請重新登錄的問題,該如何解決?

[Mysql/MariaDB] 修改資料庫、表格或欄位名稱 Mysql/MariaDB修改資料庫、表格或欄位名稱

[Mysql] 使用union合併兩個表 mysql合併兩個表的方法,使用union

隨機好文

[jQuery] 利用load()來達成ajax的寫法 jQuery中利用load()來達成ajax的寫法,也有人稱他是假的ajax,作法就是..

為什麼要買長達二十年的保單? 為什麼要買長達二十年的保單?找一個可以說服我買二十年保單的理由。

UTF8中文字/全形一覽 快速查詢urf-8的中文字,共計13246中文字(5401常用字+7652罕用字+日文或編號),292全形符號,27半形符號。

[bc] linux 的計算機 bc 設定小數位數、計算π、次方根 linux 的計算機 bc 設定小數位數、計算π、次方根

UTF-8的網頁但IE8一片空白 UTF8編碼的網頁在Firefox 正常顯示、但IE8 就是空白,IE8編碼設定是「自動偵測」可是自動偵測到的是 big5...