Jak przywrócić plik zrzutu z mysqldump?

Otrzymałem plik bazy danych MySQL, który muszę przywrócić jako bazę danych na moim komputerze z systemem Windows Server 2008.

Próbowałem użyć administratora MySQL, ale dostałem następujący błąd:

Wybrany plik został wygenerowany przez mysqldump i nie może być przywrócony przez ta aplikacja.

Jak to uruchomić?

Author: vog, 2008-09-20

15 answers

Powinno być tak proste, jak uruchomienie tego:

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

Jeśli zrzut jest pojedynczą bazą danych, może być konieczne dodanie linii na górze pliku:

USE <database-name-here>;

Jeśli był to zrzut wielu baz danych, instrukcje use już tam są.

Aby uruchomić te polecenia, Otwórz wiersz polecenia (w Windows) i {[2] } do katalogu, w którym znajduje się plik wykonywalny mysql.exe (być może będziesz musiał się trochę rozejrzeć, będzie to zależało od tego, jak zainstalowałeś mysql, tj. pakiet jak WAMP). Gdy już znajdziesz się w tym katalogu, powinieneś być w stanie po prostu wpisać polecenie tak, jak mam je powyżej.

 470
Author: Justin Bennett,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-01-15 14:49:08

Jeśli baza danych, którą chcesz przywrócić, nie istnieje, musisz ją najpierw utworzyć.

W wierszu poleceń, jeśli znajdujesz się w tym samym katalogu, w którym znajduje się zrzut pliku, użyj tych poleceń (z odpowiednimi podstawieniami):

C:\> mysql -u root -p

mysql> create database mydb;
mysql> use mydb;
mysql> source db_backup.dump;
 608
Author: Dónal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-03-06 19:46:59

Po prostu musisz to uruchomić:

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

Jeśli zrzut zawiera wiele baz danych, należy pominąć nazwę bazy danych:

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

Aby uruchomić te polecenia, Otwórz wiersz polecenia (w Windows) i cd do katalogu, w którym znajduje się plik wykonywalny mysql.exe (być może będziesz musiał się trochę rozejrzeć, to będzie zależeć od tego, jak zainstalowałeś mysql, tzn. samodzielny lub jako część pakietu takiego jak WAMP). Gdy już znajdziesz się w tym katalogu, powinieneś być w stanie po prostu wpisz polecenie.

 185
Author: vog,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-05 10:33:09
mysql -u username -p -h localhost DATA-BASE-NAME < data.sql

Look here-step 3 : this way you dont need the USE statement

 54
Author: womd,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-06-03 17:11:57

Kiedy tworzymy plik zrzutu z mysqldump, zawiera on duży skrypt SQL do odtworzenia zawartości bazy danych. Więc przywracamy go za pomocą uruchamiania klienta wiersza poleceń MySQL:

mysql -uroot -p 

(Gdzie root jest naszą nazwą administratora dla MySQL), a po podłączeniu do bazy danych potrzebujemy poleceń, aby utworzyć bazę danych i wczytać do niej Plik:

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

Szczegóły będą się różnić w zależności od opcji użytych podczas tworzenia pliku zrzutu.

 31
Author: pdc,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-09-19 21:34:18

I got it to work following these steps...

  1. Otwórz administratora MySQL i połącz się z serwerem

  2. Wybierz "katalogi" po lewej

  3. Kliknij prawym przyciskiem myszy w lewym dolnym polu i wybierz "Utwórz nowy schemat"

    Administrator MySQL http://img204.imageshack.us/img204/7528/adminsx9.th.gif powiększ obraz

  4. Nazwij nowy schemat (przykład: "dbn")

    MySQL Nowy Schemat http://img262.imageshack.us/img262/4374/newwa4.th.gif powiększ obraz

  5. Open Windows Command Prompt (cmd)

    Wiersz polecenia systemu Windows http://img206.imageshack.us/img206/941/startef7.th.gif powiększ obraz

  6. Zmień katalog na Folder instalacyjny MySQL

  7. Wykonaj polecenie:

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

    ...Gdzie "root" to nazwa użytkownika, " dbn " to nazwa bazy danych, a "C:\dbn_20080912.dump " jest ścieżka/nazwa pliku mysqldump .plik zrzutu

    MySQL dump restore command line http://img388.imageshack.us/img388/2489/cmdjx0.th.gif powiększ obraz

  8. Smacznego!

 13
Author: Zack Peterson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-10-01 14:01:06

Możesz wypróbować narzędzie SQLyog 'Execute SQL script', aby zaimportować pliki sql/dump.

Tutaj wpisz opis obrazka

 11
Author: Ashwin A,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-08-21 10:19:37

Jeśli chcesz zobaczyć postęp zrzutu spróbuj tego:

Pv-i 1-P-T-e /path/to/SQL/dump | mysql-u USERNAME-P DATABASE_NAME

Będziesz oczywiście potrzebował zainstalowanego 'pv'. To polecenie działa tylko na *nix.

 9
Author: Hengjie,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-02-06 08:20:19
./mysql -u <username> -p <password> -h <host-name like localhost> <database-name> < db_dump-file
 9
Author: vkrishna17,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-30 11:37:27

Jako konkretny przykład poprzedniej odpowiedzi:

Musiałem przywrócić kopię zapasową, aby móc importować/migrować ją do SQL Server. Zainstalowałem tylko MySql, ale nie zarejestrowałem go jako usługi ani nie dodałem do mojej ścieżki, ponieważ nie mam potrzeby, aby go uruchomić.

Użyłem Eksploratora windows, aby umieścić mój plik zrzutu w C:\code\dump.sql. Następnie otwórz MySql z menu start. Stworzył DB, a następnie uruchomił polecenie source z pełną ścieżką w ten sposób:

mysql> create database temp
mysql> use temp
mysql> source c:\code\dump.sql
 8
Author: Michael,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-01-13 22:16:20

Uruchom polecenie, aby wejść do DB

 # mysql -u root -p 

Wprowadź hasło dla użytkownika, a następnie utwórz nowy DB

mysql> create database MynewDB;
mysql> exit

I wyjść.Afetr that.Uruchom to polecenie

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

Następnie wprowadź do db i wpisz

mysql> show databases;
mysql> use MynewDB;
mysql> show tables;
mysql> exit
To wszystko ........ Twój zrzut zostanie przywrócony z jednego DB do drugiego DB

W przeciwnym razie istnieje alternatywny sposób przywracania zrzutu

# mysql -u root -p 

Następnie wprowadź do db i wpisz

mysql> create database MynewDB;
mysql> show databases;
mysql> use MynewDB;
mysql> source MynewDB.sql;
mysql> show tables;
mysql> exit
 8
Author: Shakeel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-24 11:31:17

Używając pliku zrzutu 200MB utworzonego na Linuksie do przywrócenia na Windows w / mysql 5.5, odniosłem większy sukces z

source file.sql

Podejście z podpowiedzi mysql niż z

mysql  < file.sql

Podejście z linii poleceń, które spowodowało błąd 2006 " serwer zniknął "(w systemie windows)

Co dziwne, usługa utworzona podczas instalacji (mysql) odnosi się do my.plik ini, który nie istnieje. Skopiowałem" duży " przykładowy plik do mojego.ini które już zmodyfikowałem za pomocą zalecanych podwyżek.

Moje wartości to

[mysqld]
max_allowed_packet = 64M
interactive_timeout = 250
wait_timeout = 250
 6
Author: Jerome_B,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-01-03 16:59:38

Nie można użyć menu przywracanie w MySQL Admin, jeśli kopia zapasowa / zrzut nie został utworzony stamtąd. Warto spróbować. Jeśli zdecydujesz się na "ignorowanie błędów" za pomocą pola wyboru, powie, że zakończono pomyślnie, chociaż wyraźnie wychodzi z zaimportowanym tylko ułamkiem wierszy...to jest z nora, pamiętaj o tym.

 3
Author: ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-06-15 21:11:57

Jednoliniowe polecenie przywracające wygenerowany SQL z mysqldump

mysql -u <username> -p<password> -e "source <path to sql file>;"
 1
Author: Jossef Harush,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-12-27 16:10:10

Możesz również użyć menu przywracanie w MySQL Administrator. Wystarczy otworzyć plik kopii zapasowej,a następnie kliknąć przycisk Przywróć.

 0
Author: user26087,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-11-09 03:53:03