今天給大家分享mysql常用的服務(wù)器狀態(tài)命令 ,希望對大家日常運維mysql數(shù)據(jù)庫或者調(diào)優(yōu)提供一些幫助!
1、查詢當前服務(wù)器運行的進程
第一個命令
show processlist
查詢正在運行的所有MySQL進程,包括進程ID、用戶、主機、當前數(shù)據(jù)庫、命令、時間等信息。
第二個命令
select * from information_schema.processlist
where command = 'query';
篩選出所有正在運行的SQL語句,可以通過ORDER BY語句來按照時間排序
說明:使用該命令可以進行SQL語句可以用where語句進行篩選,比如數(shù)據(jù)庫名稱、命令類型等。
2、查詢最大鏈接數(shù)
show variables like '%max_connections%';
3、查詢當前鏈接數(shù)
show status like 'Thread%';
4、展示當前正在執(zhí)行的sql語句
-- 查詢慢MySQL查詢的條數(shù)
Show status like 'slow_queries';
-- 展示當前正在執(zhí)行的sql語句
show profiles;
5、查詢當前MySQL當中記錄的慢查詢條數(shù)
注意:需要配置開啟慢查詢記錄。
配置方式如下:
修改MySQL配置參數(shù),根據(jù)操作系統(tǒng)不同修改的配置文件如下:
Linux:my.cnf
Windows:my.ini
增加如下配置:
[mysqld]
long_query_time=2 // 慢查詢的定義時間(超過2秒就是慢查詢)// 慢查詢log日志記錄( slow_query_log)
## 5.5 版本以下配置
log-slow-queries="mysql-slow-query.log"
## 5.5 版本及以上配置
slow-query-log=on
slow_query_log_file="mysql-slow-query.log"//記錄沒有使用索引的query
log-query-not-using-indexes
-- 查詢慢查詢的日志路徑
show variables like 'slow_query_log_file';
-- 使用msql提供的日志分析工具mysqldumpslow分析找出查詢時間最慢的五條sql
mysqldumpslow -s 5 /mysql/mysql01_slow.log
6、展示Mysql服務(wù)器從啟動到現(xiàn)在持續(xù)運行的時間
show status like 'uptime';
說明:Value的單位為秒
7、查詢數(shù)據(jù)庫存儲占用情況
-- 索引+數(shù)據(jù)
SELECT table_schema AS `Database`,
SUM(data_length + index_length) / 1024 / 1024 AS `Size (MB)`
FROM information_schema.TABLES GROUP BY table_schema;
說明:索引+數(shù)據(jù)之后就是完整的容量了。
8、查詢服務(wù)器啟動以來的執(zhí)行查詢的總次數(shù)
SHOW GLOBAL STATUS LIKE 'Com_select';
9、查詢服務(wù)器啟動以來的執(zhí)行新增的總次數(shù)
SHOW GLOBAL STATUS LIKE 'Com_insert';
10、查詢服務(wù)器啟動以來的執(zhí)行更新的總次數(shù)
SHOW GLOBAL STATUS LIKE 'Com_update';
11、查詢服務(wù)器啟動以來的執(zhí)行刪除的總次數(shù)
SHOW GLOBAL STATUS LIKE 'Com_delete';
說明:基于統(tǒng)計數(shù)據(jù)庫的增刪改查的次數(shù),可以給數(shù)據(jù)庫是否要做讀寫分離提供依據(jù)。
12、總結(jié)
以上是一些常用的服務(wù)器狀態(tài)運行命令,大家如果還有比較常用的命令歡迎補充交流!
小明工作助手上線了,功能包括資源列表、圖片處理、短視頻去水印、在線娛樂等功能,歡迎免費體驗!
優(yōu)秀干貨作者推薦
小編十多年工作經(jīng)驗積累的電腦軟件分享給大家
CSDN:https://blog.csdn.net/xishining
個人博客網(wǎng)站:https://programmerblog.xyz