Corriger l'erreur mysql Table './bacula/File' is marked as crashed and should be repaired avec myisamchk sous linux debian

28/05/2009 - 9225 consultations - 0 commentaire


Ce tutoriel vous présente comment réparer une table mysql crashée au format myisam avec l'utilitaire myisamchk

Venant d'avoir un crash de ma table './bacula/File' sur un de mes serveurs de backup, je vous donne tout de suite la solution pour réparer cette table.

L'erreur indiquée est la suivante :
Table './bacula/File' is marked as crashed and should be repaired

La table ./bacula/File nécessite d'être réparée.

Nous allons commencer par faire une vérification en utilisant myisamchk avec l'option -c pour check :
On suppose que par défaut, vos base MySQL sont dans le dossier : /var/lib/mysql/
$ myisamchk -c /var/lib/mysql/bacula/File.MYI
Checking MyISAM file: /var/lib/mysql/bacula/File.MYI
Data records: 6061041   Deleted blocks:  479746
myisamchk: warning: Table is marked as crashed
myisamchk: warning: 1 client is using or hasn't closed the table properly
- check file-size
- check record delete-chain
myisamchk: error: Record at pos: 281313488 is not remove-marked
myisamchk: error: record delete-link-chain corrupted
- check key delete-chain
myisamchk: error: key delete-link-chain corrupted
- check record links
myisamchk: error: Record-count is not ok; is 6064225      Should be: 6061041
myisamchk: warning: Found 46149316 deleted space.   Should be 46460600
myisamchk: warning: Found     476562 deleted blocks       Should be: 479746
MyISAM-table '/var/lib/mysql/bacula/File.MYI' is corrupted
Fix it using switch "-r" or "-o"

Comme nous indique myisamchk, nous allons réparer la table avec l'option -r :

$ myisamchk -r /var/lib/mysql/bacula/File.MYI
- recovering (with sort) MyISAM-table '/var/lib/mysql/bacula/File.MYI'
Data records: 6061041
- Fixing index 1
- Fixing index 2
- Fixing index 3
- Fixing index 4
- Fixing index 5
Data records: 6064225

Et là on a gagné ;-) la table est réparée

Commentez cet article

Nom (obligatoire)
E-mail (obligatoire)
Site Internet (facultatif)
code anti-spam

Me tenir inform� des nouveaux messages


terminal.pngServeur ftp proftpd avec utilisateurs virtuels sous linux debian ubuntu
Ce tutoriel vous présente comment installer le serveur ftp proftpd à partir des paquets debian. Pour éviter de créer autant d'utilisateurs Linux que de compte FTP il est possible de créer des utilisateurs virtuels seulement disponibles pour le serveur FTP
mycomputer.pngInstaller le serveur FTP Proftpd avec le module MySQL et stocker les utilisateurs dans une base de données MySQL sous Linux Debian Lenny
Ce tutoriel vous présente comment installer le serveur FTP Proftpd lié à MySQL sous Linux Debian Lenny ainsi que la gestion de vos utilisateurs dans une table MySQL
kcmdevices.pngInstaller et formater un disque dur externe usb sous Linux Debian Etch
Ce tutoriel vous présente comment installer votre dique usb sous Linux debian de l'installation en passant par le formatage jusqu'au montage dans votre système de fichier
date.pngInstaller une tâche planifiée crontab sous Linux debian
Ce tutoriel vous présente comment installer une tâche planifiée crontab qui sera lancée automatiquement à un moment défini
ark.pngVérification automatique des mises à jour Linux Debian avec cron-apt
Ce tutoriel vous présente comment savoir simplement quand votre serveur Linux Debian nécessite l'installation de nouvelles mises à jour avec cron-apt.
mycomputer.pngOutils intéressants sous Linux
Voici quelques outils intéressants pour vous faciliter la vie sous Linux : nmap, nslookup
terminal.pngInstallation d'Apache 2.0 et PHP 5.1
Tutoriel d'installation d'Apache 2.0 et PHP 5.1 sous Debian Sarge à partir des paquets backports.org
encrypted.pngSauvegarde par ssh avec la commande scp avec clé publique - clé privée
Ce tutoriel présente comment effectuer une copie de fichier entre 2 serveurs en utilisant scp, en passant par des clé publique et clé privée afin de ne pas avoir à saisir de mot de passe
database.pngTutoriel de sauvegarde automatisées de bases de données MySQL, compression en tar.gz et envoi par FTP sous Linux Debian
Ce tutoriel vous présente comment automatiser la sauvegarde de base de données MySQL en compressant les sauvegardes et en les plaçant sur un FTP distant.