mysql查詢表的資料大小

2022-08-27 18:27:07 字數 1569 閱讀 9672

在需要備份資料庫裡面的資料時,我們需要知道資料庫占用了多少磁碟大小,可以通過一些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表:提供各個字符集的對照資訊。

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

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

routines表:記錄了儲存過程和函式的資訊,不包含自定義的過程或函式資訊。

views表:記錄了檢視資訊,需要有show view許可權。

triggers表:儲存了觸發器的資訊,需要有super許可權。

mysql查詢表的資料大小

通過sql語句查詢整個資料庫的容量,或是單獨檢視表所佔容量。1 要查詢表所佔的容量,就是把錶的資料和索引加起來就可以了 select sum data length sum index length from information schema.tables where table schema ...

mysql查詢表的資料大小

在需要備份資料庫裡面的資料時,我們需要知道資料庫占用了多少磁碟大小,可以通過一些sql語句查詢到整個資料庫的容量,也可以單獨檢視表所佔容量。1 在information schema庫中要查詢表所佔的容量,就是把錶的資料和索引加起來就可以了 select sum data length sum in...

mysql 查詢資料大小

1.命令列方式 前言介紹 要知道乙個表占用空間的大小,那就相當於是 資料大小 索引大小 即可。show databases 檢視有多少 database,也叫做table schema 有點串用 1.1 檢視單個database 或是table schema 占用的大小 sql view plain...