
Me gustaría combinar dos archivos de base de datos MySQL (*.db) en una sola base de datos. Ambas bases de datos tienen las mismas tablas. ¿Hay una forma fácil de hacer esto?
Respuesta1
Suponiendo que dos bases de datos sean db1 y db2, podemos hacer lo siguiente:
1) Realice una copia de seguridad de db1 y db2 para opciones de reversión:
mysqldump -u<root> -p<pass> --databases db1 db2 > db1_db2.sql
2) Realice una copia de seguridad de db1 (solo datos):
mysqldump -u<root> -p<pass> --no-create-info db1 > db1.sql
3) Cargue el volcado de db1 en db2:
cat db1.sql | mysql db2
Entonces, si ambas bases de datos tienen las mismas tablas, insertará los datos en las tablas. Si la tabla no existe, esto generará un error. Puedes omitir esos errores y dejar que continúe como:
cat db1.sql | mysql -u<user> -p<pass> db2 --force