Frage

Ich mache eine Datenbank Migrationsarbeit. Ich habe eine Datenbank in MSSQL zu MySQL-Datenbank zu kopieren. Es war möglich, mit einem kleinen Java-Programm zu kommen bis zu Tisch stucture von MSSQL zu MySQL-Datenbank zu kopieren. Jetzt muss ich alle Daten von MSSQL zu MySql kopieren. Ich habe versucht, mit resultset in Java alle Daten aus einer Tabelle zu erhalten, aber dann könnte es nur einen kleinen Teil der Daten holen. Gibt es eine alternative Lösung, die alle Daten aus der Tabelle resultSet oder auf eine andere ähnliche Struktur zu erhalten, die ich möglicherweise verwenden, kann die gleichen Daten in MySQL Db einzufügen. Es gibt mehr als 25,00,000 Datensätze für eine Tabelle.

War es hilfreich?

Lösung

Ein JDBC-Ergebnismenge sollte im Prinzip können Sie die entirity einer großen Abfrage-Ergebnis wiederholen.

geht jedoch über Java möglicherweise nicht der effizienteste Ansatz sein. Bulk-Export in eine Datei und Bulk-Import kann der Weg zu gehen. Es scheint, dass MS hat einen bcp Dienstprogramm, das die Ausfuhr tun kann.

Andere Tipps

Der beste Weg, um eine Datenbank-Migration zu erreichen, wie Sie beschreiben, ist zu verwenden und ETL-Tool - es gibt einen guten Überblick über ETL hier:

http://en.wikipedia.org/wiki/Extract,_transform,_load

Es gibt keinen Grund, warum Sie nicht, dies zu tun mit JDBC der Lage wären, und so, wenn Sie setzt auf Roll Ihres eigene Bitte näher auf den ‚nur einen kleinen Teil der Daten holen könnte‘:

  • Was ist die Abfrage, die Sie ausführen?
  • Sie sind eine Ausnahme zu bekommen?
  • die JDBC-Treiber verwenden Sie MS-SQL zu verbinden?
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top