Visualize o tamanho dos dados do banco de dados e da tabela no MySQL

Visualize o tamanho dos dados do banco de dados e da tabela no MySQL

Insira a descrição da imagem aqui

Ao gerenciar e manter um banco de dados MySQL, é muito importante compreender o tamanho dos dados do banco de dados e das tabelas. Isso pode ajudá-lo a monitorar o crescimento do banco de dados, otimizar o desempenho e planejar as necessidades de armazenamento. Este blog apresentará como usar consultas SQL para visualizar o tamanho dos dados de bancos de dados e tabelas MySQL.

Verifique o tamanho total dos dados do banco de dados MySQL

Primeiro, aprenderemos como visualizar o tamanho total dos dados de todo o banco de dados MySQL, incluindo todos os bancos de dados. A seguir está um exemplo de consulta SQL:

-- 显示所有数据库的总计
SELECT
    '总和' AS `数据库`,
    '' AS `表名`,
    CONCAT(ROUND(SUM(table_rows) / 1000000, 2), 'M') AS `行数`,
    CONCAT(ROUND(SUM(data_length) / (1024 * 1024 * 1024), 2), 'GB') AS `数据大小`,
    CONCAT(ROUND(SUM(index_length) / (1024 * 1024 * 1024), 2), 'GB') AS `索引大小`,
    CONCAT(ROUND((SUM(data_length) + SUM(index_length)) / (1024 * 1024 * 1024), 2), 'GB') AS `总大小`
FROM
    information_schema.TABLES
WHERE
    table_schema NOT IN ('information_schema', 'performance_schema', 'mysql', 'sys');

Esta consulta calcula o tamanho total dos dados de todos os bancos de dados no servidor MySQL, incluindo dados e índices. O total aparecerá na primeira linha, 总和abaixo das colunas. Isso ajudará você a entender o uso de dados em todo o servidor MySQL.

Visualize o tamanho dos dados de um único banco de dados MySQL

Se quiser ver o tamanho dos dados de um banco de dados específico, você pode usar a seguinte consulta SQL, substituindo your_database_namepelo nome do banco de dados que deseja ver:

-- 显示单个数据库的数据大小
SELECT
    table_schema AS `数据库`,
    table_name AS `表名`,
    CONCAT(ROUND(table_rows / 1000000, 2), 'M') AS `行数`,
    CONCAT(ROUND(data_length / (1024 * 1024 * 1024), 2), 'GB') AS `数据大小`,
    CONCAT(ROUND(index_length / (1024 * 1024 * 1024), 2), 'GB') AS `索引大小`,
    CONCAT(ROUND((data_length + index_length) / (1024 * 1024 * 1024), 2), 'GB') AS `总大小`
FROM
    information_schema.TABLES
WHERE 
    table_schema NOT IN ('information_schema', 'performance_schema', 'mysql', 'sys') 
    AND table_schema = 'your_database_name'
ORDER BY
    data_length + index_length DESC;

Esta consulta exibirá o tamanho dos dados de cada tabela em um banco de dados específico, incluindo dados e índices. Basta your_database_namesubstituir pelo nome do banco de dados que você deseja visualizar.

Ver todos os tamanhos de dados do banco de dados

-- 显示所有数据库的总计
SELECT
    '总和' AS `数据库`,
    '' AS `表名`,
    CONCAT(ROUND(SUM(table_rows) / 1000000, 2), 'M') AS `行数`,
    CONCAT(ROUND(SUM(data_length) / (1024 * 1024 * 1024), 2), 'GB') AS `数据大小`,
    CONCAT(ROUND(SUM(index_length) / (1024 * 1024 * 1024), 2), 'GB') AS `索引大小`,
    CONCAT(ROUND((SUM(data_length) + SUM(index_length)) / (1024 * 1024 * 1024), 2), 'GB') AS `总大小`
FROM
    information_schema.TABLES
WHERE
    table_schema NOT IN ('information_schema', 'performance_schema', 'mysql', 'sys')
UNION
-- 显示每个表的数据大小
SELECT
    table_schema AS `数据库`,
    table_name AS `表名`,
    CONCAT(ROUND(table_rows / 1000000, 2), 'M') AS `行数`,
    CONCAT(ROUND(data_length / (1024 * 1024 * 1024), 2), 'GB') AS `表数据大小`,
    CONCAT(ROUND(index_length / (1024 * 1024 * 1024), 2), 'GB') AS `索引大小`,
    CONCAT(ROUND((data_length + index_length) / (1024 * 1024 * 1024), 2), 'GB') AS `表总大小`
FROM
    information_schema.TABLES
WHERE
    table_schema NOT IN ('information_schema', 'performance_schema', 'mysql', 'sys')
ORDER BY
    `总大小` DESC; -- 修改ORDER BY子句

Resumir

Usando a consulta SQL acima, você pode visualizar facilmente o tamanho dos dados do seu banco de dados MySQL e tabelas. Essas informações são muito úteis para gerenciamento de banco de dados, otimização de desempenho e planejamento de armazenamento. Dependendo das suas necessidades, você pode executar essas consultas periodicamente para monitorar o crescimento do banco de dados e tomar as medidas adequadas. Espero que este blog seja útil!

Acho que você gosta

Origin blog.csdn.net/weixin_45626288/article/details/132701455
Recomendado
Clasificación