Maison >base de données >tutoriel mysql >La structure des tables MySQL peut-elle être récupérée en utilisant uniquement les fichiers .frm et .ibd ?

La structure des tables MySQL peut-elle être récupérée en utilisant uniquement les fichiers .frm et .ibd ?

DDD
DDDoriginal
2025-01-07 19:21:45548parcourir

Can MySQL Table Structure Be Recovered Using Only .frm and .ibd Files?

Restaurer la structure des tables MySQL en utilisant uniquement les fichiers .frm et .ibd

Question :

S'il n'y a pas de fichier ib_log, puis-je restaurer la structure de la table MySQL en utilisant uniquement les fichiers .frm et .ibd ?

Réponse :

La structure du tableau peut être restaurée à partir de fichiers *.frm. Veuillez suivre ces étapes :

Étape 1 : Récupérer la requête de création SQL

  • Installez les utilitaires MySQL et utilisez la commande mysqlfrm pour extraire la requête SQL qui crée la table.
  • Exécuter la commande : mysqlfrm --diagnostic <path>/example_table.frm Obtenir la requête SQL. (veuillez remplacer <path> par le chemin de votre fichier *.frm)

Étape 2 : Créer un tableau

  • Créez une nouvelle table à l'aide de la requête SQL récupérée.

Étape 3 : Préparez la récupération des données

  • Si d'anciennes données existent, supprimez la base de données et les tables concernées.
  • Supprimez la connexion entre les nouveaux fichiers .frm et .ibd à l'aide de la requête suivante : ALTER TABLE example_table DISCARD TABLESPACE;
  • Supprimez les fichiers *.ibd existants.

Étape 4 : Récupérer les données

  • Copiez l'ancien fichier *.ibd dans le dossier.
  • Changez sa propriété en l'utilisateur mysql à l'aide de la commande suivante : chown -R mysql:mysql *.ibd
  • Importez les anciennes données à l'aide de la requête suivante : ALTER TABLE example_table IMPORT TABLESPACE;

Ce processus récupérera la structure de la table et les données des fichiers .frm et .ibd.

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:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn