sql >> Base de Datos >  >> RDS >> MariaDB

Obtener el tamaño de una base de datos en MariaDB

En MariaDB, podemos consultar el information_schema.tables tabla para comprobar el tamaño de una base de datos.

Esta tabla devuelve información sobre las tablas y vistas de cada base de datos del servidor. Podemos agrupar los resultados y devolver las cantidades agregadas para cada base de datos.

Ejemplo

Aquí hay una consulta que devuelve el tamaño de todas las bases de datos en el servidor:

SELECT 
    table_schema 'Database Name', 
    SUM(data_length + index_length) 'Size in Bytes', 
    ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) 'Size in MiB' 
FROM information_schema.tables 
GROUP BY table_schema;

Resultado:

+--------------------+---------------+-------------+
| Database Name      | Size in Bytes | Size in MiB |
+--------------------+---------------+-------------+
| information_schema |        212992 |        0.20 |
| KrankyKranes       |        131072 |        0.13 |
| Music              |         81920 |        0.08 |
| MyDB               |         32768 |        0.03 |
| mysql              |       4972544 |        4.74 |
| performance_schema |             0 |        0.00 |
| PetHouse           |         81920 |        0.08 |
| Zap                |         37460 |        0.04 |
+--------------------+---------------+-------------+

Tél information_schema.tables La tabla muestra información sobre los diversos no TEMPORARY tablas (excepto tablas del Information Schema base de datos) y vistas en el servidor.

Aquí, los agrupé por base de datos (table_schema ) y realizó algunos cálculos sobre los tamaños.

Base de datos única

Podemos reducirlo a una sola base de datos con un WHERE cláusula:

SELECT 
    table_schema 'Database Name', 
    SUM(data_length + index_length) 'Size in Bytes', 
    ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) 'Size in MiB' 
FROM information_schema.tables
WHERE table_schema = 'KrankyKranes'
GROUP BY table_schema;

Resultado:

+---------------+---------------+-------------+
| Database Name | Size in Bytes | Size in MiB |
+---------------+---------------+-------------+
| krankykranes  |        131072 |        0.13 |
+---------------+---------------+-------------+

En MySQL, podemos usar sys.FORMAT_BYTES() función para realizar la conversión de longitud de datos, pero al momento de escribir este artículo, MariaDB aún no ha implementado dicha función.