Hvordan eksportere og importere MySQL-databaser

Bilde: Jack Wallen

Sjansen er stor, nettverksapplikasjonene dine er avhengige av databaser. Faktisk avhenger mye av det du jobber med av en database eller to. På grunn av dette er det viktig å ikke bare ha sikkerhetskopier av disse databasene, men også å kunne eksportere og importere dem fra maskin til maskin eller database-server-til-database-server. Si for eksempel at du migrerer fra MySQL til MariaDB. Hvordan flytter du databasene fra den ene serveren til den neste?

Mer om nettverk

  • 7 nettverksvarslinger for 2020: Automatisering, edge computing, Wi-Fi 6, mer
  • 8 datasenterprognoser for 2020
  • Topp 11 lagringstrender de siste 20 årene
  • 5G mobilnett: Et jukseark

Jeg skal vise deg.

Jeg vil presentere dette i form av å eksportere en database fra en MySQL-server, kopiere den til en annen server og importere den til den nye MySQL-serveren. Jeg skal demonstrere dette på identiske Ubuntu 18.04 Server-installasjoner, men prosessen skal være den samme, uavhengig av Linux-distribusjonen din. Jeg vil også bruke scp-kommandoen for å flytte databasen fra den ene serveren til den andre. Du må ha tilgang til en bruker med sudo-rettigheter på den opprinnelige serveren og MySQL-administrator brukeropplysninger på begge.

Med alt det som er lagt opp, la oss få den databasen eksportert, flyttet og importert.

Eksportere databasen

I stedet for å teste dette i en produksjonsdatabase, skal vi lage en testdatabase som kan brukes til å øve. Når du vet hvordan det fungerer, kan du deretter kjøre prosessen på produksjonsdatabasene.

For å opprette testdatabasen, logg deg på MySQL-ledeteksten (fra den opprinnelige serveren) med kommandoen:

 mysql -u rot -p 

Opprett testdatabasen med kommandoen:

 Lage DATABASE test; 

Nå som vi har testdatabasen, la oss eksportere den med kommandoen:

 sudo mysqldump - legg til-drop-table -u rot -p test> test.sql 

Du skal nå se dumpfilen test.sql i den gjeldende arbeidsmappen.

Flytte testfilen

Nå må vi flytte filen fra en server til en annen. For det bruker vi sikker kopi-kommandoen. La oss si at den nye serveren vår er på IP-adressen 192.168.1.100. For å kunne flytte filen utsteder vi kommandoen:

 scp test.sql postbeskyttet : ~ / test.sql 

Der USER er en gyldig bruker på den eksterne serveren.

Du blir bedt om å bruke USER-passordet på den eksterne maskinen. Når den er autentisert, vil test.sql-filen kopieres.

Importerer testfilen

Neste gang importerer vi databasen til den nye serverens MySQL-database. Det vil være nødvendig å kjenne MySQL root-brukeropplysningene for denne oppgaven. Logg deg på den eksterne serveren, og importer testdatabasen med kommandoen:

 mysql -u root -p test <test.sql 

Merk: Bytt rot med ditt MySQL admin brukernavn i kommandoen ovenfor.

Du blir bedt om administratorpassordet. Når du har autentisert, blir databasen importert. Du kan dobbeltsjekke ved å logge på MySQL-ledeteksten (ved å bruke kommandoen mysql -u root -p ) og deretter utgi kommandoen:

 VIS DATABASER; 

Du skal se den importerte databasen oppført ( figur A ).

Figur A

Vår nyimporterte database, klar til bruk.


Enkel databaseoverføring

Og det, vennene mine, er alt som er å migrere en database fra en MySQL-server til en annen. Denne prosessen fungerer også hvis du migrerer fra en MySQL-database til en MariaDB-database. Det eneste forbeholdet kan være hvis du jobber med en mye eldre MySQL-database, og det er uoverensstemmelser mellom hvordan den eldre databasen håndterte tabeller og / eller data, kontra hvordan den nyere MariaDB-serveren fungerer med tabeller og / eller data. Sjansen er imidlertid at du ikke bruker en database så gammel, så alt skal fungere helt fint. Glad migrasjon.

Ukens nyhetsbrev med åpen kildekode

Du vil ikke gå glipp av våre tips, opplæringsprogrammer og kommentarer til Linux OS og open source applikasjoner. Leveres tirsdager

Registrer deg i dag

© Copyright 2020 | mobilegn.com