Mysql 检查索引大小、表空间大小和表信息情况——筑梦之路

直接上sql命令

${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}';
/*
   其中“database”为你所要查看的数据库
*/
 
/*
2.查看表空间
*/
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 | 
+-----------------+
*/
/*
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}';

猜你喜欢

转载自blog.csdn.net/qq_34777982/article/details/127071613
今日推荐