Nogle gange skal du muligvis kopiere databasen eller klone databasen i MySQL for at oprette duplikatdatabase. Sådan kopierer du databasen i MySQL.
Sådan kopierer du database i MySQL
Her er trinene til at kopiere MySQL-databasen.
- Opret en ny tom database ved hjælp af CREATE DATABASE-sætningen
- Eksporter alle databaseobjekter og data til ny database ved hjælp af mysqldump kommando
- Importer SQL-dumpfil til ny database
Bonus Læs:MySQL Indsæt i Vælg
Lad os se på forskellige eksempler på at kopiere MySQL-database.
MySQL-kopidatabase på samme server
Lad os sige, at du vil kopiere din database source_db til ny database destination_db
Log ind på MySQL og opret en ny database destination_db
mysql> create database destination_db; mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | dashboard | | destination_db | | fedingo | | mysql | | performance_schema | | sample | | source_db | | testdb | | wordpress | +--------------------+
Eksporter objekter og data fra source_db til en fil, sig, D:\db.sql. Du vil blive bedt om en adgangskode.
>mysqldump -u root -p source_db > d:\db.sql Enter password: **********
Importer filen d:\db.sql til destination_db
>mysqldump -u root -p destination_db < d:\db.sql Enter password: **********
Ovenstående trin kopierer databasen med data til samme server.
Bonus Læs:MySQL Vælg Top N Rows
MySQL Copy Database Schema
Hvis du kun ønsker at kopiere databaseskema, skal du bruge -d mulighed i MySQLdump-kommandoen ovenfor. Dette kopierer kun databasestrukturen og ikke indholdet.
mysql>mysqldump -u root -p -d source_db > d:\db.sql
Importer databasestrukturen til destination_db som før
mysql>mysql -u root -p -d destination_db < d:\db.sql
Bonus Læs:MySQL Fjern duplikerede poster
MySQL-kopidatabase på en anden server
Hvis du vil kopiere databasen på en anden server, skal du følge lignende trin, men eksportere databasens indhold og objekter til destinationsserveren.
- Eksporter kildedatabasen til en SQL-fil
- Kopiér SQL-filen til destinationsserveren
- Importer SQL-fil til destinationsdatabasen
Først eksporterer vi kildedatabasen source_db til db.sql
>mysqldump -u root -p --databases source_db > d:\db.sql Enter password: **********
–databasen mulighed vil give dig mulighed for at inkludere CREATE DATABASE og USE-sætninger i din SQL-fil.
Kopier derefter SQL-filen til en anden server (f.eks. F:\db.sql)
Til sidst importerer du SQL-filen til destinationsdatabasen.
>mysql -u root -p destination_db < f:\db.sql Enter password: **********
Bonuslæser:Sådan udføres lagret procedure i Workbench
MySQL-kopidatabase uden MySQLdump
Hvis du vil kopiere databasen uden MySQLdump, skal du manuelt kopiere hver tabel i kildedatabasen til destinationsdatabasen.
Her er SQL-forespørgslen til at kopiere tabel salg fra source_db database til destination_db database
CREATE TABLE destination_db.sales LIKE source_db.sales; INSERT destination_db.sales SELECT * FROM source_db.sales;
Den første sætning vil duplikere tabelstrukturen i MySQL fra kildedatabasen (f.eks. kilde_db ) til en anden (f.eks. destination_db . Den anden sætning vil kopiere data fra en tabel til en anden. Du bliver nødt til at udføre ovenstående sætninger for hver databasetabel, eller skrive et script, der genererer og udfører ovenstående sætning for alle tabeller i din database.
Ubiq gør det nemt at visualisere data på få minutter og overvåge i dashboards i realtid. Prøv det i dag!