Mysql
 sql >> Database >  >> RDS >> Mysql

Come trovare la tabella più grande nel database MySQL?

A volte potrebbe essere necessario tenere traccia della tabella più grande nel database MySQL in modo da poterla ottimizzare. Ecco una query SQL per trovare la tabella più grande nel database MySQL. Per più grande, intendo la dimensione del disco e non il numero di record. È possibile utilizzare la seguente query SQL per ottenerlo. Una dimensione di una tabella MySQL è composta da 2 parti:

1. data_length – dimensione dei record della tabella

2. index_length – dimensione dell'indice della tabella

Queste sono variabili di sistema che memorizzano le informazioni come numero di byte. La query seguente aggiunge le 2 variabili per la tabella. Converte il numero risultante di byte in mega byte (MB) per una più facile comprensione. Sostituisci semplicemente $DB_NAME di seguito per usarlo.

Per ottenere la tabella più grande nel database MySQL (database specifico) utilizzare:

SELECT table_name AS "Table", round(((data_length + index_length) / 1024 / 1024), 2) "Table size in MB" FROM information_schema.TABLES WHERE table_schema = "$DB_NAME" order by data_length+index_lenght desc limit 1;

Per ottenere la tabella più grande nel database MySQL (di tutti i database) usa:

SELECT table_name AS "Table", round(((data_length + index_length) / 1024 / 1024), 2) "Table size in MB" FROM information_schema.TABLES order by data_length+index_lenght desc limit 1;

Queste query possono richiedere tempo in base al numero di tabelle.