Wenn MySQL normal ausgeführt wird, ist es nicht schwierig, die Tabellenstruktur anzuzeigen. Aber manchmal schlägt MySQL fehl und diese Methode ist nicht mehr durchführbar. Wenn ein Fehler auftritt, wird normalerweise eine neue MySQL-Instanz verwendet, um die aktuellen Daten wiederherzustellen. Das Erstellen einer Tabelle ist ein sehr wichtiger Schritt und wir müssen andere Möglichkeiten haben, die Tabellenstruktur zu finden. Wo ist die Tabellenstruktur definiert? Die Benutzerdaten, die im Allgemeinen von Interesse sind, werden tatsächlich im MySQL-Datenverzeichnis gespeichert. Die Dateistruktur des MySQL-Datenverzeichnisses ist sehr klar. • Katalogzuordnungsdatenbank Die durch die Tabelle definierte Struktur ist in der FRM-Datei vorhanden, und natürlich verfügen auch die IBData, die die Metadaten verwalten, über Datensätze. Wenn die FRM-Datei vorhanden ist, ist es relativ einfach, die Tabellenstruktur wiederherzustellen. Analysieren der Tabellenstruktur Im Folgenden finden Sie drei Möglichkeiten zum Analysieren des Befehls „Create Table“ aus der FRM-Datei. mysqlfrm mysqlfrm ist eines der MySQL-Dienstprogramme. MySQL-Dienstprogramme erfordern eine Python2-Umgebung und die Installation ist sehr einfach. $ tar -xvzf mysql-utilities-1.6.5.tar.gz $ cd mysql-utilities-1.6.5 $ python setup.py bauen $ python setup.py installieren mysqlfrm unterstützt zwei Modi zum Interpretieren von frm: Direkte Analyse Dieser Modus ist relativ unkompliziert: Er analysiert die FRM-Datei Byte für Byte und extrahiert so viele Informationen wie möglich. In diesem Modus muss der Parameter --diagnostic verwendet werden. $ mysqlfrm --diagnostic /data/sakila/actor.frm MySQL-Beispielanalyse Dieser Modus verwendet eine neue MySQL-Instanz, um die FRM-Analysearbeit abzuschließen. 1. Starten Sie den aktuellen MySQL-Dienst und verwenden Sie --server, um den MySQL-Dienst anzugeben $ mysqlfrm --server=root:pass@localhost:3306 --port=3310 /data/sakila/actor.frm Zweitens starten Sie eine neue MySQL-Instanz und verwenden --basedir, um den MySQL-Programmpfad anzugeben $ mysqlfrm --basedir=/usr/local/bin/mysql --port=3310 /data/sakila/actor.frm --port gibt den Port für die neue Instanz an, um Konflikte mit dem aktuellen Port 3306 zu vermeiden. Abonnieren Dies ist ein Tool, das ich zufällig entdeckt habe. Es stellt sich in der Dokumentation wie folgt vor: dbsake - ein (s)wiss-(a)rmy-(k)nif(e) für MySQL Der Autor muss jemand sein, der viel Erfahrung mit MySQL hat. Das Tool ist vom Herunterladen über die Installation bis hin zur Verwendung einfach und übersichtlich. $ curl -s get.dbsake.net > dbsake $ chmod u+x dbsake $ ./dbsake frmdump [frm-Dateipfad] Onlineservice Es gibt einige Online-Dienste, die sich ebenfalls mit solchen Themen befassen. Laden Sie über den Eintrag „Struktur wiederherstellen -> aus .frm-Datei“ das FRM hoch, und Sie erhalten den Befehl zum Erstellen einer Tabelle. Abschließende Gedanken Bei der Verwendung können Sie mehrere Tools testen, vergleichen, welche Wiederherstellungsbefehle umfassender und wünschenswerter sind, und das beste auswählen. siehe: • offizielles mysqlfrm-Dokument •dbsake-Projektdokument Zusammenfassen Oben sind die drei Methoden, die ich Ihnen vorgestellt habe, um die Tabellenstruktur von MySQL aus der frm-Datei wiederherzustellen. Ich hoffe, sie werden Ihnen hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken! Das könnte Sie auch interessieren:
|
<<: Docker: Das Ändern des DOCKER_OPTS-Parameters in /etc/default/docker wird nicht wirksam
>>: So erstellen Sie Ihre eigene Angular-Komponentenbibliothek mit DevUI
Dieser Artikel zeichnet das Installationstutorial...
1. Ubuntu Server 18.04.5 LTS-Systeminstallation U...
Dieser Artikel beschreibt anhand eines Beispiels,...
Zunächst muss Ihr Container laufen Sie können die...
1. Stoppen Sie zuerst den MySQL-Dienst Öffnen Sie...
Inhaltsverzeichnis 1. Über die visuelle Schnittst...
MySQL 5.0 ist aufgrund seiner wenigen „erweiterte...
In diesem Artikel wird die Installations- und Kon...
Verwenden Sie in JavaScript die Methode removeAtt...
Das Thema Big Data wird immer wichtiger und wer m...
Dieser Artikel veranschaulicht anhand von Beispie...
Dieser Artikel zeigt ein verschiebbares Anmeldefe...
Es ist sehr üblich, Bilder auf einer Seite hervor...
In diesem Artikel wird der spezifische Code von V...
Array-Methoden JavaScript bietet viele Array-Meth...