DBAtlas · Atlas d'exploitation des bases de données

1194: Table 'name' is marked as crashed and should be repaired (la table 'name' est marquée comme endommagée et doit être réparée)

MySQL

Que signifie cette erreur ?

Une table, généralement stockée avec le moteur MyISAM (aussi Aria dans MariaDB), est marquée comme corrompue/endommagée et ne peut pas être utilisée avant d'être réparée. Les requêtes qui accèdent à la table échouent avec cette erreur.

Cause

La table MyISAM n'a pas été fermée proprement lors d'un crash soudain du serveur/d'une coupure de courant, le disque s'est rempli, une panne matérielle s'est produite ou le processus mysqld a été tué. MyISAM n'offrant ni transactions ni résistance aux crashs, cela arrive bien plus souvent qu'avec InnoDB.

Comment la corriger

Réparez la table : REPAIR TABLE table_name; ou hors ligne avec myisamchk -r. Sauvegardez toujours les fichiers de données avant de réparer. Comme correctif durable, passez les tables en InnoDB : ALTER TABLE my_table ENGINE=InnoDB; ce qui les rend résistantes aux crashs. Vérifiez l'état du disque et le paramètre myisam_recover_options.

Ouvrir dans DBAtlas →

Autres entrées pour ce moteur