使用MySQL自身命令獲取數據庫服務狀態。
連接數
-- 最大使用連接數
show status like 'Max_used_connections';
-- 系統配置的最大連接數
show global variables like '%max_connections';
-- 當前打開的連接數
show status like 'Threads_connected';
緩存
-- 未從緩沖池讀取的次數
show status like 'Innodb_buffer_pool_reads';
-- 從緩沖池讀取的次數
show status like 'Innodb_buffer_pool_read_requests';
-- 緩沖池的總頁數
show status like 'Innodb_buffer_pool_pages_total';
-- 緩沖池空閑的頁數
show status like 'Innodb_buffer_pool_pages_free';
-- 緩存命中率
-- (1-Innodb_buffer_pool_reads/Innodb_buffer_pool_read_requests)*100%
-- 緩存池使用率
-- ((Innodb_buffer_pool_pages_total-Innodb_buffer_pool_pages_free)/Innodb_buffer_pool_pages_total)*100%
鎖
-- 鎖等待個數
show status like 'Innodb_row_lock_waits';
-- 平均每次鎖等待時間
show status like 'Innodb_row_lock_time_avg';
-- 是否存在表鎖
show open TABLES where in_use>0;
慢查詢日志
-- 是否開啟慢查詢。開啟命令:set global slow_query_log=1
show variables like 'slow_query_log';
-- 查看慢查詢的閾值
show variables like 'long_query_time';
-- 查看 mysql 慢 sql 目錄
show variables like 'slow_query_log_file';
- 使用命令行查看耗時最長的10個SQL語句
# 查看耗時最長的10個SQL語句
mysqldumpslow -s at -t 10 /var/log/mysql/slow.log
# 查看
未分類
-- insert數量
show status like 'Com_insert';
-- delete 數量
show status like 'Com_delete';
-- update 數量
show status like 'Com_update';
-- select 數量
show status like 'Com_select';
-- 發送吞吐量
show status like 'Bytes_sent';
-- 接收吞吐量
show status like 'Bytes_received';