CHECK TABLE

Sintassi

CHECK TABLE nome_tabella [, nome_tabella] ... [opzione] ...

opzione = {FOR UPGRADE | QUICK | FAST | MEDIUM | EXTENDED | CHANGED}

Spiegazione

CHECK TABLE controlla se una o più tabelle contengono errori. Funziona su tabelle Archive, Aria, CVS, InnoDB e MyISAM. Con Aria e MyISAM, aggiorna anche le statistiche sugli indici.

CHECK TABLE può anche controllare se ci sono problemi in una vista, ad esempio se le tabelle che sono nominate nella definizione della vista non esistono più.

Supporta anche le tabelle partizionate. E' possibile utilizzare ALTER TABLE ... CHECK PARTITION per verificare una o più partizioni.

I significati delle diverse opzioni sono i seguenti (si noti che il comportamento può variare leggermente a seconda dello Storage Engine):

FOR UPGRADEEffettua una verifica veloce per controllare se il formato dei dati della tabella è cambiato, nel qual caso occorre eseguire un REPAIR. E' necessario solo quando si esegue un upgrade tra le versioni maggiori di MariaDB o MySQL. Solitamente questa operazione si esegue tramite mysql_upgrade.
FASTControlla solo se le tabelle sono state chiuse correttamente o se sono marcate come corrotte. Funziona solo su tabelle MyISAM e Aria. Con gli altri Storage Engine, la tabella viene verificata normalmente.
CHANGEDVerifica solo le tabelle che sono state modificate dopo l'ultimo REPAIR / CHECK. Funziona solo sulle tabelle MyISAM e Aria. Con gli altri Storage Engine la tabella viene verificata normalmente.
QUICKEsegue una verifica veloce. In MyISAM e Aria questo significa che non viene controllata la catena dei collegamenti eliminati, che potrebbe richiedere un certo tempo.
MEDIUMEffettua anche una scansione del file dei dati. Verifica anche l'integrità dei file dei dati e degli indici con dei checksum. Nella maggior parte dei casi, in questo modo si trovano tutti i possibili errori.
EXTENDEDEsegue una verifica completa cercando ogni possibile tipo di errori. Con MyISAM e Aria, verifica ogni riga controllando che tutte le sue chiavi esistano e puntino alla riga. Questa operazione può richiedere molto tempo sulle tabelle di grandi dimensioni!

Nella maggioranza dei casi, è sufficiente eseguire CHECK TABLE senza opzioni, o con MEDIUM.

Se si desidera invece sapere se due tabelle sono identiche, si può utilizzare CHECKSUM TABLE.

Commenti

Sto caricando i commenti......
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.