Migrationsjob für eine Cloud SQL for SQL Server-Quelle erstellen

Auf dieser Seite wird beschrieben, wie Sie mit der Google Cloud CLI einen Migrationsjob für Cloud SQL for SQL Server-Quellen erstellen. Weitere Informationen zur Migration zwischen Cloud SQL for SQL Server-Instanzen mit Database Migration Service finden Sie im Migrationsleitfaden für Cloud SQL for SQL Server-Quellen.

Hinweis

  1. Sie müssen die folgenden Anforderungen erfüllen:
    • Sie haben einen Cloud Storage-Bucket für SQL Server-Sicherungsdateien.
    • Sie haben ein Quellverbindungsprofil für Ihre Quellinstanz.
    • 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 für die 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 Ihr 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 dem 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

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 von 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 Kennung des Quellverbindungsprofils.
  • DESTINATION_CONNECTION_PROFILE_ID mit einer maschinenlesbaren Kennung des Zielverbindungsprofils.
  • DESTINATION_PROJECT_ID mit der Google Cloud Projekt-ID, in der sich die Ziel-Cloud SQL for SQL Server-Instanz befindet. Dies muss dasselbe Projekt sein, in dem Sie die Database Migration Service API aktiviert haben und in dem Sie den Migrationsjob erstellen.
  • 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.

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 \
  --project=DESTINATION_PROJECT_ID \
  --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 `
  --project=DESTINATION_PROJECT_ID `
  --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 ^
  --project=DESTINATION_PROJECT_ID ^
  --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