在 MySQL 中,SHOW 命令是一個非常實用的工具,用于查詢數據庫元數據(如數據庫、表、列、索引等信息)。以下是常見的 SHOW 命令及其用法:
1. 顯示所有數據庫
SHOW DATABASES;
- 列出服務器上的所有數據庫。
2. 顯示當前數據庫中的所有表
SHOW TABLES;
- 列出當前選中數據庫中的所有表。
3. 顯示表的字段信息
SHOW COLUMNS FROM table_name;
-- 或者使用更簡潔的方式:
SHOW FIELDS FROM table_name;
- 列出指定表的所有字段及其屬性(字段名、類型、是否為空、鍵、默認值等)。
4. 顯示表的創建語句
SHOW CREATE TABLE table_name;
- 返回創建表的完整 SQL 語句。
5. 顯示視圖的創建語句
SHOW CREATE VIEW view_name;
- 返回創建視圖的完整 SQL 語句。
6. 顯示當前數據庫中的存儲過程或函數
SHOW PROCEDURE STATUS;
SHOW FUNCTION STATUS;
- 列出所有的存儲過程或函數。
7. 顯示存儲過程或函數的定義
SHOW CREATE PROCEDURE procedure_name;
SHOW CREATE FUNCTION function_name;
- 返回存儲過程或函數的定義語句。
8. 顯示當前用戶權限
SHOW GRANTS FOR 'username'@'host';
- 顯示指定用戶的權限信息。
9. 顯示當前數據庫的狀態
SHOW STATUS;
- 顯示數據庫運行狀態的各種統計信息。
10. 顯示當前會話的變量
SHOW VARIABLES;
- 顯示系統配置變量的值。
11. 顯示索引信息
SHOW INDEX FROM table_name;
- 顯示指定表的所有索引信息。
12. 顯示字符集和排序規則
SHOW CHARACTER SET;
SHOW COLLATION;
- 分別列出支持的字符集和排序規則。
13. 顯示正在運行的線程
SHOW PROCESSLIST;
- 顯示當前服務器上正在運行的所有線程(進程)。
14. 顯示日志狀態
SHOW BINLOG EVENTS;
SHOW MASTER STATUS;
SHOW SLAVE STATUS;
- 查看二進制日志事件、主從復制狀態等。
15. 顯示觸發器信息
SHOW TRIGGERS;
- 列出當前數據庫中的所有觸發器。
注意事項
- 使用 SHOW 命令時,需要確保有相應的權限。
- 對于復雜的元數據查詢,也可以使用 INFORMATION_SCHEMA 系統數據庫。