web-dev-qa-db-de.com

Wie stelle ich eine Speicherauszugsdatei von mysqldump wieder her?

Ich erhielt eine MySQL-Datenbankdatei, die ich als Datenbank auf meinem Windows Server 2008-Computer wiederherstellen muss.

Ich habe versucht, MySQL Administrator zu verwenden, aber ich habe folgende Fehlermeldung erhalten:

Die ausgewählte Datei wurde von .__ generiert. mysqldump und kann nicht von .__ wiederhergestellt werden. Diese Anwendung.

Wie bekomme ich das zum Laufen?

471
Zack Peterson

Es sollte so einfach sein wie das Ausführen: 

mysql -u <user> -p < db_backup.dump

Wenn es sich bei dem Speicherauszug um eine einzelne Datenbank handelt, müssen Sie möglicherweise eine Zeile am Anfang der Datei hinzufügen:

USE <database-name-here>;

Wenn es sich bei vielen Datenbanken um einen Speicherauszug handelt, sind die use-Anweisungen bereits vorhanden.

Um diese Befehle auszuführen, öffnen Sie eine Eingabeaufforderung (unter Windows) und cd für das Verzeichnis, in dem sich die mysql.exe-Programmdatei befindet (möglicherweise müssen Sie sich ein bisschen umsehen, es hängt davon ab, wie Sie mysql installiert haben, dh als eigenständige Anwendung oder als Teil eines Pakets wie WAMP). Sobald Sie sich in diesem Verzeichnis befinden, sollten Sie den Befehl einfach so eingeben können, wie ich es oben habe.

505
Justin Bennett

Wenn die Datenbank, die Sie wiederherstellen möchten, noch nicht vorhanden ist, müssen Sie sie zuerst erstellen.

Wenn Sie sich in der Befehlszeile in demselben Verzeichnis befinden, in dem sich die ausgelesene Datei befindet, verwenden Sie diese Befehle (mit entsprechenden Ersetzungen):

C:\> mysql -u root -p

mysql> create database mydb;
mysql> use mydb;
mysql> source db_backup.dump;
650
Dónal

Sie müssen einfach das ausführen:

mysql -p -u[user] [database] < db_backup.dump

Wenn der Speicherauszug mehrere Datenbanken enthält, sollten Sie den Datenbanknamen weglassen:

mysql -p -u[user] < db_backup.dump

Um diese Befehle auszuführen, öffnen Sie eine Eingabeaufforderung (unter Windows) und cd für das Verzeichnis, in dem sich die mysql.exe-Programmdatei befindet (möglicherweise müssen Sie sich ein bisschen umsehen, es hängt davon ab, wie Sie mysql installiert haben, dh als eigenständige Anwendung oder als Teil eines Pakets wie WAMP). Sobald Sie sich in diesem Verzeichnis befinden, sollten Sie einfach den Befehl eingeben können.

204
vog
mysql -u username -p -h localhost DATA-BASE-NAME < data.sql

schau hier - Schritt 3 : Auf diese Weise brauchst du keine USE-Anweisung

55
womd

Wenn wir eine Dump-Datei mit mysqldump erstellen, enthält sie ein umfangreiches SQL-Skript zum Wiederherstellen der Datenbankinhalte. Wir stellen es also wieder her, indem Sie den Befehlszeilen-Client von MySQL starten:

mysql -uroot -p 

(wobei root unser Admin-Benutzername für MySQL ist), und sobald wir mit der Datenbank verbunden sind, benötigen wir Befehle zum Erstellen der Datenbank und zum Einlesen der Datei:

create database new_db;
use new_db;
\. dumpfile.sql

Details hängen davon ab, welche Optionen beim Erstellen der Speicherauszugsdatei verwendet wurden.

32
pdc

Ich habe es geschafft, nach diesen Schritten zu arbeiten…

  1. Öffnen Sie MySQL Administrator und stellen Sie eine Verbindung zum Server her

  2. Wählen Sie links "Kataloge"

  3. Klicken Sie mit der rechten Maustaste in das linke untere Feld und wählen Sie "Neues Schema erstellen".

    MySQL Administrator http://img204.imageshack.us/img204/7528/adminsx9.th.gifBild vergrößern

  4. Benennen Sie das neue Schema (Beispiel: "dbn")

    MySQL Neues Schema http://img262.imageshack.us/img262/4374/newwa4.th.gifBild vergrößern

  5. Öffnen Sie die Windows-Eingabeaufforderung (cmd).

    Windows-Eingabeaufforderung http://img206.imageshack.us/img206/941/startef7.th.gifBild vergrößern

  6. Wechseln Sie in das MySQL-Installationsverzeichnis

  7. Befehl ausführen:

    mysql -u root -p dbn < C:\dbn_20080912.dump
    

    … Wobei "root" der Name des Benutzers ist, "dbn" der Datenbankname und "C:\dbn_20080912.dump" der Pfad/Dateiname der Datei mysqldump

    MySQL-Dump-Restore-Befehlszeile http://img388.imageshack.us/img388/2489/cmdjx0.th.gifBild vergrößern

  8. Genießen!

14
Zack Peterson

Führen Sie den Befehl aus, um in die Datenbank zu gelangen 

 # mysql -u root -p 

Geben Sie das Kennwort für den Benutzer ein und erstellen Sie eine neue Datenbank 

mysql> create database MynewDB;
mysql> exit

Und beenden Sie das Programm. Führen Sie diesen Befehl aus. Führen Sie diesen Befehl aus

# mysql -u root -p  MynewDB < MynewDB.sql

Dann geben Sie in die Datenbank ein und geben Sie ein

mysql> show databases;
mysql> use MynewDB;
mysql> show tables;
mysql> exit

Das ist es ........ Ihr Dump wird von einer DB in eine andere DB wiederhergestellt

Andernfalls gibt es eine alternative Möglichkeit zum Wiederherstellen der Sicherung

# mysql -u root -p 

Dann geben Sie in die Datenbank ein und geben Sie ein

mysql> create database MynewDB;
mysql> show databases;
mysql> use MynewDB;
mysql> source MynewDB.sql;
mysql> show tables;
mysql> exit
14
Javeed Shakeel

Sie können das Tool SQLyog 'Execute SQL script' (SQL-Skript ausführen) ausführen, um SQL/Dump-Dateien zu importieren. 

enter image description here

12
Ashwin A

Wenn Sie den Fortschritt des Dumps anzeigen möchten, versuchen Sie Folgendes:

pv -i 1 -p -t -e/pfad/to/sql/dump | mysql -u USERNAME -p DATENBANKNAME

Sie müssen natürlich 'pv' installieren. Dieser Befehl funktioniert nur bei * nix.

10
Hengjie
./mysql -u <username> -p <password> -h <Host-name like localhost> <database-name> < db_dump-file
10
vkrishna17

Als konkretes Beispiel für eine vorherige Antwort:

Ich musste ein Backup wiederherstellen, um es in SQL Server importieren/migrieren zu können. Ich habe nur MySql installiert, es jedoch nicht als Dienst registriert oder meinem Pfad hinzugefügt, da es nicht erforderlich ist, dass es ausgeführt wird. 

Ich habe Windows Explorer verwendet, um meine Sicherungsdatei in C:\code\dump.sql abzulegen. Dann öffnet MySql aus dem Startmenüpunkt. Die Datenbank wurde erstellt und anschließend der Quellbefehl mit dem vollständigen Pfad ausgeführt:

mysql> create database temp
mysql> use temp
mysql> source c:\code\dump.sql
9
Michael

Mit einer unter Linux erstellten 200-MB-Dump-Datei zur Wiederherstellung unter Windows mit Mysql 5.5 hatte ich mehr Erfolg mit der

source file.sql

ansatz von der Mysql-Eingabeaufforderung als mit der

mysql  < file.sql

annäherung auf der Befehlszeile, die einige Fehler 2006 "Server ist weg" (unter Windows) verursacht

Seltsamerweise bezieht sich der während der Installation von (MySQL) erstellte Dienst auf eine my.ini-Datei, die nicht vorhanden war. Ich habe die "große" Beispieldatei in my.ini Kopiert, die ich bereits mit den empfohlenen Erhöhungen geändert hatte. 

Meine Werte sind

[mysqld]
max_allowed_packet = 64M
interactive_timeout = 250
wait_timeout = 250
7
Jerome_B

Sie können das Wiederherstellungsmenü in MySQL Admin nicht verwenden, wenn das Backup/Dump dort nicht erstellt wurde. Es ist jedoch einen Versuch wert. Wenn Sie mit dem Kontrollkästchen "Fehler ignorieren" wählen, wird dies als erfolgreich abgeschlossen angezeigt, obwohl es eindeutig nur einen Bruchteil der importierten Zeilen enthält. Dies ist jedoch ein Dump.

4
jerotas

Einzeiliger Befehl zum Wiederherstellen des generierten SQL aus mysqldump

mysql -u <username> -p<password> -e "source <path to sql file>;"
3
Jossef Harush

Angenommen, Sie haben bereits eine leere Datenbank erstellt, können Sie eine Datenbank auch wie folgt über die Befehlszeile wiederherstellen:

Sudo mysql databasename < backup.sql
1
Suragch

Sie können auch das Wiederherstellungsmenü in MySQL Administrator verwenden. Sie müssen nur die Sicherungsdatei öffnen und dann auf die Schaltfläche zum Wiederherstellen klicken.

1
user26087

Wiederherstellen der MySQL-Datenbank mit MySQLWorkbench

Sie können das Ablegen ausführen und Befehle auf einer Abfrage-Registerkarte erstellen.

Löschen Sie das Schema, wenn es aktuell vorhanden ist

DROP DATABASE `your_db_name`;

Erstellen Sie ein neues Schema

CREATE SCHEMA `your_db_name`;

Öffnen Sie Ihre Dump-Datei

 MySQLWorkbench open sql file

  1. Klicken Sie auf das Symbol Ein SQL-Skript in einem neuen Abfrage-Tab-Symbol öffnen und wählen Sie Ihre Datenbankspeicherauszugsdatei aus.
  2. Klicken Sie dann auf SQL-Skript ausführen ....
  3. Anschließend können Sie eine Vorschau der ersten Zeilen des SQL-Dump-Skripts anzeigen.
  4. Sie wählen dann den Default-Schemanamen.
  5. Wählen Sie als Nächstes den Default Character Set. Utf8 ist normalerweise eine sichere Wette, aber Sie können es vielleicht erkennen, dass Sie die Vorschauzeilen nach etwas wie character_set suchen.
  6. Klicken Sie auf Ausführen.
  7. Seien Sie geduldig auf große DB-Wiederherstellungsskripte und passen Sie auf, wie der Speicherplatz schmilzt! ????
0
CTS_AE