Hoe herstel ik een dumpbestand van mysqldump?

Ik heb een MySQL-databasebestand gekregen dat ik moet herstellen als database op mijn Windows Server 2008-computer.

Ik heb geprobeerd MySQL Administrator te gebruiken, maar ik kreeg de volgende foutmelding:

Het geselecteerde bestand is gegenereerd door
mysqldump en kan niet worden hersteld door
deze applicatie.

Hoe krijg ik dit werkend?


Antwoord 1, autoriteit 100%

Het zou zo simpel moeten zijn als dit:

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

Als de dump van een enkele database is, moet u mogelijk een regel bovenaan het bestand toevoegen:

USE <database-name-here>;

Als het een dump was van veel databases, staan ​​de use-statements er al in.

Om deze opdrachten uit te voeren, opent u een opdrachtprompt (in Windows) en cd naar de map waar het uitvoerbare bestand mysql.exe zich bevindt (mogelijk moet u even rondkijken een beetje voor, het zal afhangen van hoe je mysql hebt geïnstalleerd, dwz standalone of als onderdeel van een pakket zoals WAMP). Als je eenmaal in die map bent, zou je gewoon het commando moeten kunnen typen zoals ik het hierboven heb.


Antwoord 2, autoriteit 99%

Als de database die u wilt herstellen nog niet bestaat, moet u deze eerst maken.

Als u zich op de opdrachtregel in dezelfde map bevindt die het gedumpte bestand bevat, gebruikt u deze opdrachten (met de juiste vervangingen):

C:\> mysql -u root -p
mysql> create database mydb;
mysql> use mydb;
mysql> source db_backup.dump;

Antwoord 3, autoriteit 42%

U hoeft alleen dit uit te voeren:

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

Als de dump meerdere databases bevat, moet u de databasenaam weglaten:

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

Om deze opdrachten uit te voeren, opent u een opdrachtprompt (in Windows) en cd naar de map waar het uitvoerbare bestand mysql.exe zich bevindt (mogelijk moet u even rondkijken een beetje voor, het zal afhangen van hoe je mysql hebt geïnstalleerd, dwz standalone of als onderdeel van een pakket zoals WAMP). Als je eenmaal in die map bent, zou je gewoon de opdracht moeten kunnen typen.


Antwoord 4, autoriteit 10%

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

kijk hier – stap 3: op deze manier je hebt de USE-verklaring niet nodig


Antwoord 5, autoriteit 6%

Als we een dumpbestand maken met mysqldump, bevat het een groot SQL-script om de database-inhoud opnieuw te maken. Dus we herstellen het door de MySQL-opdrachtregelclient op te starten:

mysql -uroot -p 

(waar root onze admin gebruikersnaam is voor MySQL), en eenmaal verbonden met de database hebben we commando’s nodig om de database te creëren en het bestand erin te lezen:

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

Details zijn afhankelijk van de opties die zijn gebruikt bij het maken van het dumpbestand.


Antwoord 6, autoriteit 3%

Voer het commando uit om de DB binnen te gaan

 # mysql -u root -p 

Voer het wachtwoord voor de gebruiker in en maak vervolgens een nieuwe database

mysql> create database MynewDB;
mysql> exit

En maak exit.Afetr that.Voer deze opdracht uit

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

Voer dan in de db en typ

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

Dat is het …….. Uw dump wordt hersteld van de ene DB naar een andere DB

Anders is er een alternatieve manier voor dumpherstel

# mysql -u root -p 

Voer dan in de db en typ

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

Antwoord 7, autoriteit 3%

Als je de voortgang van de dump wilt zien, probeer dan dit:

pv -i 1 -p -t -e /path/to/sql/dump | mysql -u USERNAME -p DATABASE_NAME

Je moet natuurlijk ‘pv’ hebben geïnstalleerd. Dit commando werkt alleen op *nix.


Antwoord 8, autoriteit 2%

Ik heb het werkend gekregen door deze stappen te volgen

  1. Open MySQL Administrator en maak verbinding met de server

  2. Selecteer “Catalogi” aan de linkerkant

  3. Klik met de rechtermuisknop in het vak linksonder en kies “Nieuw schema maken”

    MySQL-beheerder http://img204.imageshack.us/img204/7528/ adminsx9.th.gif afbeelding vergroten

  4. Geef het nieuwe schema een naam (voorbeeld: “dbn”)

    Nieuw MySQL-schema http://img262.imageshack.us/img262/4374 /newwa4.th.gif afbeelding vergroten

  5. Open Windows-opdrachtprompt (cmd)

    Windows-opdrachtprompt http://img206.imageshack.us/img206/941 /startef7.th.gif afbeelding vergroten

  6. Verander de map in de MySQL-installatiemap

  7. Voer opdracht uit:

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

    waar “root” de naam van de gebruiker is, “dbn” de databasenaam en “C:\dbn_20080912.dump” het pad/bestandsnaam van het mysqldump .dump-bestand

    MySQL dump restore-opdrachtregel http://img388.imageshack.us/img388 /2489/cmdjx0.th.gif afbeelding vergroten

  8. Veel plezier!


Antwoord 9, autoriteit 2%

Als een specifiek voorbeeld van een eerder antwoord:

Ik moest een back-up terugzetten zodat ik deze kon importeren/migreren naar SQL Server. Ik heb alleen MySql geïnstalleerd, maar heb het niet als een service geregistreerd of aan mijn pad toegevoegd omdat ik niet de behoefte heb om het actief te houden.

Ik heb Windows Verkenner gebruikt om mijn dumpbestand in C:\code\dump.sql te plaatsen. Vervolgens MySql geopend vanuit het startmenu-item. De DB gemaakt en vervolgens het broncommando uitgevoerd met het volledige pad als volgt:

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

Antwoord 10, autoriteit 2%

Je kunt de SQLyog tool ‘SQL uitvoeren’ proberen om sql/dump-bestanden te importeren.

voer hier de afbeeldingsbeschrijving in


Antwoord 11, autoriteit 2%

Met behulp van een 200 MB dumpbestand gemaakt op Linux om te herstellen op Windows met mysql 5.5, had ik meer succes met de

source file.sql

benadering vanaf de mysql-prompt dan met de

mysql  < file.sql

benadering op de opdrachtregel, die een fout in 2006 veroorzaakte “server is verdwenen” (op Windows)

Vreemd genoeg verwijst de service die tijdens de (mysql) installatie is gemaakt naar een my.ini-bestand dat niet bestond. Ik heb het “grote” voorbeeldbestand gekopieerd naar my.ini
die ik al had aangepast met de geadviseerde verhogingen.

Mijn waarden zijn

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

Antwoord 12

./mysql -u <username> -p <password> -h <host-name like localhost> <database-name> < db_dump-file

Antwoord 13

U kunt het menu Herstellen in MySQL Admin niet gebruiken als de back-up / dump daar niet is gemaakt. Het is wel het proberen waard. Als je ervoor kiest om “fouten te negeren” met het selectievakje daarvoor, zal het zeggen dat het succesvol is voltooid, hoewel het duidelijk wordt afgesloten met slechts een fractie van de geïmporteerde rijen … dit is met een dump, let wel.


Antwoord 14

One-liner-opdracht om de gegenereerde SQL te herstellen van mysqldump

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

Antwoord 15

Ervan uitgaande dat u de lege database al heeft aangemaakt, kunt u een database ook als volgt herstellen vanaf de opdrachtregel:

mysql databasename < backup.sql

Antwoord 16

U kunt ook het herstelmenu gebruiken in MySQL Administrator. U hoeft alleen het back-upbestand te openen en vervolgens op de herstelknop te klikken.


Antwoord 17

MySQL-database herstellen met MySQLWorkbench

U kunt de drop uitvoeren en opdrachten maken in een querytabblad.

Laat het schema vallen als het momenteel bestaat

DROP DATABASE `your_db_name`;

Een nieuw schema maken

CREATE SCHEMA `your_db_name`;

Open uw dumpbestand

MySQLWorkbench open sql-bestand

  1. Klik op het pictogram Open een SQL-script in een nieuw querytabblad en kies uw db-dumpbestand.
  2. Klik vervolgens op SQL-script uitvoeren…
  3. Je kunt dan een voorbeeld van de eerste regels van het SQL-dumpscript bekijken.
  4. Je kiest dan de Standaard Schemanaam
  5. Kies vervolgens de Standaardtekenset utf8 is normaal gesproken een veilige gok, maar je kunt het misschien onderscheiden door naar de voorbeeldregels te kijken voor iets als character_set.
  6. Klik op Uitvoeren
  7. Wees geduldig voor grote DB-herstelscripts en kijk hoe je schijfruimte wegsmelt! ??

LEAVE A REPLY

Please enter your comment!
Please enter your name here

five × three =

Other episodes