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

Puis-je fusionner deux bases de données en une seule dans Mysql si elles ont toutes les deux le même schéma ?

Exécutez mysqldump sur chaque base de données avec le --no-create-info option pour éviter d'écrire des informations de schéma. Ensuite, exécutez une fois sur une base de données avec le --no-data option. Si vous chargez tous ces fichiers de manière séquentielle dans la même base de données cible, cela devrait fonctionner, en interdisant toute différence de schéma entre les deux bases de données ou les clés primaires en double.

mysqldump -u root -p --no-create-info database1 > database1.sql
mysqldump -u root -p --no-create-info database2 > database2.sql
mysqldump -u root -p --no-data database1 > schema.sql

Après avoir créé une nouvelle base de données, exécutez

mysql -uroot -p -Ddatabase3 < schema.sql
mysql -uroot -p -Ddatabase3 < database1.sql
mysql -uroot -p -Ddatabase3 < database2.sql

Cela peut aussi fonctionner. Vous n'avez pas de box Windows à tester sur ATM

type schema.sql database1.sql database2.sql | mysql -uroot -p -Ddatabase3