Como imprimir o resumo da tabela MySQL usando PHP?
A tabela MySQL tem um comando Show Table Status que imprime um resumo da tabela, mas contém muitas informações sobre todas as tabelas do banco de dados atual (para alterar o banco de dados, use ‘use database_name’), o que não é tão amigável.
O que queremos saber é o tamanho dos dados e o tamanho do índice, você pode usar o seguinte script PHP para imprimir essas informações.
<?php
require('conn.php'); // connect your database using e.g. $connection = mysqli_connect(...)
$query = "show table status";
$result = mysqli_query($connection, $query);
$ds = 0;
$is = 0;
echo "<table style='text-align:left;width:100%'>";
echo "<tr style='background:blue;color:yellow;'><th>Name</th><th>Data</th><th>Index</th></tr>";
function format($c) {
return (round($c / 1024, 2)). 'KB';
}
while ($row = mysqli_fetch_assoc($result)) {
echo "<tr><th>". ($row['Name']). '</th>';
echo "<th>". format($row['Data_length']). "</th>";
echo "<th>". format($row['Index_length']). "</th>";
$ds += $row['Data_length'];
$is += $row['Index_length'];
echo "</tr>";
}
echo "<tr style='background:lightblue;'>";
echo "<th>". format($ds + $is). "</th><th>". format($ds). "</th><th>". format($is). "</th>";
echo "</tr></table>";
Aqui está um exemplo do uso de um banco de dados wordpress típico. Formatamos o tamanho usando KB. Dessa forma, você pode acompanhar o uso da tabela de tempos em tempos. Você também pode alterar o CSS elegante no código acima para formatar a saída.
mysql-show-table-status-in-php-example