« Le système d'exploitation GNU-Linux/La base de données MySQL » : différence entre les versions
Contenu supprimé Contenu ajouté
→mysqlcheck : : petites corrections + mise en page |
→myisamchk : : petites corrections + mise en page |
||
Ligne 364 :
=== myisamchk ===
▲En cas de restauration d'une table ou plusieurs tables endommagées à la suite de crashs répétés du démon mysqld.
▲<BR>{{rouge|'''myisamchk''' intervient directement sur les fichiers, il se passe de '''mysqld''' contrairement à '''mysqlcheck''' !}}
'''Quelques précautions d'usage:''' : Si vous utilisez {{bleu|myisamchk}} pour réparer ou optimiser les tables, vous devez toujours vous assurer que {{vert|mysqld}} n'utilise pas cette table (ce qui s'applique aussi si vous utilisez {{vert|--skip-external-locking}} ). Si vous n'éteignez pas le serveur {{bleu|mysqld}} , vous devez au moins utiliser {{bleu|mysqladmin flush-tables}} avant de lancer {{bleu|myisamchk}}.▼
'''{{rouge|Attention}}''' : '''Vos tables peuvent être corrompues si le serveur {{rouge|mysqld}} et {{bleu|myisamchk}} travaillent dans une même table simultanément.'''▼
▲Si vous utilisez {{bleu|myisamchk}} pour réparer ou optimiser les tables, vous devez toujours vous assurer que {{vert|mysqld}} n'utilise pas cette table (ce qui s'applique aussi si vous utilisez {{vert|--skip-external-locking}} ). Si vous n'éteignez pas le serveur {{bleu|mysqld}} , vous devez au moins utiliser {{bleu|mysqladmin flush-tables}} avant de lancer {{bleu|myisamchk}}.
▲'''Vos tables peuvent être corrompues si le serveur {{rouge|mysqld}} et {{bleu|myisamchk}} travaillent dans une même table simultanément.'''
On indique à '''myisamchk''' les tables à vérifier en désignant les fichiers index '''MYI''' :
# myisamchk /chemin/bases/mysql/'''{{bleu|nom_de_la_bd}}'''/'''{{bleu|nom_de_table}}'''.MYI
On peut également spécifier toutes les tables comme ceci :
Cette commande trouvera 99.99% de toutes les erreurs. Ce qu'elle ne peut pas découvrir comme erreurs, sont celles qui impliquent uniquement le fichier de données (ce qui est très inhabituel). Si vous voulez vérifier une table, vous devriez utiliser l'utilitaire myisamchk sans les options ou avec les options -s ou --silent .▼
La commande affiche un rapport d'analyse, et si tout est OK, ne signale pas d'erreur :
root@pataserv1:~# myisamchk /var/lib/mysql/ampache/album.MYI▼
Checking MyISAM file: /var/lib/mysql/ampache/album.MYI
Ligne 405 ⟶ 403 :
- check data record references index: 4
- check record links
▲Cette commande trouvera 99.99% de toutes les erreurs.
Si vous voulez uniquement vérifier une table sans que la commande produise un affichage, il faut utiliser l'option '''-s''' (ou '''--silent''').
=== mysql_setpermission ===
|