注:database为要查看的数据库名称
1、查看索引
(1)单位是GB
SELECT CONCAT(ROUND(SUM(index_length)/(1024*1024*1024), 6), ' GB') AS 'Total Index Size'
FROM information_schema.TABLES WHERE table_schema LIKE '${database}';
+------------------+
| Total Index Size |
+------------------+
| 1.70 GB |
+------------------+
(2)单位是MB
SELECT CONCAT(ROUND(SUM(index_length)/(1024*1024), 6), ' MB') AS 'Total Index Size'
FROM information_schema.TABLES WHERE table_schema LIKE '${database}';
2、查看表空间
(1)单位是GB
SELECT CONCAT(ROUND(SUM(data_length)/(1024*1024*1024), 6), ' GB') AS 'Total Data Size'
FROM information_schema.TABLES WHERE table_schema LIKE '${database}';
+-----------------+
| Total Data Size |
+-----------------+
| 3.01 GB |
+-----------------+
(2)单位是MB
SELECT CONCAT(ROUND(SUM(data_length)/(1024*1024), 6), ' GB') AS 'Total Data Size'
FROM information_schema.TABLES WHERE table_schema LIKE '${database}';
(3)单位是Bytes
mysql> show table status like 't1' \G
*************************** 1. row ***
Name: t1
Engine: InnoDB
Version: 10
Row_format: Compact
Rows: 0
Avg_row_length: 0
Data_length: 18381
Max_data_length: 0
Index_length: 0
Data_free: 2198304 //查看此处值
Auto_increment: NULL
Create_time: 2018-03-21 11:09:20
Update_time: NULL
Check_time: NULL
Collation: latin1_swedish_ci
Checksum: NULL
Create_options:
Comment:
1 row in set (0.00 sec)
mysql > select * from INFORMATION_SCHEMA.TABLES where ENGINE='InnoDB';
3、查看数据库所有表的信息
SELECT CONCAT(table_schema,'.',table_name) AS 'Table Name',
table_rows AS 'Number of Rows',
CONCAT(ROUND(data_length/(1024*1024*1024),6),' G') AS 'Data Size',
CONCAT(ROUND(index_length/(1024*1024*1024),6),' G') AS 'Index Size' ,
CONCAT(ROUND((data_length+index_length)/(1024*1024*1024),6),' G') AS'Total'
FROM information_schema.TABLES
WHERE table_schema LIKE '${database}';
一入运维深似海,从此不见彼岸花