[精讚] [會員登入]
6528

[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] 建立叢集式資料庫3/4 -- DB1設置及DB PROXY 使用galera建立Mysql的叢集式資料庫 ,繼續修正第1DB及運作PROXY

[Mysql/MariaDB] 加解密函數 Mysql/MariaDB上的加解密函數

Mysql 安裝完畢要做的事 Mysql 安裝完畢後,該處理的流程

[MariaDB] Centos 7安裝mariadb + apache + php + phpmyadmin Centos 7安裝mariadb+apache+php+phpmyadmin

[Mysql/MariaDB] 清除及設定 MySQL 的死連接 mysql 伺服器若有太多的連接,無疑的會耗用非常多的資源,若資源耗盡會影響新的連線,勢必要做一些調整

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

我有話要說

>>

限制:留言最高字數1000字。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

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

談借錢 人借錢時手心向上頭向下,人還錢時手心向下頭向上

[jQuery] select 元件的取值及給值 html中的元件select,在jquery中要如何使用?

[Freebsd] 使用 ADSL 撥接上網 Freebsd上要使用 ADSL 撥接上網,該如何設定?

Linux shell 的date表示法 linux下SHELL中的date表示法