Slik eksporterer og importerer alle MySQL-databaser

Mange utviklere og pro brukere stole på MySQL for deres databasebehov. Vi går gjennom hvordan du eksporterer eller dumper alle databaser fra MySQL, dumper en enkelt database, og viser også hvordan du importerer alle disse databasene fra en database.sql-fil tilbake til MySQL.

Selv om det er GUI-baserte verktøy for å kommunisere med MySQL, skal vi fokusere på kommandolinjen her. MySQL-kommandoene arbeider med hvilken som helst versjon av databaseprogrammet på et hvilket som helst unix-operativsystem, inkludert Linux, Mac OS og Mac OS X, eller hva annet du tilfeldigvis kjører mySQL på.

Vi kommer til å anta at du allerede har MySQL installert og kjører, om ikke du kan lære om å starte og stoppe MySQL-serveren på Mac OS her, og kan laste ned MySQL her, eller hvis du leter etter en hel webserverstabel, sjekk ut Lett å bruke MAMP for Mac.

Slik dumper du alle databaser fra MySQL via kommandolinje

Den enkleste måten å dumpe alle databaser fra MySQL til en .sql-fil, for sikkerhetskopiering eller migrering eller på annen måte, bruker all-databasene flagg slik:

mysqldump --all-databases > all_databases_dump.sql

Fordi denne kommandoen eksporterer alle databaser, er det ikke nødvendig å spesifisere et databasenavn. Alle databaser lagret i mySQL blir dumpet i eksportfilen "all_databases_dump.sql" i den nåværende arbeidsboken.

Hvis det er nødvendig, kan du også angi et brukernavn og passord når alle databaser dumpes, i dette tilfellet med brukernavnet som root:

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

Etter at mysql-databasen er dumpet, er min personlige preferanse å lage en tjære gzip fra den som beskrevet her, men det er helt valgfritt.

Slik eksporterer du en bestemt database fra MySQL

Hvis du vil dumpe en bestemt database etter navn i stedet for å eksportere alle databaser, er det like enkelt:

mysqldump database_name > database_name_dump.sql

Kommandoen mysqldump har mange parametere og flagg som kan være nyttig for eksport og sikkerhetskopiering av databaser. Du kan lære mer fra den manuelle siden med "man mysqldump" eller ved å lese her på dev.mysql nettside.

Slik importerer du alle databaser til MySQL

Selvfølgelig, hvis du har en database dump, er det viktig å importere det til MySQL. Her er den enkleste måten å importere alle databaser fra en database.sql-fil til MySQL via kommandolinje:

mysql database_name < database_dump.sql

Og som å eksportere en database, når du importerer, kan du også spesifisere et brukernavn hvis ønskelig:

mysql -u root -p < database_dump.sql

Du angir også et annet brukernavn eller en database hvis du ønsker det:

mysql -u user -p database_name < database_dump.sql

Importerer en bestemt database til MySQL

Du kan også importere en bestemt database i en stor dump etter navn:

mysql --one-database database_name < all_databases.sql

Som tidligere, hvis du har problemer med å importere databaser til mysql, kan du gå til den manuelle siden med 'man mysql' eller til den offisielle dokumentasjonen her på mysql-utviklerens nettsted.

Vet noen interessante triks for eksport av databaser og import av databaser i MySQL? Gi oss beskjed i kommentarene!