Hvordan overføre alle MySQL-databaser fra gammel til ny server
Overføring eller migrering av en MySQL/MariaDB-database mellom servere tar vanligvis bare noen få enkle trinn, men dataoverføring kan ta litt tid avhengig av datavolumet du ønsker å overføre.
I denne artikkelen vil du lære hvordan du overfører eller migrerer alle MySQL/MariaDB-databasene dine fra en gammel Linux-server til en ny server, importerer den og bekrefter at dataene er der.
Viktige notater
- Sørg for å ha samme versjon av MySQL installert på begge serverne med samme distribusjon.
- Sørg for å ha nok ledig plass på begge serverne til å holde databasedumpfilen og den importerte databasen.
- Vurder aldri å flytte
data
-katalogen til databasen til en annen server. Røl aldri med den interne strukturen til databasen, hvis du gjør det, vil du møte problemer i fremtiden.
Eksporter en MySQL-database til dumpfil
Start først med å logge på din gamle server og stopp mysql/mariadb-tjenesten ved å bruke systemctl-kommandoen som vist.
systemctl stop mariadb
OR
systemctl stop mysql
Dump deretter alle MySQL-databasene dine i én enkelt fil ved å bruke mysqldump-kommandoen.
mysqldump -u [user] -p --all-databases > all_databases.sql
Når dumpingen er fullført, er du klar til å overføre databasene.
Hvis du vil dumpe en enkelt database, kan du bruke:
mysqldump -u root -p --opt [database name] > database_name.sql
Overfør MySQL-databasedumpfil til ny server
Bruk nå scp-kommandoen til å overføre databasedumpfilen til den nye serveren under hjemmekatalogen som vist.
scp all_databases.sql [email :~/ [All Databases]
scp database_name.sql [email :~/ [Singe Database]
Når du kobler til, vil databasen bli overført til den nye serveren.
Importer MySQL-databasedumpfil til ny server
Når MySQL-dumpfilen er overført til den nye serveren, kan du bruke følgende kommando til å importere alle databasene dine til MySQL.
mysql -u [user] -p --all-databases < all_databases.sql [All Databases]
mysql -u [user] -p newdatabase < database_name.sql [Singe Database]
Når importen er fullført, kan du bekrefte databasene på begge serverne ved å bruke følgende kommando på mysql-skallet.
mysql -u user -p
show databases;
Overfør MySQL-databaser og brukere til ny server
Hvis du vil flytte alle MySQL-databasene, brukerne, tillatelsene og datastrukturens gamle server til den nye, kan du bruke rsync-kommandoen til å kopiere alt innholdet fra mysql/mariadb-datakatalogen til den nye serveren som vist.
rsync -avz /var/lib/mysql/* [email :/var/lib/mysql/
Når overføringen er fullført, kan du angi eierskapet til mysql/mariadb-datakatalogen til brukeren og gruppen mysql, og deretter gjøre en katalogoppføring for å sjekke at alle filene er overført.
chown mysql:mysql -R /var/lib/mysql/
ls -l /var/lib/mysql/
Hvordan migrere MySQL-database ved hjelp av GUI
Moderne databaseverktøy gjør det mulig for brukere å strømlinjeforme MySQL-databasemigreringsoppgaver. Hovedfaktoren er et brukervennlig grafisk grensesnitt som leder dem gjennom hvert trinn i migreringsprosessen. Oppgavekonfigurasjonen tar noen få klikk – du trenger ikke å skrive inn noen kommandoer manuelt for å overføre MySQL-databasen til en ny destinasjon.
Vanligvis støtter slike verktøy ulike metoder for å overføre hele databasene eller deres deler. Det kan være sikkerhetskopiering og gjenoppretting, kopiering av databaser, dataimport og eksport, etc.
Dessuten kan et MySQL-datamigreringsverktøy være en frittstående løsning eller en del av et mye kraftigere verktøysett som dbForge Studio for MySQL, egnet til å dekke alle de andre databaseoppgavene.
Det er alt! I denne artikkelen lærte du hvordan du enkelt kan migrere alle MySQL/MariaDB-databaser fra en server til en annen. Hvordan finner du denne metoden sammenlignet med andre metoder? Vi vil gjerne høre fra deg via kommentarskjemaet nedenfor for å nå oss.