Einen Fehler beheben
Beim Migrationsjobprozess können während der Laufzeit Fehler auftreten.
- Bei einigen Fehlern wiederholt der Database Migration Service die fehlerhaften Vorgänge automatisch, um den Migrationsprozess fortzusetzen und Unterbrechungen zu vermeiden. Der Status des Migrationsjobs ändert sich zu Wird mit Fehlern ausgeführt. Dieser Status bedeutet, dass der Database Migration Service weiterhin Daten migriert, die von den Fehlern nicht betroffen sind.
- Einige Fehler können nicht behoben werden. Wenn der Database Migration Service auf einen nicht behebaren Fehler stößt, ändert sich der Status des Migrationsjobs zu Fehlgeschlagen. In solchen Fällen muss der Migrationsjob neu gestartet werden, nachdem das Problem behoben wurde.
Zum Beheben eines Fehlers rufen Sie den betroffenen Migrationsjob auf, sehen Sie sich den Fehler an und folgen Sie der Anleitung in der Fehlermeldung. Weitere Details finden Sie auch in den Cloud Monitoring-Logs für Ihre Cloud SQL-Zielinstanz. Verwenden Sie den Cloud Monitoring-Link auf der Detailseite des Migrationsjobs.
In der folgenden Tabelle finden Sie einige Beispiele für Probleme und wie sie behoben werden können:
| Problem | Mögliche Ursache | Lösungsvorschlag |
|---|---|---|
Fehlermeldung: The BAK file's database major version number
{backup_version_num} must not be higher than the current database
major version number {your Cloud SQL for SQL Server version number}. |
Sie versuchen, Sicherungsdateien aus einer neueren SQL Server
Version zu importieren als der Version, die Sie in Ihrer Cloud SQL for SQL Server-Ziel
Instanz verwenden.
Der Database Migration Service unterstützt versionsübergreifende Migrationen von niedrigeren zu neueren Versionen nur, wenn Sie die Richtlinien zur versionsübergreifenden Kompatibilität erfüllen. Weitere Informationen finden Sie unter Unterstützte Quell- und Zieldatenbanken. |
Erstellen Sie die Cloud SQL for SQL Server-Zielinstanz neu, um eine neuere SQL Server-Version zu verwenden, und versuchen Sie es noch einmal mit dem Migrationsprozess mit Ihrer neuen Instanz. |
Fehlermeldung:
The following database already exists in destination: {database_name}.
|
Ihre Cloud SQL-Zielinstanz enthält bereits eine Datenbank mit demselben Namen wie eine der Datenbanken in Ihrem Migrations job. | Entfernen Sie den Namenskonflikt. Weitere Informationen finden Sie unter Fehler: Datenbank ist bereits im Ziel vorhanden . |
Fehlermeldung:
Permission denied for {cloudsql.databases.get} on the Database Migration Service service account. |
Dem Dienstkonto des Database Migration Service fehlen Berechtigungen. | Fügen Sie dem Dienstkonto des Database Migration Service die fehlenden Berechtigungen hinzu. Weitere Informationen finden Sie unter Zugriffssteuerung mit IAM. |
Fehlermeldung:
Missing WAL file at Log Sequence Number (LSN) {log_number_here} |
In Ihren Transaktionslogdateien werden möglicherweise falsche Epoch-Zeitstempel in Bezug auf die Reihenfolge der darin enthaltenen Updates verwendet. Der Database Migration Service verwendet Logfolgenummern und Epoch-Zeitstempel, um die Reihenfolge zu steuern, in der Transaktionslogdateien in die Cloud SQL Zielinstanz repliziert werden. | Prüfen und korrigieren Sie die Epoch-Zeitstempel, die in den Dateinamen Ihrer neuesten Transaktionslogdateien verwendet werden. Weitere Informationen finden Sie unter Fehlerhafte Namen von Transaktionslogs korrigieren. |
| Wenn Sie ausgewählte Datenbanken migrieren und der Migrationsjob Daten nicht in eine oder mehrere Datenbanken replizieren kann, wird in der Liste der Datenbanken der Status Fehlgeschlagen angezeigt. | Verschiedene Migrationsjobfehler. | Klicken Sie in der Spalte Fehler auf Fehler ansehen und beheben Sie sie. Klicken Sie nach dem Beheben der Fehler auf Neu starten. |
Fehler: Datenbank ist bereits im Ziel vorhanden
Die folgende Fehlermeldung wird angezeigt: The following database already exists in destination: {database_name}.
Mögliche Ursache
Ihre Cloud SQL-Zielinstanz enthält bereits eine Datenbank mit demselben Namen wie eine der Datenbanken in Ihrem Migrationsjob.
Lösungsvorschlag
Je nach Migrationsszenario gibt es verschiedene Möglichkeiten, das Problem mit doppelten Datenbanken zu beheben. Versuchen Sie eine der folgenden Aktionen:
Benennen Sie den Cloud Storage-Bucket um, um Ihre Datenbank mit einem anderen Namen zu migrieren.
Der Name der Datenbank, die der Database Migration Service in Ihrer Zielinstanz Cloud SQL erstellt, wird aus den Ordnernamen in Cloud Storage abgeleitet, in denen Sie die Sicherungsdateien speichern. Wenn Sie zwei verschiedene Datenbanken mit demselben Namen haben und beide in Ihrem Cloud SQL-Ziel benötigen, können Sie die Ordner umbenennen und den Migrationsjob neu erstellen, um den Namenskonflikt zu vermeiden.
Führen Sie diese Schritte aus:
- Erstellen Sie neue Ordner für die Quelldatenbank, die vom Namens konflikt betroffen ist. Weitere Informationen finden Sie unter Sicherungsdateien in einem Cloud Storage-Bucket speichern .
- Erstellen Sie den Migrationsjob neu. Weitere Informationen finden Sie unter
Migrationsjob erstellen.
Sie können einem vorhandenen Migrationsjob neue Datenbanken hinzufügen, aber keine Datenbanken daraus entfernen. Deshalb müssen Sie den gesamten Migrationsjob neu erstellen.
Löschen Sie die doppelte Datenbank aus Ihrer Cloud SQL for SQL Server-Instanz.
Wenn die Datenbank in Ihrer Cloud SQL-Zielinstanz doppelt vorhanden ist, können Sie sie aus Ihrer Instanz löschen und mit dem Migrationsjob fortfahren. Weitere Informationen finden Sie in der Dokumentation zu Cloud SQL for SQL Server unter Datenbank löschen.
Namen von Transaktionslogdateien für WAL-Dateien in falscher Reihenfolge korrigieren
Mögliche Ursache
In Ihren Transaktionslogdateien werden möglicherweise falsche Epoch-Zeitstempel in Bezug auf die Reihenfolge der darin enthaltenen Updates verwendet. Der Database Migration Service verwendet Logfolgenummern und Epoch-Zeitstempel, um die Reihenfolge zu steuern, in der Transaktionslogdateien in die Cloud SQL Zielinstanz repliziert werden.
Lösungsvorschlag
Ihre Datei-Uploads können verzögert oder in falscher Reihenfolge sein. Warten Sie einige Minuten, bis das Problem behoben ist, oder prüfen Sie, ob in Ihrem Cloud Storage-Bucket Dateien fehlen.
Wenn das Problem nicht behoben ist, prüfen und korrigieren Sie die Epoch-Zeitstempel in den Namen Ihrer Transaktionslogdateien.
Führen Sie diese Schritte aus:
- Prüfen Sie die Liste der Importvorgänge für Transaktionslogs in der Cloud SQL for SQL Server-Zielinstanz. Öffnen Sie in der Google Cloud Console die Cloud SQL-Instanzen Seite.
- Klicken Sie auf Alle Vorgänge ansehen > SQL Server-Fehlerlogs ansehen.
- Sehen Sie sich alle Importvorgänge für Transaktionslogdateien an und prüfen Sie ob die Dateinamen korrekte Epoch-Zeitstempel enthalten.
- Wenn Sie feststellen, dass in den Namen der letzten Transaktionslogdateien Epoch-Zeitstempel in falscher Reihenfolge verwendet werden, rufen Sie Ihren Cloud Storage-Bucket auf und benennen Sie die Datei um. Der Database Migration Service erkennt die Änderung automatisch und versucht, die relevanten Transaktionslogdateien zu importieren.
- Nur Amazon RDS: Möglicherweise wurden beim Export nach S3 einige Transaktionslogdateien ausgelassen. Führen Sie die Funktion zum Exportieren von Transaktions logs für den Zeitraum um die fehlenden WAL-Dateien noch einmal aus.