Cloud SQL for PostgreSQL-Zieldatenbank konfigurieren

Übersicht

Der Database Migration Service unterstützt kontinuierliche Migrationen von Quelldatenbanken zu Cloud SQL-Zieldatenbanken.

Zu den unterstützten Zieldatenbanken für Cloud SQL for PostgreSQL gehören folgende Versionen:

  • Cloud SQL for PostgreSQL 12, 13, 14, 15

Cloud SQL for PostgreSQL-Zieldatenbank konfigurieren

Bevor Sie Database Migration Service zum Migrieren von Daten in Ihre Zieldatenbank verwenden können, müssen Sie für die Datenbank folgende Konfigurationsschritte ausführen:

  • Instanz erstellen Wir empfehlen einen Maschinentyp mit mindestens einer Dual-Core-CPU. Wenn Ihr Maschinenname beispielsweise db-custom lautet und Ihre Maschine 2 CPUs und 3.840 MB RAM hat, lautet das Format für den Maschinentypnamen db-custom-2-3840.
  • Wenn Sie über eine öffentliche IP-Adresse eine Verbindung zur Zielinstanz herstellen, verwendet Database Migration Service den Cloud SQL-Auth-Proxy, um eine Verbindung zur Instanz herzustellen. Hierfür ist Folgendes erforderlich:
    • Die Instanz muss eine öffentliche IPv4-Adresse haben.
    • Die öffentliche IP-Adresse muss nicht für externe Adressen zugänglich sein (sie muss also nicht als autorisierte Netzwerkadresse hinzugefügt werden).
  • Wenn Sie die Verbindung zur Zielinstanz über eine private IP-Adresse herstellen, verwendet Database Migration Service Private Service Connect zur Verbindungsherstellung. Weitere Informationen finden Sie unter Private Service Connect für eine Zielinstanz konfigurieren.
  • Erstellen Sie ein Nutzerkonto und eine Datenbank mit demselben Namen in der Instanz. Wenn Sie beispielsweise Database Migration Service verwenden, um Daten in die Datenbank myapp zu migrieren, sollte der Name des Nutzerkontos ebenfalls myapp lauten.

  • Legen Sie die folgenden Berechtigungen für den Nutzer in der Datenbank fest:
    • CREATE SCHEMA
    • CREATE TABLE
    • CREATE DATABASE
    • SELECT
    • INSERT
    • UPDATE
    • DELETE
    • TRUNCATE (für alle Tabellen)
  • (Für Datenbanken mit Fremdschlüsseln oder Triggern) Verwenden Sie die Option REPLICATION mit Ihrem Nutzerkonto für die Migration, um Fremdschlüssel und Trigger zu überspringen. Führen Sie dazu diesen Befehl aus:
        ALTER USER MIGRATION_USER_NAME WITH replication;
        
    Weitere Informationen zur Migration von Fremdschlüsseln und Triggern finden Sie unter Überlegungen zu Fremdschlüsseln und Triggern.

Überlegungen zu Fremdschlüsseln und Triggern

Fremdschlüssel und Trigger in Ihrer Quelldatenbank können zu Problemen mit der Datenintegrität führen oder sogar dazu, dass der Migrationsjob fehlschlägt. Sie können diese Probleme vermeiden, indem Sie Fremdschlüssel und Trigger mit der Option REPLICATION für den Migrationsnutzer überspringen. Alternativ können Sie auch alle Fremdschlüssel und Trigger in der Zieldatenbank löschen und sie nach Abschluss der Migration neu erstellen.

Trigger
Daten, die vom Database Migration Service repliziert werden, enthalten bereits alle Änderungen, die durch Trigger in der Quelldatenbank vorgenommen wurden. Wenn Trigger für das Ziel aktiviert sind, können sie noch einmal ausgelöst und Daten möglicherweise manipuliert werden, was zu Problemen mit der Datenintegrität oder Datenduplizierung führen kann.
Fremdschlüssel
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.