Как рассчитать размер базы данных MySQL

Как рассчитать размер базы данных MySQL

Как я знаю, есть два способа вычислить размер базы данных MySQL.

1. SQL скрипт

Суммируйте data_length + index_length, равный общему размеру таблицы.

  1. data_length - хранить реальные данные.

  2. index_length - хранить индекс таблицы.

Вот сценарий SQL, чтобы перечислить весь размер базы данных

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

Другой сценарий SQL, чтобы перечислить один размер базы данных, и размер каждой таблицы в деталях

SELECT table_name, table_rows, data_length, index_length,
round(((data_length + index_length) / 1024 / 1024),2) "Size in MB"
FROM information_schema.TABLES where table_schema = "schema_name";

2. Найдите MySQL сохраненные данные

Откройте этотarticle, чтобы узнать, где база данных MySQL сохранила данные.

Windows
Найдите файл MySQL ibdata1, щелкните файл правой кнопкой мыши и выберите свойства, посмотрите размер? :)

Linux
Найдите файл MySQL ibdata1

example@myserver:/var/lib/mysql$ ls -lh
total 1.5G
drwx------ 2 mysql mysql 4.0K 2009-08-26 13:36 mydatabase
-rw-r--r-- 1 root  root     0 2009-08-19 09:39 debian-5.0.flag
-rw-rw---- 1 mysql mysql 1.5G 2009-08-27 17:32 ibdata1
-rw-rw---- 1 mysql mysql 5.0M 2009-08-27 17:32 ib_logfile0
-rw-rw---- 1 mysql mysql 5.0M 2009-08-27 17:32 ib_logfile1
drwxr-xr-x 2 mysql root  4.0K 2009-08-19 11:19 mysql
-rw------- 1 root  root     6 2009-08-19 09:39 mysql_upgrade_info