Récupérer les structures de tables MySQL à partir des fichiers FRM et IBD uniquement
Question :
Les utilisateurs rencontrent souvent des situations dans lesquelles ils doivent restaurer une base de données mais ne peuvent accéder qu'aux fichiers FRM et IBD.
La structure de la table peut-elle être restaurée ?
Oui, la structure de la table peut être restaurée à partir du fichier FRM même sans le fichier IB_LOG.
Étapes :
1. Extrayez l'instruction de création SQL du fichier FRM :
mysqlfrm --diagnostic
pour générer des instructions de création SQL pour chaque fichier FRM. <code class="language-sql">CREATE TABLE `example_table` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(150) NOT NULL, `photo_url` varchar(150) NOT NULL, `password` varchar(600) NOT NULL, `active` smallint(6) NOT NULL, `plan` int(11) NOT NULL, PRIMARY KEY `PRIMARY` (`id`) ) ENGINE=InnoDB;</code>
2. Utilisez des instructions SQL pour créer des tables :
3. Récupérer des données :
<code class="language-sql">ALTER TABLE example_table DISCARD TABLESPACE;</code>
<code class="language-bash">cp backup/example_table.ibd /path/to/example_table.idb</code>
<code class="language-sql">ALTER TABLE example_table IMPORT TABLESPACE;</code>
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!