Table de réplication MySQL
Table de copie MySQL
Si nous devons copier complètement la table de données MySQL, y compris la structure de la table, l'index et la valeur par défaut valeur attendre. Si vous utilisez simplement la commande CREATE TABLE ... SELECT , cela ne peut pas être réalisé.
Ce chapitre explique comment copier complètement la table de données MySQL. Les étapes sont les suivantes :
Utilisez la commande SHOW CREATE TABLE pour obtenez la table de données créée (CREATE TABLE) instruction, qui contient la structure, l'index, etc. de la table de données d'origine.
Copiez l'instruction SQL affichée par la commande suivante, modifiez le nom de la table de données et exécutez l'instruction SQL, via la commande ci-dessus La structure de la table de données sera entièrement copiée.
Si vous souhaitez copier le contenu de la table, vous pouvez utiliser l'instruction INSERT INTO ... SELECT pour y parvenir.
Exemple
Essayez l'exemple suivant pour copier la table php_tbl.
Étape 1 :
Obtenir la structure complète du tableau de données.
mysql> SHOW CREATE TABLE php_tbl \G; *************************** 1. row *************************** Table: php_tbl Create Table: CREATE TABLE `php_tbl` ( `php_id` int(11) NOT NULL auto_increment, `php_title` varchar(100) NOT NULL default '', `php_author` varchar(40) NOT NULL default '', `submission_date` date default NULL, PRIMARY KEY (`php_id`), UNIQUE KEY `AUTHOR_INDEX` (`php_author`) ) ENGINE=InnoDB 1 row in set (0.00 sec) ERROR: No query specifiedÉtape 2 :
Modifiez le nom de la table de données de l'instruction SQL et exécutez l'instruction SQL.
mysql> CREATE TABLE `clone_tbl` ( -> `php_id` int(11) NOT NULL auto_increment, -> `php_title` varchar(100) NOT NULL default '', -> `php_author` varchar(40) NOT NULL default '', -> `submission_date` date default NULL, -> PRIMARY KEY (`php_id`), -> UNIQUE KEY `AUTHOR_INDEX` (`php_author`) -> ) ENGINE=InnoDB; Query OK, 0 rows affected (1.80 sec)Étape 3 :
Après avoir effectué la deuxième étape, vous créerez une nouvelle table de clonage clone_tbl dans la base de données. Si vous souhaitez copier les données dans la table de données, vous pouvez utiliser l'instruction INSERT INTO... SELECT .
mysql> INSERT INTO clone_tbl (php_id, -> php_title, -> php_author, -> submission_date) -> SELECT php_id,php_title, -> php_author,submission_date -> FROM php_tbl; Query OK, 3 rows affected (0.07 sec) Records: 3 Duplicates: 0 Warnings: 0
Après avoir effectué les étapes ci-dessus, vous copierez complètement le tableau, y compris la structure du tableau et les données du tableau.
Tutoriels associés recommandés : Tutoriel MySQL