How to get the size of the tables of a MySQL database?


To get the size of the tables of a MySQL database, you can use the “information_schema.tables”.

Here is the syntax to know the size of all tables.

SELECT TABLE_NAME AS `ALLTABLESNAME`, ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024) AS `TABLESIZEIN(MB)`
   FROM information_schema.TABLES WHERE TABLE_SCHEMA = "yourDatabaseName"
   ORDER BY (DATA_LENGTH + INDEX_LENGTH) ASC;

Let us apply the above syntax to get the size of the tables.

mysql> SELECT TABLE_NAME AS `ALLTABLESNAME`, ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024) AS `TABLESIZEIN(MB)`
   ->  FROM information_schema.TABLES WHERE TABLE_SCHEMA = "business"
   -> ORDER BY (DATA_LENGTH + INDEX_LENGTH) ASC;

Sample Output.

+------------------------------------------------------------------+-----------------+
| ALLTABLESNAME                                                    | TABLESIZEIN(MB) |
+------------------------------------------------------------------+-----------------+
| studentrecordwithmyisam                                          |               0 |
| querydatedemo                                                    |               1 |
| rownumberdemo                                                    |               0 |
| secondtable                                                      |               0 |
| spacecolumn                                                      |               2 |
| table1                                                           |               0 |
| tbldemotrail                                                     |               2 |
| tblstudent                                                       |               0 |
| timestamptodatedemo                                              |               1 |
| uniqueconstraintdemo                                             |               0 |
| usernameandpassworddemo                                          |               2 |
| addingunique                                                     |               5 |
| bookindexes                                                      |               0 |
| tblf                                                             |               0 |
| uniquedemo                                                       |               2 |
| multipleindexdemo                                                |               0 |
| uniquedemo1                                                      |               0 |
| foreigntable                                                     |               5 |
| tabledemo2                                                       |               0 |
| foreigntabledemo                                                 |               2 |
| studentenrollment                                                |               0 |
| tabledemo3                                                       |               0 |
| duplicatebookindexes                                             |               0 |
| clonestudent                                                     |               2 |
| student                                                          |               0 |
+------------------------------------------------------------------+-----------------+
26 rows in set (10.29 sec)

Updated on: 30-Jul-2019

279 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements