OPTIMIZE TABLE
Il comando OPTIMIZE TABLE ha la funzione di ottimizzare le peroformances del database effettuandone una deframmentazione: in pratica il database viene compattato recuperanmdo lo “spazio vuoto” creatosi a seguito della cancellazione o della modifica di grossi volumi di dati. Questo tipo di operazione consente di ridurre lo spazio utilizzato dal database e di rendere più efficenti le operazioni di accesso ai dati.
Il comando OPTIMIZE TABLE si rende necessario soprattutto quando si lavora con le tabelle di tipo MyISAM le quali gestiscono lo spazio in modo meno efficiente rispetto alle InnoDB. Questa la sintassi:
OPTIMIZE TABLE tbl1, tbl2, ..., tblN;
L’output restituito sarà formattato come quello visto per i comandi precedenti, ovviamente nel campo Op apparirà la scritta “optimize”.
REPAIR TABLE
Il comando REPAIR TABLE può essere utilizzato per tentare di correggere degli errori presenti all’interno di tabelle MyISAM o ARCHIVE. Non è compatibile, invece, con lo storage engine InnoDB.
Se usato per le tabelle MyISAM il suo utilizzo è deltutto equivalente a:
myisamchk --recover nome_tabella
Il comando REPAIR TABLE deve essere utilizzato solo in caso di effettiva esigenza, non essendo un comando di manutenzione delle tabelle ma un sistema di ripristino a seguito di gravi errori che ne abbiano compromesso il normale funzionamento. Questa la sintassi:
REPAIR TABLE tbl1, tbl2, ..., tblN;
L’output restituito sarà formattato come quello visto per gli comandi di manutenzione, ovviamente nel campo Op apparirà la scitta “repair”. Potrebbero comparire numerose righe in risa al comando; ciò dipende dal numero di errori riscontrati all’interno della/e tabella/e.
REPAIR TABLE supporta due opzioni che possono essere aggiunte alla sintassi di base:
- QUICK – cercherà di riparare esclusivamente gli indici della tabella;
- EXTENDED – effettua un controllo lento ma più approfondito della tabella e degli indici.
Esempio:
REPAIR TABLE nome_tabella QUICK;