查看數據庫各表的大小

轉自:http://www.111cn.net/database/mysql/53890.htm

http://blog.csdn.net/atec2000/article/details/7041352

information_schema 庫的 TABLES 表,主要字段分別是:

TABLE_SCHEMA : 數據庫
TABLE_NAME:表名
ENGINE:所使用的存儲引擎
TABLES_ROWS:記錄數
DATA_LENGTH:數據大小

INDEX_LENGTH:索引大小


要想知道每個數據庫的大小的話,步驟如下:

1、進入information_schema 數據庫(存放了其他的數據庫的信息)

use information_schema;

 

2、查詢所有數據的大小:

select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables;

 

3、查看指定數據庫的大小:

比如查看數據庫home的大小

select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables where table_schema='home';

 

4、查看指定數據庫的某個表的大小

比如查看數據庫home中 members 表的大小

select concat(round(sum(data_length/1024/1024),2),'MB') as data from tables where table_schema='home' and table_name='members';



在需要備份數據庫裏面的數據時,我們需要知道數據庫佔用了多少磁盤大小,可以通過一些sql語句查詢到整個數據庫的容量,也可以單獨查看錶所佔容量。

  1、要查詢表所佔的容量,就是把表的數據和索引加起來就可以了

select sum(DATA_LENGTH)+sum(INDEX_LENGTH) from information_schema.tables 
where table_schema='數據庫名';

  上面獲取的結果是以字節爲單位的,可以通過%1024在%1024的到M爲單位的結果。

  2、查詢所有的數據大小

select concat(round(sum(DATA_LENGTH/1024/1024),2),'M') from tables; -- 查詢所有的數據大小

  3、查詢某個表的數據

select concat(round(sum(DATA_LENGTH/1024/1024),2),'M') from tables where table_schema=’數據庫名’ AND table_name=’表名’; 

 

在mysql中有一個information_schema數據庫,這個數據庫中裝的是mysql的元數據,包括數據庫信息、數據庫中表的信息等。所以要想查詢數據庫佔用磁盤的空間大小可以通

  過對information_schema數據庫進行操作。

information_schema中的表主要有:

  schemata表:這個表裏面主要是存儲在mysql中的所有的數據庫的信息

  tables表:這個表裏存儲了所有數據庫中的表的信息,包括每個表有多少個列等信息。

  columns表:這個表存儲了所有表中的表字段信息。

  statistics表:存儲了表中索引的信息。

  user_privileges表:存儲了用戶的權限信息。

  schema_privileges表:存儲了數據庫權限。

  table_privileges表:存儲了表的權限。

  column_privileges表:存儲了列的權限信息。

  character_sets表:存儲了mysql可以用的字符集的信息。

  collations表:提供各個字符集的對照信息。

  collation_character_set_applicability表:相當於collations表和character_sets表的前兩個字段的一個對比,記錄了字符集之間的對照信息。

  table_constraints表:這個表主要是用於記錄表的描述存在約束的表和約束類型。

  key_column_usage表:記錄具有約束的列。

  routines表:記錄了存儲過程和函數的信息,不包含自定義的過程或函數信息。

  views表:記錄了視圖信息,需要有show view權限。

  triggers表:存儲了觸發器的信息,需要有super權限。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章