Mysql
 sql >> Database >  >> RDS >> Mysql

Database di copia MySQL

A volte potrebbe essere necessario copiare il database o clonare il database in MySQL per creare un database duplicato. Ecco come copiare il database in MySQL.

Come copiare il database in MySQL

Ecco i passaggi per copiare il database MySQL.

  1. Crea un nuovo database vuoto usando l'istruzione CREATE DATABASE
  2. Esporta tutti gli oggetti e i dati del database nel nuovo database utilizzando mysqldump comando
  3. Importa il file di dump SQL nel nuovo database

Bonus Lettura:MySQL Inserisci in Seleziona

Diamo un'occhiata a diversi esempi per copiare il database MySQL.

Copia database MySQL sullo stesso server

Supponiamo che tu voglia copiare il tuo database source_db al nuovo database destination_db

Accedi a MySQL e crea un nuovo 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          |
+--------------------+

Esporta oggetti e dati di source_db in un file, diciamo, D:\db.sql. Ti verrà richiesta una password.

>mysqldump -u root -p source_db > d:\db.sql
Enter password: **********

Importa il file d:\db.sql in destination_db

>mysqldump -u root -p destination_db < d:\db.sql
Enter password: **********

I passaggi precedenti copieranno il database con i dati sullo stesso server.

Lettura bonus:MySQL Seleziona le prime N righe

Schema del database di copia MySQL

Se vuoi solo copiare lo schema del database, usa -d opzione nel comando MySQLdump sopra. Questo copierà solo la struttura del database e non il contenuto.

mysql>mysqldump -u root -p -d source_db > d:\db.sql

Importa la struttura del database in destination_db come prima

mysql>mysql -u root -p -d destination_db < d:\db.sql

Lettura bonus:MySQL rimuove i record duplicati

MySQL copia il database su un altro server

Se desideri copiare il database su un altro server, devi seguire passaggi simili ma esportare il contenuto e gli oggetti del database sul server di destinazione.

  1. Esporta il database di origine in un file SQL
  2. Copia il file SQL sul server di destinazione
  3. Importa il file SQL nel database di destinazione

Per prima cosa esportiamo il database di origine source_db in db.sql

>mysqldump -u root -p --databases source_db > d:\db.sql
Enter password: **********

Il –database l'opzione ti consentirà di includere le istruzioni CREATE DATABASE e USE nel tuo file SQL.

Quindi, copia il file SQL su un altro server (ad es. F:\db.sql)

Infine, importa il file SQL nel database di destinazione.

>mysql -u root -p destination_db < f:\db.sql 
Enter password: **********

Bonus Leggi:Come eseguire la stored procedure in Workbench

Copia database MySQL senza MySQLdump

Se desideri copiare il database senza MySQLdump, dovrai copiare manualmente ogni tabella nel database di origine nel database di destinazione.

Ecco la query SQL per copiare la tabella vendite da db_sorgente database a destination_db banca dati

CREATE TABLE destination_db.sales 
LIKE source_db.sales;

INSERT destination_db.sales 
SELECT *
FROM source_db.sales;

La prima istruzione duplicherà la struttura della tabella in MySQL dal database di origine (ad esempio source_db ) a un altro (ad es. destination_db . La seconda istruzione copierà i dati da una tabella all'altra. Dovrai eseguire le istruzioni di cui sopra per ogni tabella del database o scrivere uno script che generi ed esegua l'istruzione sopra per tutte le tabelle nel tuo database.

Ubiq semplifica la visualizzazione dei dati in pochi minuti e il monitoraggio in dashboard in tempo reale. Provalo oggi!