mysql 檢視資料庫及表大小以及資料庫擴容評估

2022-03-11 22:55:23 字數 3184 閱讀 8636

1.檢視資料庫資料儲存的位置

2.檢視資料庫大小

2.1information_shema 每個資料庫都有乙個原資料庫,記錄和儲存了當前 mysql 所有資料庫及表的儲存資訊,包含列,索引,大小,字段等等:

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許可權

2.2通過 information_shema 檢視資料庫或表的大小

a. 查詢所有資料庫容量大小:

select

table_schema as '資料庫',sum(table_rows) as '記錄數',

sum(truncate(data_length/1024/1024, 2)) as '資料容量(mb)',

sum(truncate(index_length/1024/1024, 2)) as '索引容量(mb)'from information_schema.tables

group by table_schema

order by sum(data_length) desc, sum(index_length) desc;

b. 檢視所有資料庫各表容量大小

select

table_schema as'

資料庫'

,table_name as'

表名',table_rows as'

記錄數'

,truncate(data_length/

1024

/1024, 2) as

'資料容量(mb)',

truncate(index_length/

1024

/1024, 2) as

'索引容量(mb)

'from

information_schema.tables

order

by data_length desc, index_length desc;

c. 檢視指定資料庫容量大小

select

table_schema as'

資料庫'

,sum(table_rows) as

'記錄數',

sum(truncate(data_length/

1024

/1024, 2)) as

'資料容量(mb)',

sum(truncate(index_length/

1024

/1024, 2)) as

'索引容量(mb)

'from

information_schema.tables

where table_schema=

'mysql

';

d.  檢視指定資料庫各表容量大小

select

table_schema as'

資料庫'

,table_name as'

表名',table_rows as'

記錄數'

,truncate(data_length/

1024

/1024, 2) as

'資料容量(mb)',

truncate(index_length/

1024

/1024, 2) as

'索引容量(mb)

'from

information_schema.tables

where table_schema=

'mysql

'order

by data_length desc, index_length desc;

3.資料庫擴容:當系統穩定,業務不斷積累時,資料庫儲存的資料越來越多,這時候就需要對資料庫進行擴容。  

擴容的大小評估依據可以通過 以上 2 中的方式查詢當前資料量的大小,以及未來業務發展需要儲存多久,以及儲存多少進行動態評估。  

如下圖,為本地資料量,當擴容評估時,可根據當前業務執行的時間段增長的資料儲存量,進行評估,

如果業務一年內的資料儲存量是 10gb, 資料儲存擴容時的需求為我要儲存三年資料,則資料庫至少需要擴容到 30gb 才夠用。

mysql 檢視資料庫 表 大小

記錄備忘 1 進去指定schema 資料庫 存放了其他的資料庫的資訊 use information schema 2 查詢所有資料的大小 select concat round sum data length 1024 1024 2 mb as data from tables 3 檢視指定資料庫...

mysql檢視資料庫大小或者表大小

要想知道每個資料庫的大小的話,步驟如下 1 進入information schema 資料庫 存放了資料庫的資訊 use information schema 2 查詢所有資料庫的大小 select concat round sum data length 1024 1024 2 mb as dat...

MYSQL 檢視資料庫大小以及表的大小

在mysql的information schema資料庫下執行 一 檢視每個資料庫的大小 select table schema,concat round sum data length 1024 1024 2 mb as data from tables group by table schema...