So stellen Sie einzelne Tabellendaten mithilfe der vollständigen MySQL-Datenbanksicherungsdaten wieder her

So stellen Sie einzelne Tabellendaten mithilfe der vollständigen MySQL-Datenbanksicherungsdaten wieder her

Vorwort

Beim Sichern der Datenbank wird eine vollständige Datenbanksicherung verwendet. Aus irgendeinem Grund müssen die Daten einer Tabelle jedoch auf die Sicherungsdatenbank zurückgesetzt werden. Wenn die gesamte Datenbank zurückgesetzt wird, dauert dies lange, da diese Tabelle möglicherweise nur einige zehn MB groß ist, andere Tabellen jedoch mehrere zehn oder hundert GB groß sein können. Zu diesem Zeitpunkt muss die Tabelle, die wiederhergestellt werden muss, extrahiert werden.

Wir alle sind bei unserer Arbeit schon auf diese Situation gestoßen: Eine MySQL-Instanz kann mehrere Datenbanken enthalten. Beim Sichern verwenden wir normalerweise ein Voll-Backup, um alle Datenbanken in einer Datei zu sichern.

Gelegentlich müssen Sie jedoch möglicherweise nur eine Datenbank oder eine Tabelle wiederherstellen. Wie kann man das Problem lösen?

Jetzt gibt es eine Sicherungsbibliothek fdcsqlmysql-2018_11_30-03_00_01.sql, die mehrere Tabellen enthält. Jetzt müssen wir die Daten der Tabelle fdc_document wiederherstellen.

Anweisungen zum Extrahieren einer Tabelle

sed -e '/./{H;$!d;}' -e 'x;/CREATE TABLE `Tabellenname`/!d;q' mysqldump.sql (Name der Sicherungsdatei)

sed -e '/./{H;$!d;}' -e 'x;/ERSTELLEN SIE TABELLE `fdc_document`/!d;q' fdcsqlmysql-2018_11_30-03_00_01.sql

Tabelle löschen, wenn `fdc_document` vorhanden ist;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET Zeichensatzclient = utf8 */;
CREATE TABLE `fdc_document` (
 `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Dokument-ID',
 `uid` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'Benutzer-ID',
 `name` char(40) NOT NULL DEFAULT '' COMMENT 'Bezeichner',
 ...
 ...
 ...
 `entrust_rule` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT 'Der Broker klickt, ob er die Treuhandvereinbarung mit dem Benutzer unterzeichnen möchte: 1 für ja; 0 für nein',
 `audit` tinyint(3) NOT NULL DEFAULT '0' COMMENT 'Audit: 0 bedeutet ungeprüft; 1 bedeutet, das Bild wurde geprüft; 2 bedeutet, die Beschreibung wurde geprüft; 3 bedeutet, sowohl das Bild als auch die Beschreibung wurden geprüft',
 Primärschlüssel (`id`),
 SCHLÜSSEL `idx_area_house` (`Partition`,`Kategorie_ID`,`Status`,`ist_aus`) MIT BTREE,
 SCHLÜSSEL `idx_model_house` (`model_id`,`status`,`is_off`) MIT BTREE,
 SCHLÜSSEL `idx_community_house` (`community_id`,`estate`,`status`,`is_off`) MIT BTREE,
 SCHLÜSSEL `idx_uid_house` (`uid`,`model_id`,`is_off`) MIT BTREE,
 SCHLÜSSEL `idx_pid_house` (`id`,`pid`,`status`,`is_off`) MIT BTREE,
 SCHLÜSSEL `is_video` (`is_video`) MIT BTREE
) ENGINE=InnoDB AUTO_INCREMENT=211138 DEFAULT CHARSET=utf8;
/*!40101 SET Zeichensatzclient = @saved_cs_client */;

Tabellendaten extrahieren

grep 'INSERT INTO Tabellenname' mysqldump.sql (Name der Sicherungsdatei) > table_data.sql

Hier sollten Sie grep 'INSERT INTOfdc_document' fdcsqlmysql-2018_11_30-03_00_01.sql > document.sql ausführen

Nach der Ausführung erhalten Sie die Datei document.sql, die die erforderliche separate Tabellendatei ist, und Sie können die Tabellendaten normal wiederherstellen.

Erstellen einer Datenbank und einer Tabelle

Erstellen Sie zuerst die Datenbank und dann die Tabelle fdc_document gemäß der obigen SQL-Anweisung

Tabellendaten importieren

MySQL [Dokument]> Quelle /data/backup/mysql/document.sql

OK, fertig!

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • So stellen Sie eine einzelne Datenbank oder Tabelle in MySQL wieder her und mögliche Fallstricke
  • Schritte zum Wiederherstellen einer einzelnen MySQL-Tabelle
  • So stellen Sie eine Datenbank und eine Tabelle aus einer vollständigen MySQL-Datenbanksicherung wieder her
  • 3 Methoden zum Wiederherstellen der Tabellenstruktur aus einer FRM-Datei in MySQL [empfohlen]
  • InnoDB-Typ MySql stellt Tabellenstruktur und Daten wieder her
  • MySQL-Wiederherstellung angegebener Tabellen und Bibliotheken aus einer vollständigen Datenbanksicherung – Beispiel
  • Detaillierte Erläuterung der Methode zur Wiederherstellung von MySQL-Einzeltabellen-IBD-Dateien
  • MySQL verwendet .frm, um die Datentabellenstruktur wiederherzustellen
  • So verwenden Sie mysqldump zum Sichern und Wiederherstellen bestimmter Tabellen
  • MySQL verwendet frm-Dateien und ibd-Dateien, um Tabellendaten wiederherzustellen

<<:  Implementierung der Docker-Bereitstellung von Tomcat- und Webanwendungen

>>:  Verwenden von React+Redux zum Implementieren der Zählerfunktion und aufgetretene Probleme

Artikel empfehlen

CSS-Pseudoklasse: empty makes me shine (Beispielcode)

Jeder, der meine Artikel in letzter Zeit gelesen ...

So fügen Sie Nginx zu den Systemdiensten in CentOS7 hinzu

Einführung Nach dem Kompilieren, Installieren und...

Lösung für Fehler 1290 beim Importieren von Dateidaten in MySQL

Fehlerszenario Verwenden Sie den MySQL-Befehl in ...

Grafisches Tutorial zur kostenlosen Installationsversion von MySQL 5.7.21 winx64

Konfigurationsmethode für die kostenlose Installa...

JavaScript zum Erzielen eines einfachen Lupeneffekts

In einem großen Kästchen befindet sich ein Bild. ...

Eine kurze Diskussion über den JavaScript-Bereich

Inhaltsverzeichnis 1. Geltungsbereich 1. Globaler...

Detaillierte Erklärung langsamer MySQL-Abfragen

Informationen zu MySQL-Vorgängen abfragen Status ...

jQuery implementiert eine einfache Änderung der Schaltflächenfarbe

Wir möchten in HTML und CSS die Farbe eines Butto...

Detaillierte Erklärung zum virtuellen Javascript-DOM

Inhaltsverzeichnis Was ist virtueller Dom? Warum ...