Come controllare la dimensione del database MySQL in Linux
In questo articolo ti mostrerò come controllare la dimensione dei database e delle tabelle MySQL/MariaDB tramite la shell MySQL. Imparerai come determinare la dimensione reale di un file di database sul disco e la dimensione dei dati presenti in un database.
Leggi anche: 20 comandi MySQL (Mysqladmin) per l'amministrazione di database in Linux
Per impostazione predefinita, MySQL/MariaDB memorizza tutti i dati nel file system e la dimensione dei dati esistenti nei database potrebbe differire dalla dimensione effettiva dei dati Mysql sul disco che vedremo in seguito.
Inoltre, MySQL utilizza il database virtuale information_schema per archiviare informazioni sui database e altre impostazioni. Puoi interrogarlo per raccogliere informazioni sulla dimensione dei database e delle relative tabelle come mostrato.
mysql -u root -p
MariaDB [(none)]> SELECT table_schema AS "Database Name",
ROUND(SUM(data_length + index_length) / 1024 / 1024, 2) AS "Size in (MB)"
FROM information_schema.TABLES
GROUP BY table_schema;
Per scoprire la dimensione di un singolo database MySQL chiamato rcubemail (che visualizza la dimensione di tutte le tabelle in esso contenute) utilizza la seguente query mysql.
MariaDB [(none)]> SELECT table_name AS "Table Name",
ROUND(((data_length + index_length) / 1024 / 1024), 2) AS "Size in (MB)"
FROM information_schema.TABLES
WHERE table_schema = "rcubemail"
ORDER BY (data_length + index_length) DESC;
Infine, per scoprire la dimensione effettiva di tutti i file del database MySQL sul disco (file system), esegui il comando du di seguito.
du -h /var/lib/mysql
Potrebbe interessarti anche leggere i seguenti articoli relativi a MySQL.
- 4 utili strumenti da riga di comando per monitorare le prestazioni di MySQL in Linux
- 12 Best practice per la sicurezza MySQL/MariaDB per Linux
Per qualsiasi domanda o idea aggiuntiva che desideri condividere su questo argomento, utilizza il modulo di feedback riportato di seguito.