這篇文章帶給大家的內容是關於MySQL語句查看各個資料庫佔用空間的方法(附程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。
select table_schema, sum(DATA_LENGTH) sum(INDEX_LENGTH) from information_schema.tables group by table_schema;
#在需要備份資料庫內的資料時,我們需要知道資料庫內的資料時,我們需要知道資料庫內的資料時,我們需要知道資料庫佔用了多少磁碟大小,可以透過一些sql語句查詢到整個資料庫的容量,也可以單獨查看表所佔容量。 (推薦課程:MySQL影片教學)
1、要查詢表所佔的容量,就是把表的資料和索引加起來就可以了
select sum(DATA_LENGTH)+sum(INDEX_LENGTH) from information_schema.tables where table_schema='数据库名';
上面所得的結果是以位元組為單位的,可以透過 24在 24的到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權限。
以上是MySQL語句查看各個資料庫佔用空間的方法(附程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!