Размер базы/таблицы в Mysql

Размер базы/таблицы в Mysql

В моей статье «Размер базы/таблицы в Mysql»  я хочу рассказать о том, как можно в удобной форме проверить размер базы/таблицы в mysql. Приведу несколько наглядных примеров, чтобы можно было наглядно все увидеть.

Размер базы в Mysql

Чтобы проверить размер базы данных в красивой форме и в мб., выполните:

mysql> SELECT table_schema "databases name", sum( data_length + index_length) / 1024 / 1024 "Data Base Size in MB" FROM information_schema.TABLES GROUP BY table_schema ;

Например:

mysql> SELECT table_schema "databases name", sum( data_length + index_length) / 1024 / 1024 "Data Base Size in MB" FROM information_schema.TABLES GROUP BY table_schema ;
+-----------------------+----------------------+
| databases name | Data Base Size in MB |
+-----------------------+----------------------+
| bail_upgrade_prod | 1237.34664917 |
| bail_wordpress | 8.83991909 |
| information_schema | 0.00976563 |
| mysql | 3.07841969 |
| performance_schema | 0.00000000 |
+-----------------------+----------------------+
5 rows in set (0.01 sec)

Или вот подобная команда:

mysql> SELECT table_schema "DB Name", Round(Sum(data_length + index_length) / 1024 / 1024, 1) "DB Size in MB" FROM information_schema.tables GROUP BY table_schema;
+-----------------------+---------------+
| DB Name | DB Size in MB |
+-----------------------+---------------+
| bail_upgrade_prod | 1237.4 |
| bail_wordpress | 8.8 |
| information_schema | 0.0 |
| mysql | 3.1 |
| performance_schema | 0.0 |
+-----------------------+---------------+
5 rows in set (0.01 sec)

ИЛИ:

mysql> select table_schema, sum(round(data_length/1024/1024,2)) as total_size_mb from information_schema.tables where table_schema like 'zabbix' and engine like 'innodb' group by table_schema;

Где, zabbix — это имя базы данных.

Размер таблицы в Mysql

Чтобы проверить размер таблицы в красивой форме и в мб., выполните:

mysql> SELECT table_schema as `Database`, table_name AS `Table`, round(((data_length + index_length) / 1024 / 1024), 2) `Size in MB`  FROM information_schema.TABLES  ORDER BY (data_length + index_length);

Или в отсортированном виде (для всех БД ивсех таблиц):

mysql> SELECT table_schema as `Database`, table_name AS `Table`, round(((data_length + index_length) / 1024 / 1024), 2) `Size in MB` FROM information_schema.TABLES ORDER BY (data_length + index_length) DESC;

Или, чтобы посмотреть размер таблиц определенной БД:

> SELECT table_name AS `Table`, round(((data_length + index_length) / 1024 / 1024), 2) `Size in MB` FROM information_schema.TABLES WHERE table_schema = "Your_DB_Name";

Your_DB_Name — Имя вашей БД.

ИЛИ

mysql> SELECT table_name AS "Tables", round(((data_length + index_length) / 1024 / 1024), 2) "Size in MB" FROM information_schema.TABLES WHERE table_schema = "$DB_NAME" ORDER BY (data_length + index_length) DESC;

+-----------------------+------------+

| Tables                | Size in MB |

+-----------------------+------------+

| history_uint          |  132119.33 |

| history               |   16334.34 |

| trends_uint           |   11221.42 |

| history_text          |   10327.91 |

| trends                |    3243.41 |

| events                |    1921.77 |

| alerts                |     420.63 |

| history_str           |     110.39 |

Вот и все, тема «Размер базы/таблицы в Mysql» завершена.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.