Il database segnala una tabella “marked as crashed”? Prima di ripararla, identifica il motore e il backup disponibile: la procedura cambia in base al tipo di tabella.
Indice dei contenuti
Che cosa significa
Il motore, spesso MyISAM, ha rilevato incoerenze nei file della tabella e richiede una verifica o riparazione.
Come riconoscere il problema
- Il log identifica una tabella con il messaggio “marked as crashed”.
- Una pagina o un’operazione fallisce quando deve leggere o aggiornare quella tabella. La presenza del pulsante Repair, da sola, non dimostra un guasto.
Cause più frequenti
- Un arresto anomalo o un problema di scrittura ha lasciato la tabella in uno stato incoerente.
- Spazio esaurito o guasti del filesystem e dell’hardware possono richiedere un controllo lato server. Il messaggio non permette, da solo, di stabilire la causa.
Diagnosi passo per passo
- Annota il nome completo della tabella e il messaggio del database. In phpMyAdmin seleziona il database corretto e controlla il motore della tabella, per esempio MyISAM o InnoDB.
- Individua un backup precedente al problema e verifica che sia utilizzabile. Se l’esportazione attuale fallisce sulla tabella danneggiata, conserva l’errore e chiedi assistenza prima della riparazione.
- Segnala al supporto eventuali arresti o limiti di spazio raggiunti. Concorda la sospensione delle operazioni che scrivono sui dati coinvolti durante l’intervento.
Procedura di risoluzione
- Per una tabella MyISAM, con backup disponibile, valuta la riparazione della sola tabella indicata tramite lo strumento del database. La riparazione può perdere dati: controlla tutti i messaggi restituiti.
- REPAIR TABLE non ripara le tabelle InnoDB. Se il motore è InnoDB, fai analizzare i log al gestore del server e pianifica il recupero appropriato.
- Se serve un ripristino, provalo su una copia e verifica la coerenza con le altre tabelle. Un backup vecchio può escludere ordini, utenti o modifiche recenti.
- Prima di riaprire le scritture, ripeti l’operazione che falliva e controlla i dati recuperati. Se l’errore ricompare, fai verificare la causa: non ripetere riparazioni alla cieca.
Guide Xlogic correlate
- MySQL Error 1146 Table doesn’t exist
- MySQL Error 1064: errore di sintassi SQL
- MySQL Too many connections: come risolvere