Så här exporterar och importerar du alla MySQL-databaser

Många utvecklare och pro användare är beroende av MySQL för deras databasbehov. Vi går igenom hur du exporterar eller dumpar alla databaser från MySQL, dumpar en enda databas och visar också hur du importerar alla dessa databaser från en database.sql-fil tillbaka till MySQL.

Även om det finns GUI-baserade verktyg för att interagera med MySQL, kommer vi att fokusera på kommandoraden här. MySQL-kommandona fungerar med vilken version av databasprogramvaran som helst på alla unix-operativsystem, inklusive Linux, Mac OS och Mac OS X, eller vad som helst som du råkar köra mySQL på.

Vi antar att du redan har MySQL installerat och kört, om du inte kan lära dig att starta och stoppa MySQL-servern på Mac OS här och ladda ner MySQL här eller om du letar efter en hel webbserverstack, kolla in Lätt att använda MAMP för Mac.

Så här dumpar du alla databaser från MySQL via kommandoraden

Det enklaste sättet att dumpa alla databaser från MySQL till en .sql-fil, för säkerhetskopiering eller migrering eller på annat sätt, använder all-databaser flaggan som så:

mysqldump --all-databases > all_databases_dump.sql

Eftersom det här kommandot exporterar alla databaser behöver du inte ange ett databasnamn. Alla databaser som lagras i mySQL kommer att dumpas i exportfilen "all_databases_dump.sql" i den nuvarande arbetsmappen.

Om det behövs kan du också ange ett användarnamn och lösenord när alla databaser dumpas, i det här fallet med användarnamnet som root:

mysqldump -u root -p --all-databases > all_databases.sql

Efter att mysql-databasen har dumpats är min personliga preferens att skapa en tjärgzip från den som beskrivs här men det är helt frivilligt.

Så här exporterar du en specifik databas från MySQL

Om du vill dumpa en viss databas efter namn istället för att exportera alla databaser, är det lika enkelt:

mysqldump database_name > database_name_dump.sql

Kommandot mysqldump har många parametrar och flaggor som kan vara till hjälp för att exportera och säkerhetskopiera databaser. Du kan lära dig mer från den manuella sidan med "man mysqldump" eller genom att läsa här på dev.mysql webbplats.

Så här importerar du alla databaser till MySQL

Självklart om du har en databasdump, är det viktigt att importera det till MySQL. Här är det enklaste sättet att importera alla databaser från en database.sql-fil till MySQL via kommandoraden:

mysql database_name < database_dump.sql

Och som att exportera en databas, när du importerar kan du också ange ett användarnamn om så önskas:

mysql -u root -p < database_dump.sql

Du anger också ett annat användarnamn eller en databas om du vill:

mysql -u user -p database_name < database_dump.sql

Importera en specifik databas till MySQL

Du kan också importera en viss databas i en stor dump med namn:

mysql --one-database database_name < all_databases.sql

Som tidigare, om du har problem med att importera databaser till mysql kan du gå till den manuella sidan med "man mysql" eller till den officiella dokumentationen här på mysql-utvecklarens webbplats.

Känna några intressanta knep för att exportera databaser och importera databaser i MySQL? Låt oss veta i kommentarerna!