Está en la página 1de 2

Tamaño de una base de datos MySQL

Con un algún gestor MySQL con interfaz gráfica, como puede ser phpMyAdmin, basta con acceder y
consultar las estadísticas que nos muestra el propio gestor. Lo realmente interesante es hacerlo desde la
shell cuando tenemos acceso por SSH al servidor.

Comprobar el tamaño de una base de datos MySQL desde la


terminal Linux.
Doy por hecho que tenemos una sesión de terminal abierta, por ejemplo usando PuTTY. En primer lugar
debemos acceder e identificarnos en el servidor MySQL con nuestro usuario y contraseña. Para esto,
ejecutamos el siguiente comando:
mysql -u username -p

Si necesitásemos especificar un nombre de host para el servidor MySQL, el comando que empleamos para
autentificarnos sería por ejemplo:
mysql -h 127.0.0.1 -u username -p

Tras ejecutar este comando se nos solicitará la contraseña y si todo ha ido bien, ya estaremos
autentificados y listos para ejecutar consultas SQL.

Para obtener el tamaño de todas las base de datos, la query que debemos emplear es:

SELECT table_schema "database", sum(data_length + index_length)/1024/1024 "size in


MB" FROM information_schema.TABLES GROUP BY table_schema;
La salida tras ejecutar la consulta anterior sería algo como:

MariaDB [(none)]> SELECT table_schema "database", sum(data_length +


index_length)/1024/1024 "size in MB" FROM information_schema.TABLES GROUP BY
table_schema;
+--------------------+-------------+
| database | size in MB |
+--------------------+-------------+
| information_schema | 0.07812500 |
| mysql | 0.62622643 |
| performance_schema | 0.00000000 |
| vozidea | 55.40495396 |
+--------------------+-------------+
4 rows in set (0.02 sec)

Vemos que nos muestra el tamaño en MB de todas las bases de datos.


Si sólo quisiésemos consultar el tamaño de una base de datos específica, la query sería:
1 SELECT table_schema "database", sum(data_length + index_length)/1024/1024 "size
in MB" FROM information_schema.TABLES WHERE table_schema='nombre_db' GROUP BY
table_schema;
Al ejecutar la consulta SQL anterior, debemos tener en cuenta que donde pone nombre_db , tenemos que
reemplazarlo por el nombre de la base de datos de la que queremos obtener su tamaño.
Consideraciones finales.

Esta consulta SQL para obtener el tamaño de una base de datos MySQL sólo funciona en MySQL 5 o
superior y en cualquier versión de MariaDB. Esto se debe a que en versiones antiguas, previas a
MySQL 5, no se empleaba la base de datos INFORMATION_SCHEMA .

También podría gustarte