首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL SHOW 命令全家族速查:資料庫、表、索引、權限、執行緒、狀態、變數

     編輯:MySQL 資料庫相關知識

SHOW 是 MySQL 管理員與開發者最常用的內省指令族群,涵蓋 **元資料**、**運行狀態**、**配置參數**、**權限**、**複寫**、**引擎** 等面向。本文按功能分類彙整 20+ 常用 SHOW 指令,附輸出關鍵欄位說明。

一、元資料類

指令用途關鍵輸出欄位
SHOW DATABASES;列出所有資料庫Database
SHOW TABLES [FROM db];列出資料庫所有表Tables_in_db
SHOW COLUMNS FROM tbl [FROM db];表結構 (同 DESC tbl)Field, Type, Null, Key, Default, Extra
SHOW CREATE TABLE tbl;建表 SQL (含引擎、字元集、分區、索引)Table, Create Table
SHOW CREATE DATABASE db;建庫 SQLDatabase, Create Database
SHOW INDEX FROM tbl [FROM db];索引詳情Table, Non_unique, Key_name, Seq_in_index, Column_name, Collation, Cardinality, Sub_part, Packed, Null, Index_type, Comment
SHOW TABLE STATUS [FROM db];表狀態統計Name, Engine, Version, Row_format, Rows, Avg_row_length, Data_length, Index_length, Data_free, Auto_increment, Create_time, Update_time, Check_time, Collation, Checksum, Create_options, Comment

二、權限與使用者類

指令用途關鍵輸出
SHOW GRANTS [FOR 'user'@'host'];顯示使用者權限 (可直接複製執行)Grants for user@host
SHOW PRIVILEGES;列出伺服器支援的所有權限類型Privilege, Context, Comment
SHOW CREATE USER 'user'@'host';8.0+ 顯示建立使用者的完整語句 (含認證插件、密碼雜湊)CREATE USER ...

三、運行狀態與效能類

指令用途關鍵觀察指標
SHOW PROCESSLIST;當前執行緒 (連線)Id, User, Host, db, Command, Time, State, Info — 找長時間 Time、State=Sending data/Locked
SHOW FULL PROCESSLIST;完整 SQL 文本 (Info 不截斷)同上,Info 顯示完整查詢
SHOW STATUS [LIKE 'pattern'];狀態變數 (會話/全域)Threads_connected, Threads_running, Questions, Slow_queries, Innodb_buffer_pool_reads, Handler_read_rnd_next
SHOW GLOBAL STATUS;全域狀態 (累積計數器)同上,適合監控採集
SHOW ENGINE INNODB STATUS;InnoDB 內部狀態 (鎖、事務、緩衝池、Purge、日誌)大量文字輸出,關注 TRANSACTIONS, FILE I/O, BUFFER POOL AND MEMORY, LOG
SHOW ENGINE INNODB MUTEX;Mutex 等待統計Type, Name, Status

四、配置與系統類

指令用途關鍵輸出
SHOW VARIABLES [LIKE 'pattern'];系統變數 (會話/全域)Variable_name, Value — 搜尋 max_connections, innodb_buffer_pool_size, sql_mode
SHOW GLOBAL VARIABLES;全域配置同上
SHOW WARNINGS;上一條語句的警告/通知Level, Code, Message
SHOW ERRORS;上一條語句的錯誤 (嚴重級)Level, Code, Message
SHOW CHARACTER SET [LIKE 'pat'];支援字元集Charset, Description, Default collation, Maxlen
SHOW COLLATION [LIKE 'pat'];支援校對規則Collation, Charset, Id, Default, Compiled, Sortlen
SHOW ENGINES;支援儲存引擎Engine, Support, Comment, Transactions, XA, Savepoints
SHOW PLUGINS;已載入插件Name, Status, Type, Library, License

五、複寫與二進位日誌類

指令用途
SHOW MASTER STATUS;主庫 Binlog 位置 (File, Position, Binlog_Do_DB, Binlog_Ignore_DB, Executed_Gtid_Set)
SHOW SLAVE STATUS / SHOW REPLICA STATUS (8.0+);從庫複寫狀態 (Seconds_Behind_Master, Slave_IO_Running, Slave_SQL_Running, Last_Error, GTID)
SHOW BINARY LOGS;列出所有 Binlog 檔案大小
SHOW BINLOG EVENTS [IN 'file'] [FROM pos] [LIMIT n];解析 Binlog 事件
SHOW RELAYLOG EVENTS ...;解析 Relay Log

六、診斷與優化實戰組合拳

-- 1. 找出最耗資源的查詢
SHOW FULL PROCESSLIST;  -- 即時
-- 配合慢查詢日誌長期分析

-- 2. 檢查鎖等待
SHOW ENGINE INNODB STATUS\G
-- 關注 TRANSACTIONS 區塊的 LOCK WAIT

-- 3. 監控緩衝池命中率
SHOW GLOBAL STATUS LIKE 'Innodb_buffer_pool_read%';
-- 命中率 = 1 - (Innodb_buffer_pool_reads / Innodb_buffer_pool_read_requests)

-- 4. 檢查表碎片
SHOW TABLE STATUS LIKE 'tbl_name'\G
-- Data_free > 0 且佔比大 → OPTIMIZE TABLE

-- 5. 驗證權限生效
SHOW GRANTS FOR CURRENT_USER();

七、權限說明

  • 大多數 SHOW 需 SHOW DATABASES、PROCESS (查看所有執行緒)、REPLICATION CLIENT (複寫狀態) 權限。
  • 普通使用者僅能看到自己權限內的資料庫/表/執行緒。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved