查詢MySQL資料庫,MySQL表的大小
查詢資料庫,表大小
- 檢視資料庫列表
- 查詢所有資料庫的總大小
- 統計所有庫資料量
- 統計每個庫大小
- 檢視指定資料庫的大小
- 檢視所有資料庫各個容量大小
- 檢視所有資料庫各個表容量大小
- 檢視指定資料庫容量大小
- 檢視指定資料庫各個表容量大小
-- 檢視資料庫列表,並選擇進入information_schema
SHOW DATABASES;
USE information_schema;
-- 查詢所有資料庫的總大小
SELECT concat(round(SUM(DATA_LENGTH / 1024 / 1024), 2), 'MB') AS DATA
FROM TABLES;
-- 統計所有庫資料量,注:每張表資料量=AVG_ROW_LENGTH*TABLE_ROWS+INDEX_LENGTH
SELECT concat(ROUND(SUM((AVG_ROW_LENGTH * TABLE_ROWS + INDEX_LENGTH) / 1024 / 1024), 2), 'MB') AS 'Total(MB)'
FROM information_schema.TABLES;
-- 統計每個庫大小
SELECT table_schema
, round(SUM((AVG_ROW_LENGTH * TABLE_ROWS + INDEX_LENGTH) / 1024 / 1024), 2) AS 'Total(MB)'
FROM information_schema.TABLES
GROUP BY table_schema;
-- 檢視指定資料庫的大小,例如資料庫mysql,方法如下:
SELECT concat(round(SUM(DATA_LENGTH / 1024 / 1024), 2), 'MB') AS DATA
FROM TABLES
WHERE table_schema = 'mysql';
-- 檢視所有資料庫各個容量大小
SELECT table_schema AS '資料庫名', SUM(table_rows) AS '資料行數'
, SUM(TRUNCATE(data_length / 1024 / 1024, 2)) AS '資料容量(MB)'
, SUM(TRUNCATE(index_length / 1024 / 1024, 2)) AS '索引容量(MB)'
FROM information_schema.TABLES
GROUP BY table_schema
ORDER BY SUM(data_length) DESC, SUM(index_length) DESC;
-- 檢視所有資料庫各個表容量大小
SELECT table_schema AS '資料庫', table_name AS '表名', table_rows AS '記錄數'
, TRUNCATE(data_length / 1024 / 1024, 2) AS '資料容量(MB)'
, TRUNCATE(index_length / 1024 / 1024, 2) AS '索引容量(MB)'
FROM information_schema.TABLES
ORDER BY data_length DESC, index_length DESC;
-- 檢視指定資料庫容量大小,例:檢視mysql庫容量大小
SELECT table_schema AS '資料庫', SUM(table_rows) AS '記錄數'
, SUM(TRUNCATE(data_length / 1024 / 1024, 2)) AS '資料容量(MB)'
, SUM(TRUNCATE(index_length / 1024 / 1024, 2)) AS '索引容量(MB)'
FROM information_schema.TABLES
WHERE table_schema = 'mysql';
-- 檢視指定資料庫各個表容量大小,例:檢視mysql庫各表容量大小
SELECT table_schema AS '資料庫', table_name AS '表名', table_rows AS '記錄數'
, TRUNCATE(data_length / 1024 / 1024, 2) AS '資料容量(MB)'
, TRUNCATE(index_length / 1024 / 1024, 2) AS '索引容量(MB)'
FROM information_schema.TABLES
WHERE table_schema = 'mysql'
ORDER BY data_length DESC, index_length DESC;
MySQL中information_schema.TABLES欄位說明
欄位 | 含義 |
---|---|
Table_catalog | 資料表登記目錄 |
Table_schema | 資料表所屬的資料庫名 |
Table_name | 表名稱 |
Table_type | 表型別[system view|base table] |
Engine | 使用的資料庫引擎[MyISAM|CSV|InnoDB] |
Version | 版本,預設值10 |
Row_format | 行格式[Compact|Dynamic|Fixed] |
Table_rows | 表裡所存多少行資料 |
Avg_row_length | 平均行長度 |
Data_length | 資料長度 |
Max_data_length | 最大資料長度 |
Index_length | 索引長度 |
Data_free | 空間碎片 |
Auto_increment | 做自增主鍵的自動增量當前值 |
Create_time | 表的建立時間 |
Update_time | 表的更新時間 |
Check_time | 表的檢查時間 |
Table_collation | 表的字元校驗編碼集 |
Checksum | 校驗和 |
Create_options | 建立選項 |
Table_comment | 表的註釋、備註 |
舉例:
-- 檢視錶的大小,條數,可以查data_length,table_rows
SELECT TABLE_NAME
, concat(truncate(data_length / 1024 / 1024, 2), ' MB') AS data_size
, table_rows
FROM information_schema.tables
WHERE TABLE_SCHEMA = 'mysql'
AND TABLE_NAME IN ("db", "user");
相關文章
- MySQL 庫大小、表大小、索引大小查詢命令MySql索引
- 關於MySQL 查詢表資料大小的總結MySql
- MySQL(三) 資料庫表的查詢操作【重要】MySql資料庫
- mysql資料庫連表查詢的幾種方法MySql資料庫
- MySQL查詢資料庫中沒有主鍵的表MySql資料庫
- mysql 資料庫或者表空間使用查詢MySql資料庫
- mysql資料庫多表查詢MySql資料庫
- mysql資料庫容量查詢MySql資料庫
- mysql查詢表的資料體積MySql
- 查詢資料庫大小資料庫
- mysql資料庫查詢pdo的用法MySql資料庫
- 【資料庫】MySQL查詢優化資料庫MySql優化
- 查詢資料庫每個表佔用的大小資料庫
- MYSQL-檢視資料庫或表的大小MySql資料庫
- MySQL—-MySQL資料庫入門—-第四章 單表查詢MySql資料庫
- 優化mysql資料字典表查詢優化MySql
- MySQL資料庫基礎——多表查詢:子查詢MySql資料庫
- MySQL資料查詢MySql
- MYSQL查詢資料MySql
- mysql 5.7後使用sys資料庫下的表查詢資料庫效能狀況MySql資料庫
- PHP連線、查詢MySQL資料庫PHPMySql資料庫
- MySQL入門--查詢資料庫資訊MySql資料庫
- 查詢資料庫的資料量的大小資料庫
- MySQL資料庫 ---MySQL表的增刪改查(進階)MySql資料庫
- MYSQL中怎麼查詢LONGBLOB型別資料的大小MySql型別
- MySQL - 資料查詢 - 簡單查詢MySql
- SQLServer查詢所有資料庫大小SQLServer資料庫
- mysql資料庫優化之表的設計和慢查詢定位MySql資料庫優化
- 資料庫遞迴查詢:MySQL VS Sequelize資料庫遞迴MySql
- Excel資料庫轉MySQL,實現查詢Excel資料庫MySql
- mysql查詢表中日期最大的那條資料MySql
- 關於MySql資料庫設計表與查詢耗時分析MySql資料庫
- MySQL資料庫中庫、表名、欄位的大小寫問題MySql資料庫
- MySQL單表查詢MySql
- mysql鎖表查詢MySql
- MySQL 單表查詢MySql
- mysql連表查詢出現資料重複MySql
- MySQL命令檢視資料庫和表容量大小MySql資料庫