MySQL mette a disposizione due alternative per controllare e riparare le tabelle dei database.
La prima possibilità consiste nell’utilizzare myisamchk, uno strumento creato appositamente per controllare e riparare le tabelle MyISAM.
Tramite questo strumento è possibile eseguire una scansione dei database, individuare i problemi presenti, ottimizzare le tabelle e ripararle.
La seconda possibilità consiste nell’utilizzare i comandi SQL, risulta infatti possibile controllare e riparare le tabelle tramite i comandi CHECK TABLE, REPAIR TABLE e OPTIMIZE TABLE.
Solitamente l’utilizzo di myisamchk garantisce prestazioni migliori.
Vediamo ora come utilizzare gli strumenti.
Se si riscontrano problemi nell’accedere a una tabella, la prima cosa da fare è verificare la presenza di errori, è possibile eseguire questa operazione fermando MySQL e utilizzando il seguente comando.
myisamchk /usr/local/mysql/data/phpbb/user.myi
Se vengono individuati errori, è possibile riparare le tabelle eseguendo mysamchk con l’opzione –recover.
myisamchk –recover /usr/local/mysql/data/phpbb/user.myi
L’opzione –recover ricostruisce gli indici della tabella dopo avere cancellato i dati che potrebbero avere causato il problema.
Le stesse operazioni possono essere eseguire usando i comandi sql, per eseguire il controllo di una tabella è necessaio utilizzare il seguente comando dal prompt MySQL.
mysql> CHECK TABLE user;
Utilizzando REPAIR TABLE è poi possibile riparare la tabella.
mysql> REPAIR TABLE user;