Maison  >  Article  >  base de données  >  Reconstruire ou réparer une table ou un index MySQL

Reconstruire ou réparer une table ou un index MySQL

WBOY
WBOYavant
2023-09-03 10:57:02978parcourir

重建或修复 MySQL 表或索引

Les modifications de table et d'index font référence à la façon dont MySQL gère les types de données et les jeux de caractères. CHECK TABLE, mysqlcheck ou mysql_upgrade signale les réparations ou mises à niveau de table nécessaires.

Reconstruire la table

Il existe de nombreuses façons de reconstruire la table. Certains d'entre eux sont répertoriés ci-dessous -

  • Méthode de vidage et de rechargement

  • Méthode de la table ALTER

  • Méthode de la table de réparation

🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜Se’s Le Know sur eux brièvement - 🎜🎜 Méthode de vidage et de rechargement 🎜🎜Si vous Si vous devez reconstruire une table car une version différente de MySQL est incapable de gérer la table après une mise à niveau ou un téléchargement binaire (sur place), vous devez utiliser cette méthode de vidage et de rechargement. 🎜🎜Les tables peuvent être vidées et rechargées. Cela peut être fait en utilisant "mysqldump", en créant un fichier de vidage et en permettant à mysql de recharger le fichier. Cela peut être fait en utilisant la commande suivante -🎜
mysqldump db_name t1 > dump.sql
mysql db_name < dump.sql
🎜Si toutes les tables doivent être reconstruites dans une seule base de données, vous pouvez spécifier le nom de la base de données sans utiliser de nom de table. Cela peut être fait en utilisant la commande suivante -🎜
mysqldump db_name > dump.sql
mysql db_name < dump.sql
🎜Si toutes les tables de toutes les bases de données doivent être reconstruites, l'option "--all databases" doit être utilisée. Cela peut être fait en utilisant la commande suivante -🎜
mysqldump --all-databases > dump.sql
mysql < dump.sql
🎜Méthode ALTER TABLE🎜🎜Si vous devez reconstruire la table à l'aide de la méthode ALTER TABLE, vous pouvez utiliser des modifications "nulles". Vous pouvez utiliser l'instruction ALTER TABLE pour modifier une table afin qu'elle puisse utiliser le moteur de stockage. Prenons un exemple : supposons que TblName soit une table InnoDB, l'instruction suivante peut être utilisée pour reconstruire la table -🎜
ALTER TABLE TblName ENGINE = InnoDB;
🎜Méthode REPAIR TABLE🎜🎜La méthode REPAIR TABLE n'est disponible que pour les tables MyISAM, ARCHIVE et CSV. Si une opération de vérification de table indique que le fichier est corrompu ou doit être mis à niveau, vous pouvez utiliser l'instruction REPAIR TABLE. Prenons un exemple : Pour réparer une table MyISAM, on peut exécuter l'instruction suivante -🎜
REPAIR TABLE TblName;
🎜mysqlcheck --repair Fournit un accès en ligne de commande à l'instruction REPAIR TABLE. Cela peut être un moyen plus pratique de réparer les tables, car vous pouvez utiliser --databases pour réparer des tables spécifiques dans une base de données, ou l'option --all-databases pour réparer toutes les tables de toutes les bases de données. Cela peut être fait en utilisant la commande suivante -🎜
mysqlcheck &minus;&minus;repair &minus;&minus;databases db_name ...
mysqlcheck &minus;&minus;repair &minus;&minus;all&minus;databases
🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer