sql >> Database >  >> RDS >> Mysql

Kan ik twee databases samenvoegen tot één in Mysql als ze allebei hetzelfde schema hebben?

Voer mysqldump uit op elke database met de --no-create-info optie om het schrijven van schema-informatie te vermijden. Voer vervolgens één keer uit op één database met de --no-data keuze. Als u al deze bestanden opeenvolgend in dezelfde doeldatabase laadt, zou dit moeten werken, behoudens eventuele verschillen in schema tussen de twee databases of dubbele primaire sleutels.

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

Na het aanmaken van een nieuwe database, voer

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

Dit kan ook werken. Heb geen Windows-box om te testen op ATM

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



  1. Hoe de korte maandnaam van een datum in MySQL te krijgen

  2. CHARINDEX() vs PATINDEX() in SQL Server - Wat is het verschil?

  3. Problemen met RODBC sqlSave

  4. Hoe de tafel in orakel te laten vallen