首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

MySQL 查看數據庫相關信息常用命令大全

     編輯:MySQL 綜合教學

MySQL 查看數據庫相關信息常用命令大全

運維與開發過程中,頻繁需要檢查數據庫狀態、配置、大小、編碼、連接數等信息。本文彙總 11 類最常用的查看命令,附帶實際輸出示例與解讀說明,可作為日常速查手冊。

1. 顯示所有數據庫

SHOW DATABASES;

輸出:information_schema, mysql, performance_schema, test, 業務庫...

2. 查看當前使用的數據庫

SELECT DATABASE();
-- 或
STATUS;  -- 輸出中含 Current database

3. 查看數據庫監聽埠

SHOW VARIABLES LIKE 'port';
-- 輸出:3306(預設)

4. 查看數據庫大小(含索引)

USE information_schema;
SELECT CONCAT(ROUND(SUM(data_length + index_length) / 1024 / 1024, 2), ' MB') AS 'DB Size'
FROM tables 
WHERE table_schema = '你的資料庫名';

分別查看數據與索引大小

-- 僅數據大小
SELECT CONCAT(ROUND(SUM(data_length) / 1024 / 1024, 2), ' MB') AS 'Data Size'
FROM tables WHERE table_schema = 'INVOICE';

-- 僅索引大小
SELECT CONCAT(ROUND(SUM(index_length) / 1024 / 1024, 2), ' MB') AS 'Index Size'
FROM tables WHERE table_schema = 'INVOICE';

5. 查看字符集與排序規則

SHOW VARIABLES LIKE 'character%';
SHOW VARIABLES LIKE 'collation%';
-- 或
STATUS;  -- 輸出含 Server/Db/Client/Conn characterset

關鍵變量解讀

變量含義建議值
character_set_client客戶端發送編碼utf8mb4
character_set_connection連接層轉換編碼utf8mb4
character_set_database當前庫預設編碼utf8mb4
character_set_results結果集返回編碼utf8mb4
character_set_server服務端預設編碼utf8mb4
collation_connection連接層排序規則utf8mb4_general_ci

核心原則:客戶端、連接、結果集、庫、表、列編碼**全鏈路一致**,才能避免亂碼。

6. 查看表信息

SHOW TABLES;
-- 或指定庫
SELECT * FROM information_schema.tables WHERE table_schema = 'dbname';
-- 查特定表
SELECT * FROM information_schema.tables WHERE table_name = 'tablename';

7. 查看所有用戶

SELECT DISTINCT CONCAT('USER: \'', User, '\'@\'', Host, '\';') AS query FROM mysql.user;

8. 查看特定用戶權限

SHOW GRANTS FOR 'root'@'localhost';

9. 查看最大連接數配置

SHOW VARIABLES LIKE 'max_connections';
-- 預設 151,生產建議調大至 1000+

10. 查看當前連接與線程狀態

SHOW STATUS LIKE 'Threads%';
變量含義
Threads_connected當前建立的連接數(每連接一線程)
Threads_running當前活躍執行查詢的線程數(非 Sleep)
Threads_cached線程緩存池中空閒線程數
Threads_created啟動以來累計創建線程數(過大說明 thread_cache_size 偏小)

11. 查看數據文件存放路徑

SHOW VARIABLES LIKE 'datadir';
-- 輸出示例:/mysqldata/mysql/ 或 /var/lib/mysql/

補充:常用組合查詢

-- 當前併發查詢
SHOW PROCESSLIST;
-- 或
SELECT * FROM information_schema.processlist WHERE COMMAND != 'Sleep';

-- 慢查詢配置
SHOW VARIABLES LIKE 'slow_query%';
SHOW VARIABLES LIKE 'long_query_time';

-- InnoDB 緩衝池狀態
SHOW ENGINE INNODB STATUS;

-- 表結構
DESC tablename;
SHOW CREATE TABLE tablename;

建議將常用命令封裝為 Shell 腳本或別名,提升日常排查效率。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved