Mysql
 sql >> Base de données >  >> RDS >> Mysql

Base de données de copie MySQL

Parfois, vous devrez peut-être copier la base de données ou cloner la base de données dans MySQL pour créer une base de données en double. Voici comment copier une base de données dans MySQL.

Comment copier une base de données dans MySQL

Voici les étapes pour copier la base de données MySQL.

  1. Créer une nouvelle base de données vide à l'aide de l'instruction CREATE DATABASE
  2. Exporter tous les objets et données de la base de données vers une nouvelle base de données à l'aide de mysqldump commande
  3. Importer le fichier de vidage SQL dans une nouvelle base de données

Lecture bonus :Insertion MySQL dans la sélection

Examinons différents exemples pour copier la base de données MySQL.

Copier la base de données MySQL sur le même serveur

Disons que vous voulez copier votre base de données source_db vers la nouvelle base de données destination_db

Connectez-vous à MySQL et créez une nouvelle base de données 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          |
+--------------------+

Exporter les objets et les données de source_db dans un fichier, par exemple D:\db.sql. Vous serez invité à entrer un mot de passe.

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

Importez le fichier d:\db.sql dans destination_db

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

Les étapes ci-dessus copieront la base de données avec les données sur le même serveur.

Lecture bonus :MySQL Select Top N Rows

Schéma de base de données de copie MySQL

Si vous souhaitez uniquement copier le schéma de la base de données, utilisez -d option dans la commande MySQLdump ci-dessus. Cela copiera uniquement la structure de la base de données et non le contenu.

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

Importez la structure de la base de données dans destination_db comme avant

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

Lecture bonus :MySQL supprime les enregistrements en double

MySQL Copier la base de données sur un autre serveur

Si vous souhaitez copier la base de données sur un autre serveur, vous devez suivre des étapes similaires, mais exporter le contenu et les objets de la base de données vers le serveur de destination.

  1. Exporter la base de données source vers un fichier SQL
  2. Copiez le fichier SQL sur le serveur de destination
  3. Importer le fichier SQL dans la base de données de destination

Nous exportons d'abord la base de données source source_db vers db.sql

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

La –base de données L'option vous permettra d'inclure les instructions CREATE DATABASE et USE dans votre fichier SQL.

Ensuite, copiez le fichier SQL sur un autre serveur (par exemple F:\db.sql)

Enfin, importez le fichier SQL dans la base de données de destination.

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

Lecture bonus :comment exécuter une procédure stockée dans Workbench

MySQL Copier la Base de Données Sans MySQLdump

Si vous souhaitez copier la base de données sans MySQLdump, vous devrez copier manuellement chaque table de la base de données source vers la base de données de destination.

Voici la requête SQL pour copier la table ventes de source_db base de données vers destination_db base de données

CREATE TABLE destination_db.sales 
LIKE source_db.sales;

INSERT destination_db.sales 
SELECT *
FROM source_db.sales;

La première instruction dupliquera la structure de la table dans MySQL à partir de la base de données source (par exemple, source_db ) à un autre (par exemple destination_db . La deuxième instruction copiera les données d'une table à l'autre. Vous devrez exécuter les instructions ci-dessus pour chaque table de base de données ou écrire un script qui génère et exécute l'instruction ci-dessus pour toutes les tables de votre base de données.

Ubiq facilite la visualisation des données en quelques minutes et la surveillance dans des tableaux de bord en temps réel. Essayez-le aujourd'hui !