Um diesen Inhalt richtig anzuzeigen, müssen Sie JavaScript aktivieren
Migration von MongoDB zu Oracle Database ohne Ausfallzeiten
Erfahren Sie, wie Sie OCI GoldenGate ohne Ausfallzeiten für Oracle Database auf MongoDB umstellen können.
OCI GoldenGate Big Data unterstützt Migrationen von MongoDB und MongoDB Atlas zu Oracle Autonomous JSON Database, Oracle Autonomous Database und Oracle Database ohne Ausfallzeiten. Autonomous JSON Database und Oracle Autonomous Database enthalten vorkonfigurierte Oracle API for MongoDB-Verbindungszeichenfolgen, mit denen OCI GoldenGate eine Verbindung zu Oracle Database-Zielsystemen herstellt. Weitere Informationen finden Sie unter Oracle Database API for MongoDB verwenden. Wenn Ihr Ziel eine On-Premise-Oracle Database ist, können Sie Oracle Rest Data Services verwenden, um Oracle Database API for MongoDB mit Ihrer On-Premise-Oracle Database zu aktivieren.
Bevor Sie beginnen
Um diesen Schnellstart erfolgreich abzuschließen, stellen Sie Folgendes sicher:
MongoDB Datenbanktools, einschließlich mongodump und mongostore, installierte und entsprechende Verzeichnispfade, die der PATH-Umgebungsvariablen hinzugefügt wurden
Migration einrichten und starten
Führen Sie in der Quelle MongoDB das Dumputility MongoDB aus.
Führen Sie mongodump mit der Option --oplog aus, um einen Snapshot der Quelldatenbank MongoDB zu erstellen:
Führen Sie das Skript OplongLSN.sh in der Quelle MongoDB in demselben Verzeichnis aus, in dem sich mongodump befindet. Übergeben Sie den Speicherort wie folgt an oplog.bson als Argument:
$./oplogLSN.sh /path/to/dump/oplog.bson
Der Befehl gibt Folgendes zurück:
<date+timestamp> 1 objects found
First LSN: 1740663867.1
Last LSN: 1740663946.211
Oplog-Einträge prüfen Wenn während des Dumps eingehende Vorgänge aufgetreten sind, enthält die Datei oplog.bson Einträge für diese Vorgänge mit jeweils einem Zeitstempel. Sie können OplogLSN.sh verwenden, um den Zeitstempel des ersten und letzten Vorgangs zu erfassen oder zur manuellen Prüfung in eine JSON-Datei zu konvertieren, wie im vorherigen Schritt gezeigt.
Führen Sie das Restore-Utility MongoDB aus. Mit dem Utility mongorestore können Sie die ausgewählten Collections aus dem Dump in der Zielinstanz MongoDB wiederherstellen:
<date+timestamp> using write concern: &{majority <nil> 0s}
<date+timestamp> using default 'dump' directory
<date+timestamp> preparing collections to restore from
<date+timestamp> found collection admin.system.version bson to restore to admin.system.version
<date+timestamp> found collection metadata from admin.system.version to restore to admin.system.version
<date+timestamp> don't know what to do with file "dump/oplog.json", skipping...
<date+timestamp> found collection testDB.coll1 bson to restore to testDB.coll1
<date+timestamp> found collection metadata from testDB.coll1 to restore to testDB.coll1
<date+timestamp> found collection testDB.coll2 bson to restore to testDB.coll2
<date+timestamp> found collection metadata from testDB.coll2 to restore to testDB.coll2
<date+timestamp> reading metadata for testDB.coll1 from dump/testDB/coll1.metadata.json
<date+timestamp> reading metadata for testDB.coll2 from dump/testDB/coll2.metadata.json
<date+timestamp> creating collection testDB.coll1 with no metadata
<date+timestamp> creating collection testDB.coll2 with no metadata
<date+timestamp> restoring testDB.coll1 from dump/testDB/coll1.bson
<date+timestamp> restoring testDB.coll2 from dump/testDB/coll2.bson
<date+timestamp> finished restoring testDB.coll1 (10000 documents, 0 failures)
<date+timestamp> finished restoring testDB.coll2 (10000 documents, 0 failures)
<date+timestamp> no indexes to restore for collection testDB.coll1
<date+timestamp> no indexes to restore for collection testDB.coll2
<date+timestamp> 20000 document(s) restored successfully. 0 document(s) failed to restore.
Mit dem Befehl werden die Daten-, Metadaten- und Indexdefinitionen für die angegebene Collection in der Zielinstanz MongoDB/ORDS wiederhergestellt. Beispiel: coll1 und coll2 in Datenbank testDB, wie in der obigen Ausgabe gezeigt.
Erstellen Sie einen Change Data Capture-(CDC-)Extrakt für das Big Data-Quell-Deployment für MongoDB, und führen Sie ihn aus. Starten Sie den CDC-Extrakt MongoDB vom ersten Vorgangszeitstempel (erste LSN), der in Schritt 2b abgerufen wurde. Dadurch wird sichergestellt, dass der CDC Extract Vorgänge erfasst, die nach dem Start des Dumpprozesses auftreten.
Verwenden Sie die generierte CDC-Traildatei aus Schritt 4.
Setzen Sie oplongReplayLastLsn auf den Zeitstempel des letzten Vorgangs (Letzte LSN), der in Schritt 2b abgerufen wurde, oder auf den Pfad zu oplog.bson, und die letzte LSN wird automatisch abgerufen. Dadurch wird sichergestellt, dass Replicat im oplong-replay-Modus ausgeführt wird, Kollisionen vermieden werden und eine präzise Initiierung ohne Datenverlust oder -duplikation gewährleistet ist. Nachdem der letzte Zeitstempel verarbeitet wurde, wird das Replicat im normalen Modus fortgesetzt.
Tipps
Hier sind einige Tipps, um sicherzustellen, dass Ihre Migration reibungslos verläuft:
Es wird empfohlen, mongodb-database-tools Version 100.10.0 oder niedriger zu verwenden.
Bevor Sie mongodump ausführen, bereinigen Sie den vorhandenen Dumpordner, um inkonsistente Daten zu löschen.
MongoDB-Wiederherstellung: Mehrere Sammlungen einer Datenbank können mit mehreren --nsInclude-Optionen im Befehl mongorestore repliziert werden. Die ORDS-Mehrere Datenbanken können jedoch nicht mit mehreren --nsInclude-Befehlen wiederhergestellt werden. Sie müssen mehrere Wiederherstellungsbefehle verwenden, einen für jede wiederherzustellende Datenbank.