Een MySQL-database importeren vanaf de commandoregel

19 augustus, 2014
Handleidingen
MySQL

Als je met een programma zoals mysqldump een backup van een MySQL-database hebt gemaakt, kun je deze met de standaard MySQL-software via de commandoregel eenvoudig weer importeren. Hiervoor heb je een MySQL-gebruiker nodig die over de vereiste privileges beschikt.

mysqldump produceert, net als andere programma's waarmee backups van MySQL-databases gemaakt kunnen worden, een bestand met SQL-commando's op basis van alle gegevens uit één of meerdere databases. Hiermee kan de structuur van de geëxporteerde database opgebouwd, en alle inbegrepen data opnieuw ingevoerd worden. Het uitlezen van dit bestand, en het uitvoeren van de commando's, kunnen we aan het mysql-programma overlaten:

mysql -u GEBRUIKERSNAAM -pWACHTWOORD DATABASE < BESTANDSNAAM.sql

Na de -u parameter (username) volgt de gebruikersnaam van de gebruiker die over de benodigde privileges beschikt. Na de -p parameter (password) kunnen we eventueel direct het bijbehorende wachtwoord opgeven, zonder spatie tussen parameter en wachtwoord, maar we kunnen ook alleen de parameter -p opgeven; in dat geval worden we na het invoeren van het commando door mysql om het wachtwoord gevraagd.

Na de -p parameter volgt de naam van de database waarin we de gegevens willen importeren, gevolgd door een kleiner-dan teken (<) en de naam van het .sql-bestand, of het volledige pad daarnaartoe indien het bestand niet in de huidige map staat opgeslagen.

mysql -u jan -p WordPress < /var/backups/wordpress-backup.sql
Enter password:

Het importeren kan even duren. De benodigde tijd is afhankelijk van de grootte van de database(s) en de snelheid van het opslagmedium.