Hur man exporterar & Importera alla MySQL-databaser
Innehållsförteckning:
Många utvecklare och professionella användare förlitar sig på MySQL för sina databasbehov. Vi går igenom hur man exporterar eller dumpar alla databaser från MySQL, dumpar en enda databas och visar också hur man importerar alla dessa databaser från en database.sql-fil tillbaka till MySQL.
Medan det finns GUI-baserade verktyg för att interagera med MySQL, kommer vi att fokusera på kommandoraden här.MySQL-kommandona fungerar med alla versioner av databasprogramvaran på alla unix OS, inklusive linux, Mac OS och Mac OS X, eller vad du nu råkar köra mySQL på.
Vi kommer att anta att du redan har MySQL installerat och kört, om inte kan du lära dig hur du startar och stoppar MySQL-server på Mac OS här och kan ladda ner MySQL här eller om du letar efter en hela webbserverstacken, kolla in den lättanvända MAMP för Mac.
Hur du dumpar 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, är att använda flaggan –all-databases så här:
mysqldump --all-databases > all_databases_dump.sql
Eftersom detta kommando exporterar alla databaser behöver du inte ange ett databasnamn. Alla databaser lagrade i mySQL kommer att dumpas till exportfilen "all_databases_dump.sql" i den nuvarande arbetskatalogen.
Om det behövs kan du också ange ett användarnamn och lösenord när du dumpar alla databaser som så, i det här fallet med användarnamnet root:
mysqldump -u root -p --all-databases > all_databases.sql
Efter att mysql-databasen har dumpats är min personliga preferens att skapa en tar gzip från den enligt beskrivningen här men det är helt valfritt.
Hur man exporterar en specifik databas från MySQL
Om du vill dumpa en specifik databas med namn istället för att exportera alla databaser är det lika enkelt:
mysqldump databasnamn > databasnamn_dump.sql
Mysqldump-kommandot 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 manualsidan med "man mysqldump" eller genom att läsa här på dev.mysqls hemsida.
Hur man importerar alla databaser till MySQL
Om du har en databasdump är det naturligtvis viktigt att importera den 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 precis som när du exporterar en databas kan du vid import också ange ett användarnamn om så önskas:
mysql -u root -p < database_dump.sql
Du anger ett annat användarnamn eller databas om så önskas:
mysql -u användare -p database_name < database_dump.sql
Importera en specifik databas till MySQL
Du kan också importera en specifik databas i en stor dump med namn:
mysql --endatabas databasnamn < all_databases.sql
Som tidigare, om du har problem med att importera databaser till mysql kan du gå till manualsidan med 'man mysql' eller till den officiella dokumentationen här på mysql-utvecklarwebbplatsen.
Känner du till några intressanta knep för att exportera databaser och importera databaser i MySQL? Låt oss veta i kommentarerna!