在日常數據庫管理中,了解每張表和每個數據庫占用了多少磁盤空間是非常關鍵的。這不僅有助于我們監控數據增長,還能為性能優化提供依據。
Google Gemini中國版調用Google Gemini API,中國大陸優化,完全免費!https://gemini.danielmind.tech/
查詢所有數據庫的磁盤使用情況
如果你想快速了解整個 MySQL 實例中每個數據庫的大小,可以使用以下方法來獲取各個 schema 占用的磁盤空間總量。
操作步驟:
-
打開查詢窗口:在 MySQL Workbench 中點擊“+”或“新建查詢標簽頁”。
-
輸入 SQL 語句:
SELECT table_schema AS `Database`,
ROUND(SUM((data_length + index_length) / 1024 / 1024), 2) AS `Total Size (MB)`
FROM information_schema.TABLES
GROUP BY table_schema
ORDER BY SUM(data_length + index_length) DESC;
-
執行查詢:點擊“執行”按鈕。
-
查看結果:你將看到一個匯總列表,顯示每個數據庫的總磁盤空間使用情況,單位為 MB,并按大小從大到小排序。
這個結果可以幫助你判斷哪些數據庫占用了較多資源,是否存在異常增長的數據庫。
查看某個數據庫中各表的大小(Redirecting...)
執行方法:
-
打開 MySQL Workbench 并連接服務器。
-
選擇你感興趣的 schema。
-
在查詢編輯器中粘貼以下 SQL:
SELECT table_name AS `Table`,
ROUND(((data_length + index_length) / 1024 / 1024), 2) AS `Size (MB)`
FROM information_schema.TABLES
WHERE table_schema = "your_database_name"
ORDER BY (data_length + index_length) DESC;
?? 將 "your_database_name"
替換為實際想查看的數據庫名稱。
-
點擊執行。
-
查看輸出結果:你將看到該數據庫中所有表的大小列表,按磁盤使用量從大到小排序。
為什么這些信息很重要?
這些數據雖然是估算值,但在絕大多數場景下已經足夠準確。它們可以幫助你識別:
-
哪些表或數據庫占用了大量磁盤空間;
-
數據是否有不合理的增長;
-
哪些地方需要進行清理、歸檔或優化。