Hoe een database in MySQL te importeren en exporteren
- Categorie: Linux
De laatste tijd heb ik veel aandacht besteed aan MySQL. Daar zijn natuurlijk veel redenen voor - MySQL is een even populaire database als flexibel en betrouwbaar. En tot nu toe heb ik MySQL Workbench behandeld (zie mijn artikel ' Compleet databasebeheerpakket MySQL Workbench '), MySQL-beheerder (zie mijn artikel' Een database aanmaken met MySQL Administrator '), MySQL Navigator (zie mijn artikel' Beheer uw MySQL-databases met een eenvoudig te gebruiken GUI '), of PhpMyAdmin (zie mijn artikel' Installeer PhpMyAdmin voor eenvoudig MySQL-beheer '). Via mijn LAMP-artikel, ' Hoe een LAMP-server te installeren ', heb je geleerd hoe je MySQL installeert. Deze keer laat ik je zien hoe je een database exporteert en deze vervolgens in een andere MySQL-server importeert. En tot slot werd de mogelijkheid om vanaf een externe machine verbinding te maken met een MySQL-server geïllustreerd in mijn artikel ' Sta externe verbindingen met uw MySQL-server toe '.
Waarom zou je dit doen? Een zeer goede reden is voor hardware-updates of het vervangen van stervende hardware op uw MySQL-server. Als die hardware doodgaat, moet u uw databases van de stervende schijf halen en op een vrije schijf zetten. De meest betrouwbare en gemakkelijkste manier om dit te doen, is door de ingebouwde MySQL-opdrachtregelprogramma's te gebruiken. Dat is precies wat we hier gaan doen.
De tools die je nodig hebt
Eerst en vooral gebruikt u twee commando's, die beide al op uw MySQL-server zijn geïnstalleerd. De twee commando's zijn:
- mysqldump: Dit is de opdracht die u gebruikt om uw database te exporteren.
- mysql: dit is het commando dat u gaat gebruiken om uw database te importeren.
U hebt ook een middel nodig om uw database van de ene machine naar de andere te transporteren. Ik zou een beschrijfbare cd / dvd (afhankelijk van de grootte) of een USB-flashstation aanbevelen. Als u FTP gebruikt, kunnen er problemen zijn met gegevensbeschadiging waar u niet mee te maken wilt hebben. En als u die databases op een verwisselbaar apparaat plaatst, heeft u een reservekopie voor het geval er iets misgaat.
Naast een manier om de database te exporteren, hebt u ook het MySQL-beheerderswachtwoord nodig. Met alles in de hand, gaan we exporteren.
Exporteren
U hebt uw beheerderswachtwoord niet nodig om de opdracht mysqldump uit te voeren. U hoeft sudo ook niet te gebruiken om deze opdracht uit te voeren. Dus, om uw database te exporteren, opent u een terminalvenster en geeft u de volgende opdracht:
mysqldump -u GEBRUIKER -p DATABASE> FILENAME.sql
Waar GEBRUIKER is de MySQL-beheerder, DATABASE is de database die u wilt exporteren, en BESTANDSNAAM is de bestandsnaam die u het geëxporteerde bestand een naam wilt geven (u kunt het beste gewoon de databasenaam gebruiken voor de bestandsnaam, om verwarring te voorkomen.)
Wanneer u deze opdracht geeft, wordt u om het MySQL-beheerderswachtwoord gevraagd. Voer dat wachtwoord in en druk op Enter. In de map waarin u de opdracht hebt gegeven, heeft u nu een bestand met de .sql-extensie, het bestand dat u vervolgens naar uw cd-, dvd- of USB-flashstation moet kopiëren.
Importeren
Nu dat bestand op een verwisselbaar medium staat, transporteert u dat bestand naar de nieuwe machine, plaatst u de media, koppelt u de media (indien nodig) en kopieert u het bestand naar de homedirectory van uw gebruikers. Open nu een terminalvenster en geef de opdracht:
mysql -u GEBRUIKER -p DATABASE < BESTANDSNAAM .sql
Waar GEBRUIKER is de MySQL admin gebruikersnaam, DATABASE is de naam van de te importeren database, en BESTANDSNAAM.sql is de dump die werd geëxporteerd vanaf de oorspronkelijke machine.
U wordt gevraagd om het MySQL-beheerderswachtwoord en vervolgens keert u hoogstwaarschijnlijk terug naar uw prompt, zonder fouten.
Dat is het. U hebt officieel een database geëxporteerd en geïmporteerd van de ene machine naar de andere.