Wiederherstellen mehrerer MySQL-Datenbanken aus einer Datei in der Befehlszeile?

13

Ich habe alle meine Datenbanken mit phpMyAdmin in eine Datei exportiert.

Leider habe ich keinen funktionierenden phpMyAdmin in meinem Zielsystem.

Wie kann ich alle auf einmal mit einem Zeilenbefehl wiederherstellen?

smhnaji
quelle
1
Hast du einen Blick in die Akte geworfen? Es sollte / könnte Befehle zum Erstellen und Wechseln zu den Datenbanken nach Bedarf enthalten.
Tom Regner
Ja, Datenbanken werden erstellt und dann mit dem USE database_nameBefehl ausgewählt .
smhnaji
Dann sind die Antworten von Unni und laurents richtig.
Tom Regner

Antworten:

18

Warum fassen Sie nicht alle Dateien in einer einzigen Datei zusammen und importieren / wiederherstellen sie mit

mysql -u username -p < dump.sql

Erstellen Sie eine Datei mit

mysqldump -u username -p --all-databases > dump.sql
devav2
quelle
Das OP hat bereits eine einzelne Datei und er muss die Dateien wiederherstellen, damit er sie wohl nicht mehr sichern kann.
Laurent
@laurent Ja, verstanden. Mit mysql -u username -p < dump.sqlwird die mehrfache MySQL-Datenbank geladen.
Devav2
Ja, sicher , es wird
laurent
2
es hat bei mir nicht geklappt. Es heißt, ich muss eine Datenbank auswählen
Aryeh Armon
3

Wenn Sie viele Datenbanken in einer Datei gesichert haben, haben Sie vermutlich die create databaseAnweisungen in derselben Datei gesichert . Wenn nicht, müssen Sie die Anweisungen create databaseund nur use databasean den richtigen Stellen zu Ihrer Datei hinzufügen .

Danach lautet der Befehl zum Laden der Datei in mysql:

mysql -p < sqlfile.sql

-p ist nach deinem Passwort zu fragen.

Sie können verwenden, -u usernamewenn Sie einen anderen Benutzer verwenden müssen.

laurent
quelle
1

Der Befehl mysql zum Wiederherstellen der SQL-Datei lautet:

mysql DATABASE_NAME < SQL_FILENAME.sql

Stellen Sie zunächst sicher, dass es sich bei der Datei um SQL handelt. Wenn es mit der Dateierweiterung gz endet, müssen Sie es mit dem folgenden Befehl dekomprimieren:

gunzip SQL_FILE.sql.gz
Unni
quelle
1
-1. Wie oben erwähnt, sind in der Datei MEHRERE Datenbanken gespeichert, und ich möchte, dass alle auf einmal wiederhergestellt werden.
Smhnaji
Kann man jede Datenbank separat in phpmyadmin exportieren und auf dem Quellserver wiederherstellen? Oder verwenden Sie Linux-Stream-Editoren wie sed oder awk, um sie in verschiedene Dateien aufzuteilen.
Unni
1
keine Notwendigkeit, kann er alle die Datenbanken aus einer einzigen Datei importieren
laurent