Migrationsjob erstellen

Der Database Migration Service verwendet Migrationsjobs, um Daten aus Ihren Quelldatenbanken in die Cloud SQL-Zielinstanz zu migrieren. Migrationsjobs helfen Ihnen, die Quell- und Zielverbindungsprofile zu organisieren, migrationsspezifische Einstellungen zu definieren, den Fortschritt zu überwachen und den gesamten Vorgang sicher abzuschließen.

Das Erstellen eines Migrationsjobs umfasst die folgenden Aufgaben:

  • Quell- und Zielverbindungsprofile auswählen

  • Auswählen der Datenbanken, die in der Quellinstanz erkannt wurden und die Sie migrieren möchten.

  • Einen Migrationsjobtest durchführen, um sicherzustellen, dass Database Migration Service eine Verbindung zu Ihrer Datenquelle und Ihrem Ziel herstellen kann.

  • Starten des Migrationsjobs und Überwachen des Fortschritts

  • Sie stufen den Migrationsjob hoch, wenn Sie Ihre Anwendung auf die neue Instanz umstellen möchten.

Hinweise

  1. Sie müssen die folgenden Anforderungen erfüllen:
    • Sie haben einen Cloud Storage-Bucket für SQL Server-Sicherungsdateien.
    • Ihre vollständigen Sicherungs- und Transaktionslogdateien werden in den Cloud Storage-Bucket hochgeladen.
    • Sie haben ein Quellverbindungsprofil für den Cloud Storage-Bucket.
    • Sie haben Ihre Cloud SQL for SQL Server-Zielinstanz erstellt und konfiguriert und verfügen über ein Zielverbindungsprofil für die Instanz.
  2. Wählen Sie in der Google Cloud -Console auf der Seite der Projektauswahl ein Google Cloud -Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Aktivieren Sie die APIs für Database Migration Service, Compute Engine, Cloud Storage und Cloud SQL Admin.

    APIs aktivieren

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen von Migrationsjobs in Database Migration Service benötigen:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.

Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Ausführen homogener SQL Server-Migrationen mit Database Migration Service erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um homogene SQL Server-Migrationen mit Database Migration Service durchzuführen:

  • datamigration.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • cloudsql.instances.create
  • cloudsql.instances.get
  • cloudsql.instances.list
  • cloudsql.databases.get
  • cloudsql.databases.delete
  • cloudsql.operations.get
  • compute.machineTypes.list
  • compute.machineTypes.get
  • compute.projects.get
  • storage.buckets.create
  • storage.buckets.list
  • storage.objects.list

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Einstellungen definieren und Migrationsjob erstellen

So erstellen Sie einen Migrationsjob:

Console

  1. Rufen Sie in der Google Cloud Console die Seite Migrationsjobs auf.

    Zu Migrationsjobs

  2. Klicken Sie auf Migrationsjob erstellen.

    Die Seite des Assistenten für die Konfiguration von Migrationsjobs wird geöffnet. Dieser Assistent enthält mehrere Bereiche, in denen Sie durch die einzelnen Konfigurationsschritte geführt werden.

    Sie können die Erstellung eines Migrationsjobs jederzeit pausieren, indem Sie auf SPEICHERN & SCHLIESSEN klicken. Alle Daten, die Sie bis dahin eingeben, werden in einem Migrationsjobentwurf gespeichert. Sie können den Migrationsjobentwurf später fertigstellen. Weitere Informationen finden Sie unter Migrationsjobentwurf aktualisieren.

  3. Geben Sie auf der Seite Erste Schritte die folgenden Informationen ein:
    • Name des Migrationsjobs

      Dies ist ein für Menschen lesbarer Name für Ihren Migrationsjob. Dieser Wert wird in der Google Cloud Console angezeigt.

    • Migrationsjob-ID

      Dies ist eine maschinenlesbare Kennung für Ihren Migrationsjob. Sie verwenden diesen Wert, um mit Migrationsjobs mithilfe von Google Cloud CLI-Befehlen oder der API des Database Migration Service zu arbeiten.

    • Wählen Sie in der Liste Quelldatenbankmodul die Option SQL Server oder Amazon RDS for SQL Server aus.

    Die Felder Zieldatenbankmodul und Migrationsjobtyp werden automatisch ausgefüllt und können nicht geändert werden.

  4. Klicken Sie auf Speichern und fortfahren.
  5. Gehen Sie auf der Seite Quelle definieren so vor:
    1. Wählen Sie im Drop-down-Menü Ihr Quellverbindungsprofil aus.

      Wenn Sie noch kein Quellverbindungsprofil haben, können Sie direkt im Drop-down-Menü auf Verbindungsprofil erstellen klicken. Weitere Informationen zum Erstellen von Verbindungsprofilen finden Sie unter Quellverbindungsprofil erstellen.

    2. Wenn Sie eine differenzielle Sicherungsdatei für die Migration verwenden möchten, setzen Sie im Bereich Quellkonfigurationen anpassen ein Häkchen bei Differenzielle Sicherungen verwenden.

      Differentielle Back-ups sind nützlich, wenn Sie viele Daten replizieren müssen, die seit dem vollständigen Back-up in Ihrer Datenbank enthalten sind, und Sie diese lieber als Ganzes verarbeiten möchten, anstatt mehrere Transaktionslogdateien hochzuladen. Weitere Informationen zu unterstützten Sicherungstypen finden Sie unter Unterstützte Sicherungsdateitypen.

      Wenn Sie differenzielle Back-ups verwenden, müssen Sie den Ordner diff in Ihrem Cloud Storage-Bucket erstellen. Weitere Informationen finden Sie unter Sicherungsdateien in einem Cloud Storage-Bucket speichern.

    3. Klicken Sie auf Speichern und fortfahren.
  6. Wählen Sie auf der Seite Ziel definieren im Drop-down-Menü Ihr Zielverbindungsprofil aus.

    Wenn Sie noch kein Zielverbindungsprofil haben, können Sie direkt im Drop-down-Menü auf Verbindungsprofil erstellen klicken. Weitere Informationen zum Erstellen von Verbindungsprofilen finden Sie unter Zielverbindungsprofil erstellen.

  7. Klicken Sie auf Speichern und fortfahren.
  8. Führen Sie auf der Seite Datenbanken für Migration konfigurieren die folgenden Aktionen aus:
    1. Wählen Sie im Bereich Zu migrierende Datenbanken auswählen mit den Kästchen aus, welche Datenbanken Sie in diesen Migrationsjob aufnehmen möchten. Diese Liste wird basierend auf den Ordnern gefüllt, die Sie im Cloud Storage-Bucket für Ihre Sicherungsdateien erstellt haben.

      Sie können dem Migrationsjob später Datenbanken hinzufügen oder daraus entfernen. Weitere Informationen finden Sie unter Datenbanken einem Migrationsjob hinzufügen oder daraus entfernen.

    2. Optional: Wenn Sie verschlüsselte Back-ups verwenden, geben Sie die Verschlüsselungsschlüssel für Ihre Back-ups an. Weitere Informationen zur Verwendung verschlüsselter Sicherungen finden Sie unter Verschlüsselte Sicherungen verwenden.

      Führen Sie folgende Aktionen durch:

      • Klicken Sie neben der Datenbank, die Sie für die Migration ausgewählt haben, auf Details bearbeiten.

        Die Seitenleiste Verschlüsselung wird geöffnet.

      • Wählen Sie Ihre Schlüssel über die Drop-down-Menüs Verschlüsselungsschlüssel aus.
      • Geben Sie im Feld Passwort das Passwort für den Verschlüsselungsschlüssel ein.
      • Klicken Sie auf Speichern und schließen.
  9. Klicken Sie auf Speichern und fortfahren.
  10. Führen Sie auf der Seite Migrationsjob testen und erstellen die folgenden Aktionen aus:
    1. Optional: Klicken Sie auf Job testen, um zu prüfen, ob der Database Migration Service alle Sicherungsdateien erfolgreich identifizieren und die erforderlichen Netzwerkverbindungen herstellen kann.

      Wenn der Test fehlschlägt, können Sie anhand der Fehlermeldungen das Problem beheben und den Test noch einmal ausführen. Weitere Informationen zu möglichen Fehlern finden Sie unter Probleme diagnostizieren.

    2. Klicken Sie auf Job erstellen und starten, um die Migration zu starten.

      Wenn Sie den Migrationsjob zu einem anderen Zeitpunkt ausführen möchten, klicken Sie auf Speichern und kehren Sie später zurück, um den Job auszuführen. Weitere Informationen finden Sie unter Migrationsjob starten.

gcloud

In diesem Beispiel wird das optionale Flag --no-async verwendet, damit alle Vorgänge synchron ausgeführt werden. Das bedeutet, dass die Ausführung einiger Befehle eine Weile dauern kann. Sie können das Flag --no-async überspringen, um Befehle asynchron auszuführen. In diesem Fall müssen Sie mit dem Befehl gcloud database-migration operations describe prüfen, ob der Vorgang erfolgreich war.

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • MIGRATION_JOB_ID durch eine maschinenlesbare ID für Ihren Migrationsjob. Sie verwenden diesen Wert, um mit Migrationsjobs mithilfe von Google Cloud CLI-Befehlen oder der API des Database Migration Service zu arbeiten.
  • REGION durch die Regions-ID, in der Sie den Migrationsjob speichern möchten.
  • MIGRATION_JOB_NAME durch einen für Menschen lesbaren Namen für Ihren Migrationsjob. Dieser Wert wird in Database Migration Service in der Google Cloud Console angezeigt.
  • SOURCE_CONNECTION_PROFILE_ID durch eine maschinenlesbare Kennzeichnung des Quellverbindungsprofils.
  • DESTINATION_CONNECTION_PROFILE_ID mit einer maschinenlesbaren Kennung des Zielverbindungsprofils.
  • COMMA_SEPARATED_DATABASE_ID_LIST mit einer durch Kommas getrennten Liste von Datenbankkennungen der SQL Server-Instanz, die Sie aus Ihren Sicherungsdateien migrieren möchten. Diese Kennungen müssen mit den Namen der Datenbankordner in Ihrem Cloud Storage übereinstimmen.

    Beispiel: --sqlserver-databases=my-business-database,my-other-database

  • Konfiguration für differenzielles Back-up: Wenn Sie für die Migration differenzielle Back-up-Dateien verwenden, fügen Sie Ihrem Befehl das Flag --sqlserver-diff-backup hinzu. Standardmäßig werden bei Migrationsjobs keine differenziellen Sicherungsdateien verwendet und der Ordner diff in Ihrem Cloud Storage-Bucket wird ignoriert.

    Weitere Informationen zu unterstützten Sicherungsdateien finden Sie unter Unterstützte Sicherungsdateitypen.

  • Optional: MAPPING_FILE_FOR_PATHS_TO_ENCRYPTION_KEYS mit dem Pfad auf Ihrer lokalen Festplatte zu einer Konfigurationsdatei, in der Pfade zu Verschlüsselungsschlüsseln in Cloud Storage den entsprechenden Datenbank-IDs zugeordnet werden. Weitere Informationen zum Erstellen dieser Zuordnungsdatei finden Sie unter Verschlüsselte Sicherungen verwenden.

    Beispiel: --sqlserver-encrypted-databases=~/encryption-keys-mapping-file.json

Führen Sie folgenden Befehl aus:

Linux, macOS oder Cloud Shell

gcloud database-migration migration-jobs \
create MIGRATION_JOB_ID \
  --no-async \
  --region=REGION \
  --display-name=MIGRATION_JOB_NAME \
  --source=SOURCE_CONNECTION_PROFILE_ID \
  --destination=DESTINATION_CONNECTION_PROFILE_ID \
  --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST \
  --sqlserver-encrypted-databases=MAPPING_FILE_FOR_PATHS_TO_ENCRYPTION_KEYS \
  --type=CONTINUOUS

Windows (PowerShell)

gcloud database-migration migration-jobs `
create MIGRATION_JOB_ID `
  --no-async `
  --region=REGION `
  --display-name=MIGRATION_JOB_NAME `
  --source=SOURCE_CONNECTION_PROFILE_ID `
  --destination=DESTINATION_CONNECTION_PROFILE_ID `
  --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST `
  --sqlserver-encrypted-databases=MAPPING_FILE_FOR_PATHS_TO_ENCRYPTION_KEYS `
  --type=CONTINUOUS

Windows (cmd.exe)

gcloud database-migration migration-jobs ^
create MIGRATION_JOB_ID ^
  --no-async ^
  --region=REGION ^
  --display-name=MIGRATION_JOB_NAME ^
  --source=SOURCE_CONNECTION_PROFILE_ID ^
  --destination=DESTINATION_CONNECTION_PROFILE_ID ^
  --sqlserver-databases=COMMA_SEPARATED_DATABASE_ID_LIST ^
  --sqlserver-encrypted-databases=MAPPING_FILE_FOR_PATHS_TO_ENCRYPTION_KEYS ^
  --type=CONTINUOUS

Sie sollten eine Antwort ähnlich der folgenden erhalten:

Waiting for migration job [MIGRATION_JOB_ID]
to be created with [OPERATION_ID]

Waiting for operation [OPERATION_ID] to complete...done.

Created migration job MIGRATION_JOB_ID [OPERATION_ID]
Ergebnis

Der Migrationsjob wurde erstellt. So fahren Sie mit der Migration fort:

Nächste Schritte