Probleme bei der Migration von Oracle zu PostgreSQL diagnostizieren

Während der Laufzeit des Migrationsjobs können Fehler auftreten.

  • Einige Fehler, wie z. B. ein ungültiges Passwort in der Quelldatenbank, sind wiederherstellbar. Der Migrationsjob wird automatisch fortgesetzt, sobald diese Fehler behoben sind.
  • Einige Fehler können nicht korrigiert werden, z. B. Fehler bei der Datenreplizierung. Nachdem diese Fehler behoben wurden, müssen Sie den Migrationsjob neu starten.

Wenn ein Fehler auftritt, ändert sich der Status des Migrationsjobs in Failed und der Unterstatus entspricht dem letzten Status vor dem Fehler. Wenn Sie einen Fehler beheben möchten, rufen Sie den fehlgeschlagenen Migrationsjob auf, um den Fehler anzuzeigen, und folgen Sie der Anleitung in der Fehlermeldung. Weitere Informationen zum Fehler finden Sie in Cloud Monitoring. Klicken Sie dazu auf den Link zum Migrationsjob. Die Protokolle werden nach dem jeweiligen Migrationsjob gefiltert.

In der folgenden Tabelle finden Sie einige Beispiele für Probleme und wie sie behoben werden können:

Symptom Mögliche Ursachen Lösungsvorschlag
Fehlermeldung: Cloud DMS can't set up a tunnel to be connected to the bastion host. Der Database Migration Service konnte nicht auf den Bastion Host zugreifen oder der Bastion Host akzeptiert keine Verbindungen. Prüfen Sie die Einstellungen für den Weiterleitungs-SSH-Tunnel im Verbindungsprofil und die Konfiguration des Bastion Hosts und versuchen Sie es noch einmal.
Fehlermeldung: Cloud DMS can't connect to the database oder Cloud DMS private connectivity error, cannot connect to the database Database Migration Service konnte keine Verbindung zur Oracle-Quelldatenbank herstellen.

Prüfen Sie, ob Sie von Ihrem Projekt aus auf die Oracle-Quelldatenbank zugreifen können, und achten Sie darauf, dass Sie die Verbindungseinstellungen im Quellverbindungsprofil korrekt konfiguriert haben.

Wenn ein bestimmter Oracle-Fehlercode enthalten ist, z. B. ORA-12170: TNS:Connect timeout occurred, finden Sie weitere Informationen in der Oracle-Dokumentation.

Fehlermeldung: Archiving mode is not ARCHIVELOG. Die Quelle wurde nicht richtig konfiguriert. Konfigurieren Sie die Quelle richtig. Weitere Informationen finden Sie unter Oracle-Quelldatenbank konfigurieren.
Fehlermeldung: Supplemental logging ("ALL COLUMN LOGGING") isn't turned on for the tables listed below. Die Quelle wurde nicht richtig konfiguriert. Konfigurieren Sie die Quelle richtig. Weitere Informationen finden Sie unter Oracle-Quelldatenbank konfigurieren.
Fehlermeldung: No Archive Log Files were found in the source. Der Database Migration Service liest nur geschlossene Archiv-Logs und in der Quelldatenbank wurden keine Logs gefunden.
  1. Führen Sie den folgenden Befehl in der Quelldatenbank aus, um die aktuelle Protokolldatei zu schließen: ALTER SYSTEM SWITCH LOGFILE.
  2. Versuchen Sie noch einmal, die Protokolle zu finden.

Wenn in der Datenbank keine aktiven Schreibvorgänge vorhanden sind, müssen Sie möglicherweise mindestens einen INSERT-Vorgang ausführen, um die Erstellung des Protokolls auszulösen.

Fehlermeldung: We're missing the necessary permissions to read from the source. Die Quelle wurde nicht richtig konfiguriert. Konfigurieren Sie die Quelle richtig. Weitere Informationen finden Sie unter Oracle-Quelldatenbank konfigurieren.
Fehlermeldung: Unable to connect to the destination database. Beim Herstellen einer Verbindung zur Zieldatenbank ist ein Problem aufgetreten. Prüfen Sie die Einstellungen im PostgreSQL-Zielverbindungsprofil. Informationen zu privaten Verbindungen finden Sie unter Private Service Connect-Fehler beheben.
Fehlermeldung: database {database_name} does not exist. Der Name der Zieldatenbank und der Nutzername müssen im Database Migration Service übereinstimmen. Der im Zielverbindungsprofil angegebene Nutzername muss mit dem Namen der Zieldatenbank übereinstimmen. Erstellen Sie entweder die Zieldatenbank neu oder erstellen Sie einen anderen Nutzernamen, der mit der Zieldatenbank übereinstimmt. Weitere Informationen finden Sie unter AlloyDB for PostgreSQL-Zieldatenbank konfigurieren.

Sie müssen Ora2pg ausgeführt haben, um das Schema in der Zieldatenbank zu erstellen.

Fehlermeldung: The following tables don't exist in the destination database: {table_names} Die aufgeführten Tabellen, die Sie migrieren möchten, sind in der Zieldatenbank nicht vorhanden. Sie müssen Ora2pg ausführen, um das Schema in der Zieldatenbank zu erstellen, oder die Einstellungen des Migrationsjobs ändern.
Fehlermeldung: password authentication failed for user {username}. Der Nutzername oder das Passwort für die Zieldatenbank sind falsch konfiguriert. Prüfen Sie, ob das PostgreSQL-Zielverbindungsprofil mit dem richtigen Nutzernamen und Passwort konfiguriert ist.
Fehlermeldung: The following tables in the destination database don't have primary keys: {table_names}. Die aufgeführten Tabellen sind in der Zieldatenbank vorhanden, aber es fehlen Primärschlüssel. Sie müssen Ora2pg ausgeführt haben, um das Schema in der Zieldatenbank zu erstellen. Wenn in der Quelltabelle kein Primärschlüssel vorhanden ist, erstellen Sie den Schlüssel manuell in der Zieldatenbank.
Warnung: The following tables have foreign keys: {table_names}. Die aufgeführten Tabellen sind in der Zieldatenbank vorhanden, haben aber Fremdschlüssel. Der Database Migration Service repliziert Daten nicht transaktional. Daher werden Tabellen möglicherweise nicht in der richtigen Reihenfolge migriert. Wenn Fremdschlüssel vorhanden sind und eine untergeordnete Tabelle, die einen Fremdschlüssel verwendet, vor ihrer übergeordneten Tabelle migriert wird, können Replikationsfehler auftreten.

Um solche Probleme mit der Datenintegrität zu vermeiden, überspringen Sie Fremdschlüssel mithilfe der Option REPLICATION für den Migrationsnutzer. Weitere Informationen finden Sie unter Ziel konfigurieren.

Fehlermeldung: Unable to resume replication as log position is lost. Dieser Fehler kann auftreten, wenn der Replikationsprozess für einen längeren Zeitraum pausiert wird, was zum Verlust der Logposition führt. Ein Migrationsjob sollte nicht für Zeiträume angehalten werden, die der Aufbewahrungsdauer der Protokolle nahekommen. Wenn der Fehler auftritt, erstellen Sie den Migrationsjob neu.
Fehlermeldung: ORA-00942: table or view does not exist. Dieser Fehler kann durch das Caching auf dem Oracle-Server verursacht werden. Erstellen Sie den Datenbanknutzer neu, um das Caching-Problem zu beheben.
Der Migrationsjob bleibt in der Phase des vollständigen Dumps und wechselt nicht zur CDC-Phase (Change Data Capture). Der Database Migration Service führt für einige Tabellen noch einen vollständigen Dump aus oder der vollständige Dump für eine oder mehrere Tabellen kann aufgrund von Fehlern nicht abgeschlossen werden.
  • Prüfen Sie die Fehler des Migrationsjobs und beheben Sie entweder Fehler, die sich auf Tabellen beziehen, oder entfernen Sie die zugehörigen Tabellen aus dem Job.
  • Prüfen Sie die Protokolle des Database Migration Service auf laufende Vollsicherungen und warten Sie, bis sie abgeschlossen sind.