檢視 MySQL 資料庫中每個表占用的空間大小

2021-07-16 00:27:33 字數 3170 閱讀 9269

我在做爬蟲的過程中,剛剛爬了幾萬條資料,放在了mysql資料庫裡,於是想看看mysql中這個資料庫大小以及每個表的大小,於是進行了查閱,主要查到了說法,組合在一起趕緊特別的好,如下。

第一種:

如果想知道mysql資料庫中每個表占用的空間、表記錄的行數的話,可以開啟mysql的 information_schema 資料庫。在該庫中有乙個 tables 表,這個表主要字段分別是:

table_schema : 資料庫名

table_name:表名

engine:所使用的儲存引擎

tables_rows:記錄數

data_length:資料大小

index_length:索引大小

其他欄位請參考mysql的手冊,我們只需要了解這幾個就足夠了。

所以要知道乙個表占用空間的大小,那就相當於是資料大小 + 索引大小即可。

sql:

select table_name,data_length+index_length,table_rows from tables where table_schema='資料庫名' and table_name='表名'

第二種:

1、進去指定schema 資料庫(存放了其他的資料庫的資訊)  

1mysql> use information_schema;

2databasechanged

2、查詢所有資料的大小 

1mysql>selectconcat(round(sum(data_length/1024/1024), 2),'mb')

2->asdatafromtables;

3+-----------+

4| data      |

5+-----------+

6| 6674.48mb |

7+-----------+

81 rowinset(16.81 sec)

3、檢視指定資料庫例項的大小,比如說資料庫 forexpert 

1mysql>selectconcat(round(sum(data_length/1024/1024), 2),'mb')

2->asdatafromtableswheretable_schema='forexpert';

3+-----------+

4| data      |

5+-----------+

6| 6542.30mb |

7+-----------+

81 rowinset(7.47 sec)

4、檢視指定資料庫的表的大小,比如說資料庫 forexpert 中的 member 表 

1mysql>selectconcat(round(sum(data_length/1024/1024),2),'mb')asdata

2->fromtableswheretable_schema='forexpert'

3->andtable_name='member';

4+--------+

5| data   |

6+--------+

7| 2.52mb |

8+--------+

91 rowinset(1.88 sec)

檢視 MySQL 資料庫中每個表占用的空間大小

如果想知道mysql資料庫中每個表占用的空間 表記錄的行數的話,可以開啟mysql的 information schema 資料庫。在該庫中有乙個 tables 表,這個表主要字段分別是 table schema 資料庫名 table name 表名 engine 所使用的儲存引擎 tables r...

檢視 MySQL 資料庫中每個表占用的空間大小

我在做爬蟲的過程中,剛剛爬了幾萬條資料,放在了mysql資料庫裡,於是想看看mysql中這個資料庫大小以及每個表的大小,於是進行了查閱,主要查到了說法,組合在一起趕緊特別的好,如下。第一種 如果想知道mysql資料庫中每個表占用的空間 表記錄的行數的話,可以開啟mysql的 information ...

檢視 MySQL 資料庫中每個表占用的空間大小

如果想知道mysql資料庫中每個表占用的空間 表記錄的行數的話,可以開啟mysql的 information schema 資料庫。在該庫中有乙個 tables 表,這個表主要字段分別是 table schema 資料庫名 table name 表名 engine 所使用的儲存引擎 tables r...