Schnellstartmigrationen mit Database Migration Service verwenden

Auf dieser Seite wird beschrieben, wie Sie Schnellstart-Migrationen für homogene PostgreSQL-Migrationen zu AlloyDB for PostgreSQL ausführen.

Übersicht

Schnellstartmigrationen sind ein einfacher kontinuierlicher Migrationsablauf für homogene PostgreSQL-Szenarien. Bei Schnellstartmigrationen kann Database Migration Service automatisch alles einrichten, was Sie zum Migrieren Ihrer Datenbanken benötigen: Netzwerkkomponenten (Netzwerk-Attachments, Subnetze, Konfigurationen für private Verbindungen), Verbindungsprofile und Migrationsjobs.

Mit Schnellstartmigrationen können Sie Ihre Daten in einen vorhandenen AlloyDB for PostgreSQL-Cluster verschieben oder einen neuen Cluster erstellen, während Sie die Migration konfigurieren. Schnellstart-Migrationen eignen sich am besten für:

  • Einfache Migrationen, bei denen Sie keine genaue Kontrolle über die Parallelitätseinstellungen für Datendumps benötigen.
  • Sie migrieren Ihre Datenbank von einem Google Cloud Projekt in ein anderes. Wenn Sie eine Schnellstartmigration konfigurieren, können Sie den Zielcluster in einem anderen Projekt als die Quelle erstellen und Database Migration Service so einrichten, dass der Netzwerkanhang und das Subnetz im VPC-Netzwerk (Virtual Private Cloud) eines anderen Projekts erstellt werden.
  • Migration von Quellen mit einer privaten IP-Adresse in Ihrem VPC-Netzwerk (Virtual Private Cloud) Google Cloud, z. B. selbstverwaltete Datenbanken in Compute Engine oder Cloud SQL for PostgreSQL-Instanzen, die für privates Networking aktiviert sind.

    Für Quellen, die außerhalb von Google Cloud gehostet werden, sind möglicherweise zusätzliche Netzwerkkomponenten (z. B. eine Cloud VPN-Verbindung) erforderlich, damit sie über eine private IP-Adresse in Ihrem VPC-Netzwerk erreicht werden können.

  • Die einzige unterstützte Methode für die Datenbankverbindung sind Private Service Connect-Schnittstellen mit Konfigurationen für private Verbindungen von Database Migration Service. Ihrer Quelldatenbank muss im VPC-Netzwerk eine private IP-Adresse zugewiesen sein. Andere homogene Quellverbindungsmethoden wie Zulassungslisten für öffentliche IP-Adressen, umgekehrte SSH-Tunnel oder VPC-Peering werden für Schnellstartmigrationen nicht unterstützt.

Weitere Informationen zu Schnellstart-Migrationen finden Sie in der Dokumentation zum Database Migration Service unter Schnellstart-Migrationen.

Hinweis

  1. Prüfen Sie, ob Schnellstart-Migrationen Ihr Szenario vollständig unterstützen können. Weitere Informationen finden Sie in der Dokumentation zu Database Migration Service unter Einschränkungen für die Schnellstartmigration.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Aktivieren Sie die Admin APIs für Database Migration Service, Compute Engine, Network Connectivity Center und AlloyDB for PostgreSQL.

    APIs aktivieren

Erforderliche Rollen

Bitten Sie Ihren Administrator, die erforderlichen IAM-Rollen (Identity and Access Management) für die an der Migration beteiligten Konten in den entsprechenden Projekten zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Ausführen von Schnellstartmigrationen zu AlloyDB for PostgreSQL mit Database Migration Service benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie in der IAM-Dokumentation unter Zugriff verwalten.

Rollen und Berechtigungen im Quellprojekt

Weisen Sie bestimmten Konten im Projekt Google Cloud , in dem sich Ihre Quelldatenbank befindet, die folgenden Rollen zu:

  • Für das Nutzerkonto, mit dem die Migration durchgeführt wird: Compute-Netzwerkadministrator (roles/compute.networkAdmin)
  • Für das Database Migration Service-Dienstkonto des Zielprojekts: Compute-Netzwerkbetrachter (roles/compute.networkViewer)

    Das Dienstkonto für Database Migration Service wird für Sie erstellt, wenn Sie die Database Migration Service API aktivieren. Die mit diesem Konto verknüpfte E‑Mail-Adresse wird automatisch generiert und kann nicht geändert werden. Diese E-Mail-Adresse hat das folgende Format:

    service-DESTINATION_PROJECT_NUMBERservice-DESTINATION_PROJECT_NUMBER@gcp-sa-datamigration.

Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Einrichten der Konnektivität für Ihr Quelldatenbankprojekt im Rahmen einer Schnellstartmigration mit Database Migration Service erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen (Quelle), um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen (Quelle)

Die folgenden Berechtigungen sind erforderlich, um homogene Schnellstartmigrationen mit Database Migration Service durchzuführen:

Für das Nutzerkonto, mit dem die Migration durchgeführt wird:

  • compute.networks.*
  • compute.subnetworks.*
  • compute.networkAttachments.*

Für das Database Migration Service-Dienstkonto des Zielprojekts: compute.networkAttachments.get.

Rollen und Berechtigungen im Zielprojekt

Weisen Sie dem Nutzerkonto, das die Migration durchführt, die folgenden Rollen für das Google Cloud -Projekt zu, in dem sich Ihre Zieldatenbank befindet:

Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Einrichten der erforderlichen Migrationskomponenten in Ihrem Ziel-Datenbankprojekt im Rahmen einer Schnellstartmigration mit Database Migration Service erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen (Ziel), um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen (Ziel)

Die folgenden Berechtigungen sind erforderlich, um homogene Schnellstartmigrationen mit Database Migration Service durchzuführen:

  • datamigration.*
  • alloydb.clusters.create
  • alloydb.clusters.get
  • alloydb.clusters.list
  • alloydb.clusters.update
  • alloydb.clusters.delete
  • alloydb.instances.create
  • alloydb.instances.get
  • alloydb.instances.list
  • alloydb.instances.update
  • alloydb.instances.delete
  • alloydb.instances.executeSql
  • alloydb.operations.get
  • alloydb.users.list
  • alloydb.users.get
  • alloydb.users.create
  • alloydb.users.update
  • alloydb.users.delete

Quelldatenbank konfigurieren

So konfigurieren Sie die PostgreSQL-Quelldatenbank:

  1. Erstellen Sie in Ihrer Instanz ein dediziertes Nutzerkonto für die Migration.
    • Informationen zu Cloud SQL for PostgreSQL-Quellen finden Sie in der Cloud SQL-Dokumentation unter Nutzer erstellen.
    • Informationen zu anderen Quellen finden Sie in der Dokumentation Ihres Datenbankanbieters oder in der PostgreSQL-Dokumentation unter Nutzer erstellen und verwalten.
  2. Weisen Sie dem dedizierten Migrationsnutzerkonto die erforderlichen Berechtigungen zu. Führen Sie die folgenden Befehle für jede Datenbank aus, die Sie migrieren möchten:
    -- Grant the REPLICATION attribute
    ALTER ROLE MIGRATION_USER REPLICATION;
    
    -- Grant database-level permissions.
    -- Repeat for each database you want to migrate.
    GRANT CONNECT, CREATE ON DATABASE DATABASE_NAME TO MIGRATION_USER;
    
    -- Grant schema-level usage.
    -- Repeat for each schema in each database you want to migrate.
    GRANT USAGE ON SCHEMA SCHEMA_NAME TO MIGRATION_USER;

    Ersetzen Sie Folgendes:

    • MIGRATION_USER durch den Namen des Migrationsnutzerkontos.
    • Ersetzen Sie DATABASE_NAME durch den Namen der Datenbank, die Sie migrieren möchten.
    • Ersetzen Sie SCHEMA_NAME durch den Namen des Schemas in der Datenbank, die Sie migrieren möchten.
  3. Das Migrationsnutzerkonto muss Inhaberzugriff auf die Tabellen haben, die Sie migrieren. Führen Sie einen der folgenden Schritte aus, um diese Zugriffsebene zu gewähren:
    • Nur für andere Quellen als Cloud SQL for PostgreSQL: Weisen Sie dem Migrationskonto die SUPERUSER-PostgreSQL-Rolle zu.
    • Für alle Quellen: Fügen Sie das Migrationsnutzerkonto der Nutzergruppe hinzu, zu der die Tabellen gehören. Führen Sie dazu diesen Befehl aus:
      -- Grant table ownership.
      GRANT TABLE_OWNER_GROUP_NAME TO MIGRATION_USER;

      Ersetzen Sie Folgendes:

      • TABLE_OWNER_GROUP_NAME durch den Namen der Nutzergruppe, zu der jede Tabelle gehört, die Sie migrieren möchten.
      • MIGRATION_USER durch den Namen des Migrationsnutzerkontos.
  4. Bei Tabellen ohne Primärschlüssel: Database Migration Service repliziert während der CDC-Phase (Change Data Capture) keine UPDATE- oder DELETE-Vorgänge für Tabellen ohne Primärschlüssel. Wenn Sie solche Vorgänge in Ihre Replikation einbeziehen möchten, ändern Sie Tabellen ohne Primärschlüssel mit REPLICA IDENTITY:
    ALTER TABLE TABLE_NAME REPLICA IDENTITY FULL;
    ALTER TABLE TABLE_NAME REPLICA IDENTITY USING INDEX INDEX_NAME;

    Ersetzen Sie Folgendes:

    • TABLE_NAME ist der Name der Tabelle ohne Primärschlüssel.
    • INDEX_NAME ist der eindeutige Index, mit dem Zeilen aus Tabellen ohne Primärschlüssel verfolgt werden können.
  5. Konfigurieren Sie die Replikationseinstellungen mit Datenbank-Flags.

    Selbstverwaltete Quellen

    Wenn Sie Änderungen an Datenbank-Flags speichern, ist ein vollständiger Neustart der Datenbank erforderlich. In den folgenden Beispielen werden SQL-Abfragen zum Ändern von Flag-Werten verwendet. Wenn Sie SQL-Abfragen nicht direkt ausführen können, finden Sie in der Dokumentation Ihres Anbieters eine Anleitung zum Ändern dieser Flags.

    1. Setzen Sie den Parameter wal_level auf logical. Führen Sie dazu diesen Befehl aus:
      ALTER SYSTEM SET wal_level = 'logical';
    2. Setzen Sie den Parameter wal_sender_timeout auf 0. Dieser Wert deaktiviert das Zeitlimit, das zum Beenden inaktiver Replikationsverbindungen verwendet wird. Führen Sie dazu diesen Befehl aus:
      ALTER SYSTEM SET wal_sender_timeout = 0;
          
    3. Konfigurieren Sie die maximale Anzahl von Replikations-Slots mit dem Parameter max_replication_slots. Dieser Parameter muss mindestens auf die Anzahl der Datenbanken festgelegt werden, die Sie pro Migrationsjob migrieren, zuzüglich einiger Reserven für die Tabellensynchronisierung.

      Wenn Sie beispielsweise 5 Datenbanken migrieren und 2 Migrationsjobs für die Quellinstanz erstellt werden, muss die Anzahl der Replikations-Slots mindestens 5 * 2 = 10 betragen, zuzüglich der Anzahl der Replikations-Slots, die Sie bereits verwenden.

      Führen Sie den folgenden Befehl aus, um diesen Parameter festzulegen:

      ALTER SYSTEM SET max_replication_slots = NUMBER_OF_SLOTS;
          
      Dabei steht NUMBER_OF_SLOTS für die maximale Anzahl von Replikations-Slots.
    4. Konfigurieren Sie den Parameter max_wal_senders auf mindestens denselben Wert wie max_replication_slots, plus die Anzahl der Absender, die bereits auf Ihrer Instanz verwendet werden.

      Wenn für den Parameter max_replication_slots beispielsweise der Wert 10 festgelegt ist und Sie bereits zwei Absender verwenden, beträgt die Anzahl der gleichzeitig ausgeführten WAL-Senderprozesse 10 + 2 = 12.

      Führen Sie den folgenden Befehl aus, um diesen Parameter festzulegen:

      ALTER SYSTEM SET max_wal_senders = NUMBER_OF_SENDERS;
          
      Dabei steht NUMBER_OF_SENDERS für die Anzahl der gleichzeitig ausgeführten WAL-Senderprozesse.
    5. Legen Sie max_worker_processes auf mindestens die Anzahl der Datenbanken fest, die Sie migrieren möchten, plus die Anzahl der max_worker_processes, die bereits auf Ihrer Instanz verwendet werden. Führen Sie den folgenden Befehl aus, um diesen Parameter festzulegen:
      ALTER SYSTEM SET max_worker_processes = NUMBER_OF_PROCESSES;
          
      Dabei steht NUMBER_OF_PROCESSES für die Anzahl der Datenbanken, die migriert werden.

    Cloud SQL for PostgreSQL-Quellen

    Bei Cloud SQL-Quellen konfigurieren Sie Datenbank-Flags in der Google Cloud -Konsole. Sie müssen die Instanz neu starten, damit die Änderungen an den Datenbankflags wirksam werden. Weitere Informationen zum Festlegen von Datenbank-Flags in Cloud SQL finden Sie in der Cloud SQL-Dokumentation unter Datenbank-Flags konfigurieren.

    1. Legen Sie das Flag cloudsql.logical_decoding auf on fest.
    2. Setzen Sie den Parameter wal_sender_timeout auf 0. Dieser Wert deaktiviert das Zeitlimit, das zum Beenden inaktiver Replikationsverbindungen verwendet wird.
    3. Konfigurieren Sie die maximale Anzahl von Replikations-Slots mit dem Parameter max_replication_slots. Dieser Parameter muss mindestens auf die Anzahl der Datenbanken festgelegt werden, die Sie pro Migrationsjob migrieren, zuzüglich einiger Reserven für die Tabellensynchronisierung.

      Wenn Sie beispielsweise 5 Datenbanken migrieren und 2 Migrationsjobs für die Quellinstanz erstellt werden, muss die Anzahl der Replikations-Slots mindestens 5 * 2 = 10 betragen, zuzüglich der Anzahl der Replikations-Slots, die Sie bereits verwenden.

    4. Konfigurieren Sie den Parameter max_wal_senders auf mindestens denselben Wert wie max_replication_slots plus die Anzahl der Absender, die bereits auf Ihrer Instanz verwendet werden.

      Wenn für den Parameter max_replication_slots beispielsweise der Wert 10 festgelegt ist und Sie bereits zwei Absender verwenden, beträgt die Anzahl der gleichzeitig ausgeführten WAL-Senderprozesse 10 + 2 = 12.

    5. Setzen Sie max_worker_processes auf mindestens die Anzahl der Datenbanken, die Sie migrieren möchten, plus die Anzahl der max_worker_processes, die bereits auf Ihrer Instanz verwendet werden.

Schnellstart-Migration erstellen und ausführen

Bei der Verwendung von Schnellstartmigrationen können Sie einen neuen AlloyDB for PostgreSQL-Cluster erstellen und Ihre Datenbanken dorthin migrieren oder Datenbanken zu einem bereits vorhandenen Cluster migrieren.

Schnellstart-Migrationen für neue Cluster

So erstellen Sie einen neuen AlloyDB for PostgreSQL-Cluster und migrieren Ihre Datenbanken sofort dorthin:

Console

  1. Zur Clusterseite.

    Zu den Clustern

  2. Klicken Sie auf Cluster erstellen > Aus einer vorhandenen Datenbank.

    Das Schnellstartformular für die Migration mit Database Migration Service wird geöffnet.

  3. Führen Sie im Abschnitt Migration konfigurieren die folgenden Schritte aus:
    1. Wählen Sie im Menü Zielregion die Region Ihres AlloyDB for PostgreSQL-Zielclusters aus.
    2. Geben Sie im Feld Migrationspräfix einen String ein, der den Namen aller Migrationseinheiten hinzugefügt wird, die für die Schnellstartmigration erstellt werden: Verbindungsprofile, Konfiguration für private Verbindungen, Netzwerk-Attachment und zugehöriges Subnetz sowie Migrationsjob.
    3. Wählen Sie im Menü Konfigurationstyp eine der folgenden Optionen aus:
      1. Bestehende Konfiguration für Verbindungen: Wählen Sie diese Option aus, wenn Sie bereits einen Netzwerk-Anhang und eine Konfiguration für private Verbindungen haben, die die Methode „Private Service Connect-Schnittstellen“ verwendet. Diese Option eignet sich am besten, wenn Sie zuvor Quickstart-Migrationen verwendet haben und dieselben Netzwerkressourcen wiederverwenden möchten.
      2. Neue Konfiguration für die Verbindung: Wählen Sie diese Option aus, um einen neuen Netzwerkanhang und das Subnetz des Netzwerkanhangs im VPC-Netzwerk der Quelldatenbank zu erstellen. Die Konfiguration für private Verbindungen wird im selben Projekt wie Ihr Zielcluster erstellt.
    4. Klicken Sie auf Weiter.
  4. Führen Sie im Abschnitt Quelle verbinden folgende Schritte aus:
    1. Geben Sie einen Hostnamen oder die private IP-Adresse Ihrer Quelldatenbank ein. Die Adresse der Quelldatenbank muss über Ihr Quell-VPC-Netzwerk erreichbar sein.
    2. Geben Sie den Port ein, der für den Zugriff auf den Host verwendet wird. Die standardmäßige PostgreSQL-Portnummer ist 5432.
    3. Geben Sie den Nutzernamen und das Passwort für das dedizierte Migrationskonto in Ihrer Quelldatenbank ein.
    4. Wählen Sie im Menü Verschlüsselungstyp eine der folgenden Optionen aus:
      • Keine: Wenn für Ihre Quelldatenbank keine SSL/TLS-verschlüsselten Verbindungen erforderlich sind.
      • Erforderlich: Wenn für Ihre Quelldatenbank SSL/TLS-verschlüsselte Verbindungen erforderlich sind. Für diese Option ist keine Zertifikatsüberprüfung erforderlich.
    5. Klicken Sie im Menü Zu migrierende Datenbanken auf Anpassen. Wählen Sie in der Seitenleiste nur die Datenbanken aus, die Sie zu AlloyDB for PostgreSQL migrieren möchten.
    6. Klicken Sie auf Weiter.
  5. Führen Sie im Abschnitt Ziel konfigurieren die folgenden Schritte aus:
    1. Wählen Sie im Menü Zielinstanztyp die Option Neuer Cluster aus.

      Database Migration Service verwendet die Standardkonfiguration von AlloyDB for PostgreSQL für einen neuen Cluster. Klicken Sie auf Anpassen, um Clusterfunktionen wie den Maschinentyp, die zonale Verfügbarkeit oder die Datenschutzeinstellungen anzupassen. Weitere Informationen zur Clusterkonfiguration finden Sie unter Cluster und primäre Instanz erstellen.

    2. Geben Sie im Feld Passwort ein Passwort für den Standardadministratornutzer postgresql ein. Database Migration Service stellt als dieser Nutzer eine Verbindung her, um Ihre Daten zu migrieren.
  6. Klicken Sie auf Migration starten.

    Database Migration Service erstellt jetzt den Migrationsjob und beginnt mit der Migration. Sie können den Migrationsfortschritt sowie den Zustand Ihres Zielclusters in AlloyDB for PostgreSQL überwachen. Weitere Informationen finden Sie unter Clusterinformationen ansehen.

gcloud

So migrieren Sie mit der gcloud CLI zu einem neuen AlloyDB-Cluster:

  1. Netzwerkanhangressource erstellen
    Erstellen Sie den Netzwerkanhang in dem Projekt und Virtual Private Cloud-Netzwerk, in dem sich Ihre Quelldatenbank befindet:

    gcloud compute network-attachments create NETWORK_ATTACHMENT \
      --region=REGION \
      --connection-preference=ACCEPT_MANUAL \
      --producer-accept-list=DEST_PROJECT_ID \
      --subnets=default \
      --project=SOURCE_PROJECT_ID

    Ersetzen Sie Folgendes:

    • NETWORK_ATTACHMENT: Der Name des zu erstellenden Netzwerkanhangs.
    • REGION: Die Region für den Netzwerkanhang.
    • DEST_PROJECT_ID: Die Projekt-ID Ihres Zielprojekts.
    • SOURCE_PROJECT_ID: Die Projekt-ID des Quellnetzwerks.
  2. Gewähren Sie dem Mandantenprojekt des Database Migration Service Zugriff auf die Netzwerkverbindung.
    Rufen Sie die Mandantenprojekt-ID ab, indem Sie eine Validierungsprüfung ausführen, und aktualisieren Sie dann die Annahmeliste für Netzwerkanhänge, um sie einzuschließen:

    1. Führen Sie eine Validierungsprüfung durch, um die Mandantenprojekt-ID abzurufen:

      gcloud database-migration private-connections create PRIVATE_CONN \
        --region=REGION \
        --network-attachment=NETWORK_ATTACHMENT_URI \
        --display-name=PRIVATE_CONN \
        --format="value(metadata.metadata.tenant_project_id)" \
        --validate-only

      Ersetzen Sie Folgendes:

      • PRIVATE_CONN: Der Name der Ressource für die private Verbindung.
      • REGION: Die Region für die private Verbindung.
      • NETWORK_ATTACHMENT_URI: Der URI des im vorherigen Schritt erstellten Netzwerkanhangs. Beispiel: projects/SOURCE_PROJECT_ID/regions/REGION/networkAttachments/NETWORK_ATTACHMENT.
    2. Aktualisieren Sie den Netzwerkanhang mit dem abgerufenen DMS_TENANT_ID:

      gcloud compute network-attachments update NETWORK_ATTACHMENT \
        --region=REGION \
        --producer-accept-list=DEST_PROJECT_ID,DMS_TENANT_ID \
        --project=SOURCE_PROJECT_ID

      Ersetzen Sie Folgendes:

      • NETWORK_ATTACHMENT: Der Name des Netzwerkanhangs.
      • REGION: Die Region.
      • DEST_PROJECT_ID: Die Projekt-ID Ihres Zielprojekts.
      • DMS_TENANT_ID: Die abgerufene Mandantenprojekt-ID für Database Migration Service.
      • SOURCE_PROJECT_ID: Die Projekt-ID des Quellnetzwerks.
  3. Konfiguration für private Verbindungen erstellen
    Private Verbindung im Zielprojekt erstellen:

    gcloud database-migration private-connections create PRIVATE_CONN \
      --region=REGION \
      --network-attachment=NETWORK_ATTACHMENT_URI \
      --display-name=PRIVATE_CONN

    Ersetzen Sie Folgendes:

    • PRIVATE_CONN: Der Name der Ressource für die private Verbindung.
    • REGION: Die Region für die private Verbindung.
    • NETWORK_ATTACHMENT_URI: Der URI des Netzwerk-Anhangs.
  4. Quellverbindungsprofil erstellen
    Verbindungsprofil für die PostgreSQL-Quelldatenbank erstellen:

    gcloud database-migration connection-profiles create postgresql SOURCE_CONN_ID \
      --region=REGION \
      --role=SOURCE \
      --host=SOURCE_PRIVATE_IP \
      --port=SOURCE_PORT \
      --username=SOURCE_USER \
      --password=SOURCE_PASSWORD \
      --private-connection=PRIVATE_CONN \
      --no-async

    Ersetzen Sie Folgendes:

    • SOURCE_CONN_ID: Die Kennung des Quellverbindungsprofils.
    • REGION: Die Region, in der Sie das Verbindungsprofil speichern möchten.
    • SOURCE_PRIVATE_IP: Die private IP-Adresse Ihrer Quelldatenbank.
    • SOURCE_PORT: Der Port Ihrer Quelldatenbank (Standard ist 5432).
    • SOURCE_USER: Der Nutzername des Migrationsnutzers in Ihrer Quelldatenbank.
    • SOURCE_PASSWORD: Das Passwort des Migrationsnutzers in der Quelldatenbank.
    • PRIVATE_CONN: Der Name der Ressource für die private Verbindung.
  5. Ziel-AlloyDB-Cluster erstellen
    Erstellen Sie den Zielcluster und die zugehörige primäre Instanz. Eine detaillierte Anleitung finden Sie auf der Seite Cluster und primäre Instanz erstellen.

  6. Zielverbindungsprofil erstellen
    Erstellen Sie das Zielverbindungsprofil, das auf den neu erstellten AlloyDB-Cluster verweist:

    gcloud database-migration connection-profiles create postgresql DEST_CONN_ID \
      --region=REGION \
      --alloydb-cluster=DEST_CLUSTER \
      --username=DEST_USER \
      --password=DEST_PASSWORD \
      --role=DESTINATION \
      --no-async

    Ersetzen Sie Folgendes:

    • DEST_CONN_ID: Die Kennung des Zielverbindungsprofils.
    • REGION: Die Region, in der Sie das Verbindungsprofil speichern möchten. Diese Region muss mit der Region Ihres Zielclusters übereinstimmen.
    • DEST_CLUSTER: Die ID oder der vollständige Ressourcenpfad Ihres AlloyDB for PostgreSQL-Zielclusters.
    • DEST_USER: Der Nutzername des Migrationsnutzers in Ihrer Zieldatenbank.
    • DEST_PASSWORD: Das Passwort für den Migrationsnutzer in der Zieldatenbank.
  7. Migrationsjob erstellen
    Kontinuierlichen Migrationsjob mit aktivierter nativer Replikation erstellen:

    gcloud database-migration migration-jobs create MIGRATION_JOB_ID \
      --region=REGION \
      --type=CONTINUOUS \
      --source=SOURCE_CONN_ID \
      --destination=DEST_CONN_ID \
      --use-postgres-native \
      --postgres-max-additional-subscriptions=10 \
      --databases-filter=DATABASES_LIST \
      --no-async

    Ersetzen Sie Folgendes:

    • MIGRATION_JOB_ID: Ihre Migrationsjob-ID.
    • REGION: Die Region, in der Sie den Migrationsjob speichern möchten.
    • SOURCE_CONN_ID: Die Kennzeichnung des Quellverbindungsprofils.
    • DEST_CONN_ID: Die ID des Zielverbindungsprofils.
    • DATABASES_LIST: Eine durch Kommas getrennte Liste der Datenbanken, die Sie migrieren möchten.
  8. Migrationsjob starten
    Starten Sie den Migrationsjob, um den Replikationsablauf zu beginnen:

    gcloud database-migration migration-jobs start MIGRATION_JOB_ID \
      --region=REGION

    Ersetzen Sie Folgendes:

    • MIGRATION_JOB_ID: Die Kennung des Migrationsjobs.
    • REGION: Die Region, in der sich der Migrationsjob befindet.

Schnellstart-Migrationen für vorhandene Cluster

So migrieren Sie Datenbanken zu einem vorhandenen AlloyDB for PostgreSQL-Cluster:

Console

  1. Zur Clusterseite.

    Zu den Clustern

  2. Wählen Sie den AlloyDB for PostgreSQL-Cluster aus, zu dem Sie Ihre Datenbanken migrieren möchten.
  3. Klicken Sie auf der Cluster-Detailseite auf Daten migrieren.
  4. Klicken Sie im Bereich Daten migrieren auf Datenbank migrieren.

    Das Schnellstartformular für die Migration mit Database Migration Service wird geöffnet.

  5. Führen Sie im Abschnitt Migration konfigurieren die folgenden Schritte aus:
    1. Wählen Sie im Menü Zielregion die Region Ihres AlloyDB for PostgreSQL-Zielclusters aus.
    2. Geben Sie im Feld Migrationspräfix einen String ein, der den Namen aller Migrationseinheiten hinzugefügt wird, die für die Schnellstartmigration erstellt werden: Verbindungsprofile, Konfiguration für private Verbindungen, Netzwerk-Attachment und zugehöriges Subnetz sowie Migrationsjob.
    3. Wählen Sie im Menü Konfigurationstyp eine der folgenden Optionen aus:
      1. Vorhandene Konfiguration für private Verbindungen: Wählen Sie diese Option aus, wenn Sie bereits einen Netzwerkanhang und eine Konfiguration für private Verbindungen haben, die Private Service Connect-Schnittstellen im VPC-Netzwerk der Quelldatenbank verwendet. Diese Option eignet sich am besten, wenn Sie zuvor Quickstart-Migrationen verwendet haben und dieselben Netzwerkressourcen wiederverwenden möchten.
      2. Neue Verbindungskonfiguration: Wählen Sie diese Option aus, um eine neue Netzwerkverbindung, ein neues Subnetz für die Netzwerkverbindung und eine private Verbindungskonfiguration im VPC-Netzwerk der Quelldatenbank zu erstellen.
  6. Führen Sie im Abschnitt Quelle verbinden folgende Schritte aus:
    1. Geben Sie einen Hostnamen oder die private IP-Adresse Ihrer Quelldatenbank ein. Die Adresse der Quelldatenbank muss über Ihr Quell-VPC-Netzwerk erreichbar sein.
    2. Geben Sie den Port ein, der für den Zugriff auf den Host verwendet wird. Der PostgreSQL-Standardport ist 5432.
    3. Geben Sie den Nutzernamen und das Passwort für das dedizierte Migrationskonto in Ihrer Quelldatenbank ein.
    4. Wählen Sie im Menü Verschlüsselungstyp eine der folgenden Optionen aus:
      • Keine: Wenn für Ihre Quelldatenbank keine SSL/TLS-verschlüsselten Verbindungen erforderlich sind.
      • Erforderlich: Wenn für Ihre Quelldatenbank SSL/TLS-verschlüsselte Verbindungen erforderlich sind. Für diese Option ist keine Zertifikatsüberprüfung erforderlich.
    5. Klicken Sie im Menü Zu migrierende Datenbanken auf Anpassen. Wählen Sie in der Seitenleiste nur die Datenbanken aus, die Sie zu AlloyDB for PostgreSQL migrieren möchten.
  7. Klicken Sie auf Migration starten.

    Database Migration Service erstellt jetzt den Migrationsjob und beginnt mit der Migration. Sie können den Migrationsfortschritt sowie den Zustand Ihres Zielclusters in AlloyDB for PostgreSQL überwachen. Weitere Informationen finden Sie unter Clusterinformationen ansehen.

gcloud

So migrieren Sie mit der gcloud CLI zu einem vorhandenen AlloyDB-Cluster:

  1. Netzwerkanhangressource erstellen
    Erstellen Sie den Netzwerkanhang in dem Projekt und VPC-Netzwerk, in dem sich Ihre Quelldatenbank befindet:

    gcloud compute network-attachments create NETWORK_ATTACHMENT \
      --region=REGION \
      --connection-preference=ACCEPT_MANUAL \
      --producer-accept-list=DEST_PROJECT_ID \
      --subnets=default \
      --project=SOURCE_PROJECT_ID

    Ersetzen Sie Folgendes:

    • NETWORK_ATTACHMENT: Der Name des zu erstellenden Netzwerkanhangs.
    • REGION: Die Region für den Netzwerkanhang.
    • DEST_PROJECT_ID: Die Projekt-ID Ihres Zielprojekts.
    • SOURCE_PROJECT_ID: Die Projekt-ID des Quellnetzwerks.
  2. Gewähren Sie dem Mandantenprojekt des Database Migration Service Zugriff auf die Netzwerkverbindung.
    Rufen Sie die Mandantenprojekt-ID ab, indem Sie eine Validierungsprüfung ausführen, und aktualisieren Sie dann die Annahmeliste für Netzwerkanhänge, um sie einzuschließen:

    1. Führen Sie eine Validierungsprüfung durch, um die Mandantenprojekt-ID abzurufen:

      gcloud database-migration private-connections create PRIVATE_CONN \
        --region=REGION \
        --network-attachment=NETWORK_ATTACHMENT_URI \
        --display-name=PRIVATE_CONN \
        --format="value(metadata.metadata.tenant_project_id)" \
        --validate-only

      Ersetzen Sie Folgendes:

      • PRIVATE_CONN: Der Name der Ressource für die private Verbindung.
      • REGION: Die Region für die private Verbindung.
      • NETWORK_ATTACHMENT_URI: Der URI des im vorherigen Schritt erstellten Netzwerkanhangs. Beispiel: projects/SOURCE_PROJECT_ID/regions/REGION/networkAttachments/NETWORK_ATTACHMENT.
    2. Aktualisieren Sie den Netzwerkanhang mit dem abgerufenen DMS_TENANT_ID:

      gcloud compute network-attachments update NETWORK_ATTACHMENT \
        --region=REGION \
        --producer-accept-list=DEST_PROJECT_ID,DMS_TENANT_ID \
        --project=SOURCE_PROJECT_ID

      Ersetzen Sie Folgendes:

      • NETWORK_ATTACHMENT: Der Name des Netzwerkanhangs.
      • REGION: Die Region.
      • DEST_PROJECT_ID: Die Projekt-ID Ihres Zielprojekts.
      • DMS_TENANT_ID: Die abgerufene Mandantenprojekt-ID für Database Migration Service.
      • SOURCE_PROJECT_ID: Die Projekt-ID des Quellnetzwerks.
  3. Konfiguration für private Verbindungen erstellen
    Private Verbindung im Zielprojekt erstellen:

    gcloud database-migration private-connections create PRIVATE_CONN \
      --region=REGION \
      --network-attachment=NETWORK_ATTACHMENT_URI \
      --display-name=PRIVATE_CONN

    Ersetzen Sie Folgendes:

    • PRIVATE_CONN: Der Name der Ressource für die private Verbindung.
    • REGION: Die Region für die private Verbindung.
    • NETWORK_ATTACHMENT_URI: Der URI des Netzwerk-Anhangs.
  4. Quellverbindungsprofil erstellen
    Verbindungsprofil für die PostgreSQL-Quelldatenbank erstellen:

    gcloud database-migration connection-profiles create postgresql SOURCE_CONN_ID \
      --region=REGION \
      --role=SOURCE \
      --host=SOURCE_PRIVATE_IP \
      --port=SOURCE_PORT \
      --username=SOURCE_USER \
      --password=SOURCE_PASSWORD \
      --private-connection=PRIVATE_CONN \
      --no-async

    Ersetzen Sie Folgendes:

    • SOURCE_CONN_ID: Die Kennung des Quellverbindungsprofils.
    • REGION: Die Region, in der Sie das Verbindungsprofil speichern möchten.
    • SOURCE_PRIVATE_IP: Die private IP-Adresse Ihrer Quelldatenbank.
    • SOURCE_PORT: Der Port Ihrer Quelldatenbank (Standard ist 5432).
    • SOURCE_USER: Der Nutzername des Migrationsnutzers in Ihrer Quelldatenbank.
    • SOURCE_PASSWORD: Das Passwort des Migrationsnutzers in der Quelldatenbank.
    • PRIVATE_CONN: Der Name der Ressource für die private Verbindung.
  5. Zielverbindungsprofil erstellen
    Erstellen Sie das Zielverbindungsprofil, das auf den vorab erstellten AlloyDB-Zielcluster verweist:

    gcloud database-migration connection-profiles create postgresql DEST_CONN_ID \
      --region=REGION \
      --alloydb-cluster=DEST_CLUSTER \
      --username=DEST_USER \
      --password=DEST_PASSWORD \
      --role=DESTINATION \
      --no-async

    Ersetzen Sie Folgendes:

    • DEST_CONN_ID: Die Kennung des Zielverbindungsprofils.
    • REGION: Die Region, in der Sie das Verbindungsprofil speichern möchten. Diese Region muss mit der Region Ihres Zielclusters übereinstimmen.
    • DEST_CLUSTER: Die ID oder der vollständige Ressourcenpfad Ihres AlloyDB for PostgreSQL-Zielclusters.
    • DEST_USER: Der Nutzername des Migrationsnutzers in Ihrer Zieldatenbank.
    • DEST_PASSWORD: Das Passwort für den Migrationsnutzer in der Zieldatenbank.
  6. Migrationsjob erstellen
    Kontinuierlichen Migrationsjob mit aktivierter nativer Replikation erstellen:

    gcloud database-migration migration-jobs create MIGRATION_JOB_ID \
      --region=REGION \
      --type=CONTINUOUS \
      --source=SOURCE_CONN_ID \
      --destination=DEST_CONN_ID \
      --use-postgres-native \
      --postgres-max-additional-subscriptions=10 \
      --databases-filter=DATABASES_LIST \
      --no-async

    Ersetzen Sie Folgendes:

    • MIGRATION_JOB_ID: Ihre Migrationsjob-ID.
    • REGION: Die Region, in der Sie den Migrationsjob speichern möchten.
    • SOURCE_CONN_ID: Die Kennzeichnung des Quellverbindungsprofils.
    • DEST_CONN_ID: Die ID des Zielverbindungsprofils.
    • DATABASES_LIST: Eine durch Kommas getrennte Liste der Datenbanken, die Sie migrieren möchten.
  7. Migrationsjob starten
    Starten Sie den Migrationsjob, um den Replikationsablauf zu beginnen:

    gcloud database-migration migration-jobs start MIGRATION_JOB_ID \
      --region=REGION

    Ersetzen Sie Folgendes:

    • MIGRATION_JOB_ID: Die Kennung des Migrationsjobs.
    • REGION: Die Region, in der sich der Migrationsjob befindet.

Migration abschließen

Wenn Sie sich entscheiden, Ihre Anwendung auf die neue AlloyDB for PostgreSQL-Instanz umzustellen, schließen Sie die Migration mit den folgenden Schritten ab:

  1. Beenden Sie alle Schreibvorgänge in die Quelldatenbank. Sie können sie in den schreibgeschützten Modus versetzen, um die Betriebsfunktionen beizubehalten.
  2. Migrationsjob hochstufen
  3. Optional: Migrierte Daten auf Vollständigkeit prüfen

Nächste Schritte