Heim > Datenbank > MySQL-Tutorial > Können wir die MySQL-Tabellenstruktur nur aus FRM- und IBD-Dateien wiederherstellen?

Können wir die MySQL-Tabellenstruktur nur aus FRM- und IBD-Dateien wiederherstellen?

Barbara Streisand
Freigeben: 2025-01-07 19:06:41
Original
403 Leute haben es durchsucht

Can We Recover MySQL Table Structure from FRM and IBD Files Only?

Stellen Sie MySQL-Tabellenstrukturen nur aus FRM- und IBD-Dateien wieder her

Frage:

Benutzer stoßen häufig auf Situationen, in denen sie eine Datenbank wiederherstellen müssen, aber nur auf die FRM- und IBD-Dateien zugreifen können.

Kann die Tabellenstruktur wiederhergestellt werden?

Ja, die Tabellenstruktur kann aus der FRM-Datei auch ohne IB_LOG-Datei wiederhergestellt werden.

Schritte:

1. SQL-Erstellungsanweisung aus der FRM-Datei extrahieren:

  • Installieren Sie die MySQL-Dienstprogramme.
  • Verwenden Sie den Befehl mysqlfrm --diagnostic, um SQL-Erstellungsanweisungen für jede FRM-Datei zu generieren.
  • Die Ausgabe enthält Anweisungen ähnlich wie:
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;
Nach dem Login kopieren

2. Verwenden Sie SQL-Anweisungen, um Tabellen zu erstellen:

  • Löschen Sie alle vorhandenen Tabellen (falls erforderlich).
  • Führen Sie die in Schritt 1 erhaltene SQL-Erstellungsanweisung aus, um eine Tabelle mit derselben Struktur wie die Originaltabelle zu erstellen.

3. Daten wiederherstellen:

  • Verwenden Sie den folgenden Befehl, um neue Tabellendaten zu löschen:
ALTER TABLE example_table DISCARD TABLESPACE;
Nach dem Login kopieren
  • Löschen Sie die entsprechende IBD-Datei im Tabellenverzeichnis.
  • Original-IBD-Dateien in das Verzeichnis kopieren:
cp backup/example_table.ibd /path/to/example_table.idb
Nach dem Login kopieren
  • Stellen Sie sicher, dass die IBD-Datei den richtigen Besitz und die richtigen Berechtigungen hat.
  • Alte Daten importieren:
ALTER TABLE example_table IMPORT TABLESPACE;
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonKönnen wir die MySQL-Tabellenstruktur nur aus FRM- und IBD-Dateien wiederherstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage