Veröffentlicht 29. November 200618 j Hallo Leute, gibt es ein Tool welches zwei MySQL Datenbanken in eine DB zusammenführt? Die Tabellen sind bei beiden identisch, es müssen "nur" die Daten abgeglichen werden... Oder muss ich da jetzt ein Programm schreiben welches die Daten manuell in die neue DB schreibt? Da die DB Struktur ziemlich kompliziert aussieht, würde ich dies gerne vermeiden... lg Matthias
29. November 200618 j Mit dem MySQL Admin einen Export der Tabellen, und dann einfach die Zeile "use DBName" anpassen.
29. November 200618 j Hi, das sollte über ein einfachs INSERT SELECT funktionieren. Probiers mal damit --> http://dev.mysql.com/doc/refman/5.0/en/insert-select.html Kurzes Beispiel: INSERT INTO `table1` (`field1`,`field2`,`field3`) SELECT `field1`,`field1`,`field1` FROM `table2` Falls sich die Tabellen überschneiden was die Keys angeht benutze zusätlich "ON DUPLICATE KEY UPDATE" Gruß Scratch
29. November 200618 j @JesterDay: Der exportiert doch auch die Primary Keys Daten oder? Und die Überschneiden sich mit den vohandenen Daten in der anderen DB... @Scratch Dort sind es die foreign Keys die dann auf andere Daten zeigen würden... Matthias
29. November 200618 j Dann wirst du keine andere Wahl haben als die Stammtabellen vorher abzugleichen ... Damit du später auch den richtigen Bezug zum FK wieder findest.
29. November 200618 j Ich hatte Die Tabellen sind bei beiden identisch, es müssen "nur" die Daten abgeglichen werden... übersehen...Du könntest es auch mit einem INSERT ... SELECT machen und alle Felder bis auf den Primary im SELECT angeben und den Primary key als AutoInc Feld definieren und im SELECT dafür fest NULL auswählen Also INSERT INTO NeueDB.NeueTabelle (ID, Feld1, Feld2) SELECT NULL, Feld1, Feld2 FROM DB1.AlteTabelle1 und INSERT INTO NeueDB.NeueTabelle (ID, Feld1, Feld2) SELECT NULL, Feld1, Feld2 FROM DB2.AlteTabelle2
30. November 200618 j Aber wenn eine andere Tabelle auf diese ID referenziert, habe ich den Bezug nicht mehr (neue DB). Also werde ich das wohl doch manuell machen müssen, oder?
30. November 200618 j Aber wenn eine andere Tabelle auf diese ID referenziert... Dann hast du eh ein Problem, weil bei einer Tabelle sich auf jeden Fall die IDs ändern werden (Und somit auch die, die darauf verweisen sich ändern müssen).
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.