Anleitung und Anforderungen für Lab-Einrichtung
Schützen Sie Ihr Konto und Ihren Fortschritt. Verwenden Sie immer den privaten Modus und Lab-Anmeldedaten, um dieses Lab auszuführen.

Mit Database Migration Service zu Cloud SQL for PostgreSQL migrieren

Lab 1 Stunde 10 Minuten universal_currency_alt 1 Guthabenpunkt show_chart Einsteiger
info Dieses Lab kann KI-Tools enthalten, die den Lernprozess unterstützen.
Dieser Inhalt ist noch nicht für Mobilgeräte optimiert.
Die Lernumgebung funktioniert am besten, wenn Sie auf einem Computer über einen per E‑Mail gesendeten Link darauf zugreifen.

GSP918

Logo: Google Cloud-Labs zum selbstbestimmten Lernen

Übersicht

Mit Database Migration Service können Sie Daten anhand von einmaligen und kontinuierlichen Jobs zu Cloud SQL migrieren. Der Dienst bietet verschiedene Verbindungsmethoden, darunter IP-Zulassungslisten, umgekehrte SSH-Tunnel, VPC-Peering und Private Service Connect-Schnittstellen. Weitere Informationen zu Verbindungsoptionen finden Sie im Leitfaden „Verbindungen konfigurieren“.

In diesem Lab wird eine eigenständige PostgreSQL-Datenbank, die auf einer virtuellen Maschine gehostet wird, zu Cloud SQL for PostgreSQL migriert. Dazu kommt ein kontinuierlicher Job aus Database Migration Service zum Einsatz und die Verbindung wird über VPC-Peering hergestellt.

Bei Verwendung von Database Migration Service für die Datenbankmigration sind mehrere vorbereitende Schritte in der Quelldatenbank erforderlich:

  • Dedizierte Nutzerin oder dedizierten Nutzer erstellen: Diese Person muss Replikationsrechte haben.
  • Erweiterung pglogical hinzufügen: Diese Erweiterung muss in der Quelldatenbank installiert werden.
  • Erforderliche Rechte gewähren: Der dedizierten Nutzerin oder dem dedizierten Nutzer müssen Rechte für die Schemas und Tabellen in der zu migrierenden Datenbank und für die Postgres-Datenbank gewährt werden.

Nach Abschluss der Einrichtung erstellen Sie den Migrationsjob und führen ihn aus. Der Migrationsprozess umfasst Folgendes:

  • Erstkopie: Bestätigen, dass die Erstkopie der Datenbank erfolgreich zur Cloud SQL-Instanz übertragen wurde.
  • Kontinuierliche Migration: Prüfen, wie laufende Migrationsjobs Echtzeit-Datenaktualisierungen von der Quelle auf die Cloud SQL-Instanz anwenden.
  • Hochstufung: Job abschließen, indem die Cloud SQL-Instanz zu einer eigenständigen Datenbank hochgestuft wird, die für Lese- und Schreibvorgänge bereit ist.

Aufgaben

  • Sie bereiten die Quelldatenbank für die Migration vor.
  • Sie erstellen ein Profil für eine Quellverbindung zu einer PostgreSQL-Instanz (z. B. einer eigenständigen PostgreSQL-Datenbank).
  • Sie konfigurieren mit VPC-Peering die Verbindung zwischen den Quell- und Zieldatenbankinstanzen.
  • Sie konfigurieren die Firewall- und Datenbankzugriffsregeln, um für die Migration den Zugriff auf die Quelldatenbank zuzulassen.
  • Sie erstellen mithilfe von Database Migration Service einen kontinuierlichen Migrationsjob, führen ihn aus und prüfen das Ergebnis.
  • Sie stufen die Cloud SQL for PostgreSQL-Zielinstanz zu einer eigenständigen Datenbank zum Lesen und Schreiben von Daten hoch.

Einrichtung und Anforderungen

Vor dem Klick auf „Start Lab“ (Lab starten)

Lesen Sie diese Anleitung. Labs sind zeitlich begrenzt und können nicht pausiert werden. Der Timer beginnt zu laufen, wenn Sie auf Lab starten klicken, und zeigt Ihnen, wie lange Google Cloud-Ressourcen für das Lab verfügbar sind.

In diesem praxisorientierten Lab können Sie die Lab-Aktivitäten in einer echten Cloud-Umgebung durchführen – nicht in einer Simulations- oder Demo-Umgebung. Dazu erhalten Sie neue, temporäre Anmeldedaten, mit denen Sie für die Dauer des Labs auf Google Cloud zugreifen können.

Für dieses Lab benötigen Sie Folgendes:

  • Einen Standardbrowser (empfohlen wird Chrome)
Hinweis: Nutzen Sie den privaten oder Inkognitomodus (empfohlen), um dieses Lab durchzuführen. So wird verhindert, dass es zu Konflikten zwischen Ihrem persönlichen Konto und dem Teilnehmerkonto kommt und zusätzliche Gebühren für Ihr persönliches Konto erhoben werden.
  • Zeit für die Durchführung des Labs – denken Sie daran, dass Sie ein begonnenes Lab nicht unterbrechen können.
Hinweis: Verwenden Sie für dieses Lab nur das Teilnehmerkonto. Wenn Sie ein anderes Google Cloud-Konto verwenden, fallen dafür möglicherweise Kosten an.

Lab starten und bei der Google Cloud Console anmelden

  1. Klicken Sie auf Lab starten. Wenn Sie für das Lab bezahlen müssen, wird ein Dialogfeld geöffnet, in dem Sie Ihre Zahlungsmethode auswählen können. Auf der linken Seite befindet sich der Bereich „Details zum Lab“ mit diesen Informationen:

    • Schaltfläche „Google Cloud Console öffnen“
    • Restzeit
    • Temporäre Anmeldedaten für das Lab
    • Ggf. weitere Informationen für dieses Lab
  2. Klicken Sie auf Google Cloud Console öffnen (oder klicken Sie mit der rechten Maustaste und wählen Sie Link in Inkognitofenster öffnen aus, wenn Sie Chrome verwenden).

    Im Lab werden Ressourcen aktiviert. Anschließend wird ein weiterer Tab mit der Seite „Anmelden“ geöffnet.

    Tipp: Ordnen Sie die Tabs nebeneinander in separaten Fenstern an.

    Hinweis: Wird das Dialogfeld Konto auswählen angezeigt, klicken Sie auf Anderes Konto verwenden.
  3. Kopieren Sie bei Bedarf den folgenden Nutzernamen und fügen Sie ihn in das Dialogfeld Anmelden ein.

    {{{user_0.username | "Username"}}}

    Sie finden den Nutzernamen auch im Bereich „Details zum Lab“.

  4. Klicken Sie auf Weiter.

  5. Kopieren Sie das folgende Passwort und fügen Sie es in das Dialogfeld Willkommen ein.

    {{{user_0.password | "Password"}}}

    Sie finden das Passwort auch im Bereich „Details zum Lab“.

  6. Klicken Sie auf Weiter.

    Wichtig: Sie müssen die für das Lab bereitgestellten Anmeldedaten verwenden. Nutzen Sie nicht die Anmeldedaten Ihres Google Cloud-Kontos. Hinweis: Wenn Sie Ihr eigenes Google Cloud-Konto für dieses Lab nutzen, können zusätzliche Kosten anfallen.
  7. Klicken Sie sich durch die nachfolgenden Seiten:

    • Akzeptieren Sie die Nutzungsbedingungen.
    • Fügen Sie keine Wiederherstellungsoptionen oder Zwei-Faktor-Authentifizierung hinzu (da dies nur ein temporäres Konto ist).
    • Melden Sie sich nicht für kostenlose Testversionen an.

Nach wenigen Augenblicken wird die Google Cloud Console in diesem Tab geöffnet.

Hinweis: Wenn Sie auf Google Cloud-Produkte und ‑Dienste zugreifen möchten, klicken Sie auf das Navigationsmenü oder geben Sie den Namen des Produkts oder Dienstes in das Feld Suchen ein. Symbol für das Navigationsmenü und Suchfeld

Cloud Shell aktivieren

Cloud Shell ist eine virtuelle Maschine, auf der Entwicklertools installiert sind. Sie bietet ein Basisverzeichnis mit 5 GB nichtflüchtigem Speicher und läuft auf Google Cloud. Mit Cloud Shell erhalten Sie Befehlszeilenzugriff auf Ihre Google Cloud-Ressourcen.

  1. Klicken Sie oben in der Google Cloud Console auf Cloud Shell aktivieren Symbol für Cloud Shell-Aktivierung.

  2. Klicken Sie sich durch die folgenden Fenster:

    • Fahren Sie mit dem Informationsfenster zu Cloud Shell fort.
    • Autorisieren Sie Cloud Shell, Ihre Anmeldedaten für Google Cloud API-Aufrufe zu verwenden.

Wenn eine Verbindung besteht, sind Sie bereits authentifiziert und das Projekt ist auf Project_ID, eingestellt. Die Ausgabe enthält eine Zeile, in der die Project_ID für diese Sitzung angegeben ist:

Ihr Cloud-Projekt in dieser Sitzung ist festgelegt als {{{project_0.project_id | "PROJECT_ID"}}}

gcloud ist das Befehlszeilentool für Google Cloud. Das Tool ist in Cloud Shell vorinstalliert und unterstützt die Tab-Vervollständigung.

  1. (Optional) Sie können den aktiven Kontonamen mit diesem Befehl auflisten:
gcloud auth list
  1. Klicken Sie auf Autorisieren.

Ausgabe:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} Um das aktive Konto festzulegen, führen Sie diesen Befehl aus: $ gcloud config set account `ACCOUNT`
  1. (Optional) Sie können die Projekt-ID mit diesem Befehl auflisten:
gcloud config list project

Ausgabe:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} Hinweis: Die vollständige Dokumentation für gcloud finden Sie in Google Cloud in der Übersicht zur gcloud CLI.

Prüfen, ob die Database Migration API aktiviert ist

Die Database Migration API ist erforderlich, um die Übertragung von Datenbankdaten über Database Migration Service zu verwalten.

  1. Geben Sie in der Titelleiste der Google Cloud Console Database Migration API in das Suchfeld ein und klicken Sie dann in den Ergebnissen auf Database Migration API.

Der Button Verwalten ist sichtbar, wenn die API aktiviert ist.

  1. Wenn der Button Aktivieren angezeigt wird, klicken Sie darauf, um die API zu aktivieren.

Prüfen, ob die Service Networking API aktiviert ist

Die Service Networking API ist erforderlich, um Cloud SQL so zu konfigurieren, dass VPC-Peering und Verbindungen über eine private IP-Adresse unterstützt werden.

  1. Geben Sie in der Titelleiste der Cloud Console Service Networking API in das Suchfeld ein und klicken Sie dann in den Suchergebnissen auf Service Networking API.

Der Button Verwalten ist sichtbar, wenn die API aktiviert ist.

  1. Wenn der Button Aktivieren angezeigt wird, klicken Sie darauf, um die API zu aktivieren.

Aufgabe 1: Quelldatenbank für die Migration vorbereiten

Zum Vorbereiten der Quelldatenbank für die Migration über Database Migration Service aktualisieren Sie die Datenbank mit der Erweiterung pglogical und erstellen dann den*die Nutzer*in für die Datenbankmigration.

So aktualisieren Sie die Datenbank mit der Erweiterung pglogical:

  • Installieren und konfigurieren Sie die Datenbankerweiterung pglogical.
  • Konfigurieren Sie die eigenständige PostgreSQL-Datenbank so, dass der Zugriff über Cloud Shell und Cloud SQL zugelassen wird.
  • Fügen Sie den Datenbanken postgres, orders und gmemegen_db auf dem eigenständigen Server die Datenbankerweiterung pglogical hinzu.

Erstellen Sie den*die Nutzer*in migration_admin für die Datenbankmigration (mit Replikationsberechtigungen) und gewähren Sie der Person dann die erforderlichen Berechtigungen für Schemas und Beziehungen.

Datenbank mit der pglogical-Erweiterung aktualisieren

In diesem Abschnitt laden Sie die Datenbankerweiterung pglogical herunter und fügen sie den Datenbanken „orders“ und „postgres“ auf der VM-Instanz postgresql-vm hinzu.

  1. Klicken Sie in der Google Cloud Console im Navigationsmenü (Symbol für Navigationsmenü) auf Compute Engine > VM-Instanzen.

  2. Klicken Sie in der VM-Instanz postgresql-vm auf SSH.

  3. Wenn Sie dazu aufgefordert werden, klicken Sie auf Autorisieren.

  4. Installieren Sie im neuen Terminalfenster die Datenbankerweiterung pglogical:

sudo apt install postgresql-14-pglogical Hinweis: pglogical ist ein logisches Replikationssystem, das vollständig als PostgreSQL-Erweiterung implementiert wird. Da es vollständig eingebunden wird, benötigt es weder Trigger noch externe Programme. Diese Alternative zur physischen Replikation ist eine sehr effiziente Methode, um Daten mithilfe eines Publish/Subscribe-Modells für die selektive Replikation zu replizieren.
  1. Laden Sie verschiedene Ergänzungen herunter und wenden Sie diese auf die PostgreSQL-Konfigurationsdateien an, um die Erweiterung pglogical zu aktivieren. Starten Sie danach den postgresql-Dienst neu:
sudo su - postgres -c "gsutil cp gs://spls/gsp918/pg_hba_append.conf ." sudo su - postgres -c "gsutil cp gs://spls/gsp918/postgresql_append.conf ." sudo su - postgres -c "cat pg_hba_append.conf >> /etc/postgresql/14/main/pg_hba.conf" sudo su - postgres -c "cat postgresql_append.conf >> /etc/postgresql/14/main/postgresql.conf" sudo systemctl restart postgresql@14-main

Mit diesen Dateien in pg_hba.conf wird eine Regel hinzugefügt, um Zugriff auf alle Hosts zuzulassen:

#GSP918 - allow access to all hosts host all all 0.0.0.0/0 md5

Die folgenden Befehle in postgresql.conf legen die Mindestkonfiguration für „pglogical“ fest, sodass an allen Adressen auf Ereignisse gewartet wird:

#GSP918 - added configuration for pglogical database extension wal_level = logical # minimal, replica, or logical max_worker_processes = 10 # one per database needed on provider node # one per node needed on subscriber node max_replication_slots = 10 # one per node needed on provider node max_wal_senders = 10 # one per node needed on provider node shared_preload_libraries = 'pglogical' max_wal_size = 1GB min_wal_size = 80MB listen_addresses = '*' # what IP address(es) to listen on, '*' is all

Die obigen Code-Snippets wurden an die relevanten Dateien angehängt und der PostgreSQL-Dienst wurde neu gestartet.

  1. Starten Sie das Tool „psql“:
sudo su - postgres psql
  1. Fügen Sie den Datenbanken postgres, orders und gmemegen_db die Datenbankerweiterung pglogical hinzu:
\c postgres; CREATE EXTENSION pglogical; \c orders; CREATE EXTENSION pglogical; \c gmemegen_db; CREATE EXTENSION pglogical;
  1. Listen Sie die PostgreSQL-Datenbanken auf dem Server auf:
\l

In der Ausgabe unten sind die postgresql-Standarddatenbanken sowie die Datenbanken orders und gmemegen_db aufgeführt, die für dieses Lab bereitgestellt wurden. Die Datenbank gmemegen_db wird in diesem Lab nicht verwendet.

List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges -------------+----------+----------+---------+---------+----------------------- gmemegen_db | postgres | UTF8 | C.UTF-8 | C.UTF-8 | orders | postgres | UTF8 | C.UTF-8 | C.UTF-8 | postgres | postgres | UTF8 | C.UTF-8 | C.UTF-8 | template0 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | C.UTF-8 | C.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres (5 rows)

Nutzer*in für Datenbankmigration erstellen

In diesem Abschnitt erstellen Sie speziell zum Verwalten der Datenbankmigration eine Nutzerin oder einen Nutzer.

  • Geben Sie in „psql“ die folgenden Befehle ein, um eine neue Nutzerin oder einen neuen Nutzer mit der Replikationsrolle zu erstellen:
CREATE USER migration_admin PASSWORD 'DMS_1s_cool!'; ALTER DATABASE orders OWNER TO migration_admin; ALTER ROLE migration_admin WITH REPLICATION;

Dem*Der Migrationsnutzer*in Berechtigungen zuweisen

In diesem Schritt weisen Sie dem*der Nutzer*in migration_admin die erforderlichen Berechtigungen zu, damit Database Migration Service Ihre Datenbank migrieren kann.

  1. Gewähren Sie in „psql“ Berechtigungen für das Schema und die Tabellen von pglogical in der Datenbank postgres:
\c postgres; GRANT USAGE ON SCHEMA pglogical TO migration_admin; GRANT ALL ON SCHEMA pglogical TO migration_admin; GRANT SELECT ON pglogical.tables TO migration_admin; GRANT SELECT ON pglogical.depend TO migration_admin; GRANT SELECT ON pglogical.local_node TO migration_admin; GRANT SELECT ON pglogical.local_sync_status TO migration_admin; GRANT SELECT ON pglogical.node TO migration_admin; GRANT SELECT ON pglogical.node_interface TO migration_admin; GRANT SELECT ON pglogical.queue TO migration_admin; GRANT SELECT ON pglogical.replication_set TO migration_admin; GRANT SELECT ON pglogical.replication_set_seq TO migration_admin; GRANT SELECT ON pglogical.replication_set_table TO migration_admin; GRANT SELECT ON pglogical.sequence_state TO migration_admin; GRANT SELECT ON pglogical.subscription TO migration_admin;
  1. Gewähren Sie Berechtigungen für das Schema und die Tabellen von pglogical in der Datenbank orders:
\c orders; GRANT USAGE ON SCHEMA pglogical TO migration_admin; GRANT ALL ON SCHEMA pglogical TO migration_admin; GRANT SELECT ON pglogical.tables TO migration_admin; GRANT SELECT ON pglogical.depend TO migration_admin; GRANT SELECT ON pglogical.local_node TO migration_admin; GRANT SELECT ON pglogical.local_sync_status TO migration_admin; GRANT SELECT ON pglogical.node TO migration_admin; GRANT SELECT ON pglogical.node_interface TO migration_admin; GRANT SELECT ON pglogical.queue TO migration_admin; GRANT SELECT ON pglogical.replication_set TO migration_admin; GRANT SELECT ON pglogical.replication_set_seq TO migration_admin; GRANT SELECT ON pglogical.replication_set_table TO migration_admin; GRANT SELECT ON pglogical.sequence_state TO migration_admin; GRANT SELECT ON pglogical.subscription TO migration_admin;
  1. Gewähren Sie Berechtigungen für das Schema und die Tabellen von public in der Datenbank orders:
GRANT USAGE ON SCHEMA public TO migration_admin; GRANT ALL ON SCHEMA public TO migration_admin; GRANT SELECT ON public.distribution_centers TO migration_admin; GRANT SELECT ON public.inventory_items TO migration_admin; GRANT SELECT ON public.order_items TO migration_admin; GRANT SELECT ON public.products TO migration_admin; GRANT SELECT ON public.users TO migration_admin;
  1. Gewähren Sie Berechtigungen für das Schema und die Tabellen von pglogical in der Datenbank gmemegen_db:
\c gmemegen_db; GRANT USAGE ON SCHEMA pglogical TO migration_admin; GRANT ALL ON SCHEMA pglogical TO migration_admin; GRANT SELECT ON pglogical.tables TO migration_admin; GRANT SELECT ON pglogical.depend TO migration_admin; GRANT SELECT ON pglogical.local_node TO migration_admin; GRANT SELECT ON pglogical.local_sync_status TO migration_admin; GRANT SELECT ON pglogical.node TO migration_admin; GRANT SELECT ON pglogical.node_interface TO migration_admin; GRANT SELECT ON pglogical.queue TO migration_admin; GRANT SELECT ON pglogical.replication_set TO migration_admin; GRANT SELECT ON pglogical.replication_set_seq TO migration_admin; GRANT SELECT ON pglogical.replication_set_table TO migration_admin; GRANT SELECT ON pglogical.sequence_state TO migration_admin; GRANT SELECT ON pglogical.subscription TO migration_admin;
  1. Gewähren Sie Berechtigungen für das Schema und die Tabellen von public in der Datenbank gmemegen_db:
GRANT USAGE ON SCHEMA public TO migration_admin; GRANT ALL ON SCHEMA public TO migration_admin; GRANT SELECT ON public.meme TO migration_admin;

Die Quelldatenbanken sind jetzt für die Migration bereit. Die Berechtigungen, die Sie dem*der Nutzer*in migration_admin gewährt haben, reichen aus, damit Database Migration Service die Datenbanken postgres, orders und gmemegen_db migrieren kann.

Machen Sie den*die Nutzer*in migration_admin zum Inhaber der Tabellen in der Datenbank orders, damit Sie die Quelldaten später zum Testen der Migration bearbeiten können.

  1. Führen Sie folgende Befehle aus:
\c orders; \dt ALTER TABLE public.distribution_centers OWNER TO migration_admin; ALTER TABLE public.inventory_items OWNER TO migration_admin; ALTER TABLE public.order_items OWNER TO migration_admin; ALTER TABLE public.products OWNER TO migration_admin; ALTER TABLE public.users OWNER TO migration_admin; \dt

Ausgabe

List of relations Schema | Name | Type | Owner --------+----------------------+-------+------- public | distribution_centers | table | migration_admin public | inventory_items | table | migration_admin public | order_items | table | migration_admin public | products | table | migration_admin public | users | table | migration_admin (5 rows)
  1. Beenden Sie „psql“ und die Postgres-Nutzungssitzung:
\q exit

Klicken Sie auf Fortschritt prüfen. PostgreSQL-Quellinstanz für die Migration vorbereiten

Aufgabe 2: Database Migration Service-Verbindungsprofil für eigenständige PostgreSQL-Datenbank erstellen

In dieser Aufgabe erstellen Sie ein Verbindungsprofil für die PostgreSQL-Quellinstanz.

Verbindungsinformationen für die PostgreSQL-Quellinstanz abrufen

In diesem Schritt ermitteln Sie die interne IP-Adresse der Quelldatenbankinstanz, die Sie zu Cloud SQL migrieren.

  1. Klicken Sie in der Google Cloud Console im Navigationsmenü (Symbol für Navigationsmenü) auf Compute Engine > VM-Instanzen.

  2. Suchen Sie in der Instanzliste nach postgresql-vm.

  3. Kopieren Sie die interne IP-Adresse (z. B. 10.128.0.2). Sie verwenden diese im nächsten Abschnitt, um ein Verbindungsprofil zu konfigurieren.

Neues Verbindungsprofil für die PostgreSQL-Quellinstanz erstellen

Ein Verbindungsprofil enthält Informationen über die Quelldatenbankinstanz (z. B. eine eigenständige PostgreSQL-Datenbank) und wird von Database Migration Service verwendet, um Daten aus der Quelle in die Cloud SQL-Zieldatenbankinstanz zu migrieren. Nachdem Sie ein Verbindungsprofil erstellt haben, kann es beliebig oft für Migrationsjobs wiederverwendet werden.

In diesem Schritt erstellen Sie ein neues Verbindungsprofil für die PostgreSQL-Quellinstanz.

  1. Klicken Sie in der Google Cloud Console im Navigationsmenü (Symbol für Navigationsmenü) auf Alle Produkte ansehen. Klicken Sie dann im Bereich Datenbanken auf Datenbankmigration > Verbindungsprofile.

  2. Klicken Sie auf Profil erstellen.

  3. Geben Sie Werte für die folgenden Felder an und übernehmen Sie für alle anderen die Standardwerte:

Feld Wert
Profilrolle Quelle
Datenbankmodul PostgreSQL
Verbindungsprofilname postgres-vm
Region
Verbindungskonfigurationen definieren Definieren
Hostname oder IP-Adresse Die interne IP-Adresse für die PostgreSQL-Quellinstanz, die Sie in der vorherigen Aufgabe kopiert haben (z. B. 10.128.0.2)
Port 5432
Nutzername migration_admin
Passwort DMS_1s_cool!
  1. Klicken Sie auf Speichern.

  2. Klicken Sie auf Erstellen.

In der Liste der Verbindungsprofile wird jetzt ein neues Verbindungsprofil mit dem Namen postgres-vm angezeigt.

Klicken Sie auf Fortschritt prüfen. Verbindungsprofil für die PostgreSQL-Quellinstanz erstellen

Aufgabe 3: Kontinuierlichen Migrationsjob erstellen und starten

Wenn Sie einen neuen Migrationsjob erstellen möchten, müssen Sie zuerst die Quelldatenbankinstanz mithilfe eines vorhandenen Verbindungsprofils angeben. Als Nächstes richten Sie die Zieldatenbankinstanz ein und konfigurieren die erforderliche Verbindung zwischen der Quell- und Zielinstanz.

In dieser Aufgabe verwenden Sie die Oberfläche für Migrationsjobs, um eine neue Cloud SQL for PostgreSQL-Datenbankinstanz zu erstellen und als Ziel des kontinuierlichen Migrationsjobs aus der PostgreSQL-Quellinstanz festzulegen.

Neuen kontinuierlichen Migrationsjob erstellen

In diesem Schritt erstellen Sie einen neuen kontinuierlichen Migrationsjob.

  1. Klicken Sie in der Console im Navigationsmenü (Symbol für Navigationsmenü) auf Alle Produkte ansehen. Klicken Sie im Bereich Datenbanken auf Datenbankmigration > Migrationsjobs.

  2. Klicken Sie auf Migrationsjob erstellen.

  3. Geben Sie Werte für die folgenden Felder an und übernehmen Sie für alle anderen die Standardwerte:

Feld Wert
Name des Migrationsjobs vm-to-cloudsql
Quelldatenbankmodul PostgreSQL
Zieldatenbankmodul Cloud SQL for PostgreSQL
Zielregion
Typ des Migrationsjobs Kontinuierlich
  1. Klicken Sie auf Speichern und fortfahren.

Quellinstanz definieren

In diesem Schritt definieren Sie die Quellinstanz für die Migration.

  1. Wählen Sie für Quellverbindungsprofil die Option postgres-vm aus.

Behalten Sie für die anderen Einstellungen die Standardeinstellungen bei.

  1. Klicken Sie auf Speichern und fortfahren.

Zielinstanz definieren

In diesem Schritt definieren Sie die Zielinstanz für die Migration.

  1. Wählen Sie für Typ der Zielinstanz die Option Vorhandene Instanz aus.

  2. Wählen Sie für Zielinstanz auswählen die Option postgresql-cloudsql aus.

  3. Klicken Sie auf Auswählen und fortfahren.

  4. Wenn Sie zur Bestätigung aufgefordert werden, geben Sie den Instanznamen postgresql-cloudsql ein.

  5. Klicken Sie auf Bestätigen und fortfahren.

Hinweis: Ignorieren Sie den Warnhinweis „Ihre Zielinstanz wird herabgestuft und in ein Replikat für die Quelldatenbank konvertiert“.

Verbindungsmethode definieren

In diesem Schritt definieren Sie die Verbindungsmethode für die Migration.

In der Nachricht steht, dass der Button „Konfigurieren und fortfahren“ aktiviert wird, sobald die Cloud SQL-Zielinstanz erstellt worden ist.

  1. Wählen Sie für Verbindungsmethode die Option VPC-Peering aus.

  2. Wählen Sie für VPC die Option default aus.

Das VPC-Peering wird von Database Migration Service konfiguriert. Dazu nutzt der Dienst die Informationen, die für das VPC-Netzwerk bereitgestellt wurden (in diesem Fall das Netzwerk „default“).

Fahren Sie erst dann mit dem nächsten Schritt fort, wenn eine aktualisierte Nachricht mit der Information angezeigt wird, dass die Zielinstanz erstellt wurde.

In der aktualisierten Nachricht steht, dass die Cloud SQL-Zielinstanz erstellt wurde.

  1. Klicken Sie auf Konfigurieren und fortfahren.

Datenbanken für Migration konfigurieren

In diesem Schritt definieren Sie die Quellinstanz für die Migration.

  1. Wählen Sie für Zu migrierende Datenbanken die Option Alle Datenbanken aus.

  2. Klicken Sie auf Speichern und fortfahren.

Zugriff auf die Instanz „postgresql-vm“ vom automatisch zugewiesenen IP-Bereich aus zulassen

In diesem Schritt bearbeiten Sie die PostgreSQL-Konfigurationsdatei pg_hba.conf so, dass Database Migration Service auf die eigenständige PostgreSQL-Datenbank zugreifen darf.

  1. Rufen Sie den zugewiesenen IP-Adressbereich ab. Klicken Sie in der Console im Navigationsmenü (Symbol für Navigationsmenü) auf VPC-Netzwerk. Klicken Sie dann mit der rechten Maustaste auf VPC-Netzwerk-Peering und öffnen Sie die Seite in einem neuen Tab.

  2. Klicken Sie auf den Eintrag servicenetworking-googleapis-com und dann unten auf Ansicht „Aktive Routen“.

  3. Wählen Sie im Drop-down-Menü Netzwerk die Option default und für Region aus. Klicken Sie auf Ansehen.

  4. Notieren Sie sich in der Spalte Ziel-IP-Bereich den IP-Bereich (z. B. 10.107.176.0/24) neben der Route peering-route-xxxxx.... Sie verwenden diesen in einem der nächsten Schritte.

  5. Bearbeiten Sie in der Terminalsitzung auf der VM-Instanz die Datei pg_hba.conf so:

sudo nano /etc/postgresql/14/main/pg_hba.conf
  1. In der letzten Zeile der Datei tun Sie Folgendes:
#GSP918 - allow access to all hosts host all all 0.0.0.0/0 md5

Ersetzen Sie den Bereich „all IP addresses“ (0.0.0.0/0) durch den Bereich, den Sie im vorherigen Schritt notiert haben.

#GSP918 - allow access to all hosts host all all 10.107.176.0/24 md5 Hinweis: Der obige Schritt ist nicht nötig, damit die Migration klappt. Er stellt aber eine gute Praktik dar, um die Quelldatenbank während des Migrationsprozesses sicherer zu machen und den Zugriff auf diese einzuschränken, sobald die migrierte Datenbank zur Source of Truth geworden ist.
  1. Drücken Sie STRG + O, die Eingabetaste und STRG + X, um die Datei zu speichern und den nano-Editor zu beenden.

  2. Starten Sie den PostgreSQL-Dienst neu, damit die Änderungen wirksam werden. In der Terminalsitzung der VM-Instanz geht es jetzt so weiter:

sudo systemctl start postgresql@14-main

Kontinuierlichen Migrationsjob testen und starten

In diesem Schritt testen und starten Sie den Migrationsjob.

  1. Sehen Sie sich auf dem vorhin geöffneten Tab Database Migration Service die Details des Migrationsjobs an.

  2. Klicken Sie auf Job testen.

  3. Wenn der Test erfolgreich war, klicken Sie auf Job erstellen und starten.

  4. Wenn Sie zur Bestätigung aufgefordert werden, klicken Sie auf Erstellen und starten.

Status des kontinuierlichen Migrationsjobs prüfen

In diesem Schritt bestätigen Sie, dass der kontinuierliche Migrationsjob ausgeführt wird.

  1. Klicken Sie in der Google Cloud Console im Navigationsmenü (Symbol für Navigationsmenü) auf Datenbankmigration > Migrationsjobs.

  2. Klicken Sie auf den Migrationsjob vm-to-cloudsql, um die Detailseite anzusehen.

  3. Prüfen Sie den Status des Migrationsjobs.

    • Wenn Sie den Job noch nicht gestartet haben, lautet der Status Nicht gestartet. Sie können den Job starten oder löschen.
    • Sobald der Job gestartet wurde, lautet der Status Wird gestartet und wechselt dann zu Wird ausgeführt | Vollständiger Dump läuft. Daran können Sie ablesen, dass der erste Datenbank-Dump gerade ausgeführt wird.
    • Wenn der erste Datenbank-Dump abgeschlossen ist, wechselt der Status zu Wird ausgeführt | CDC in Bearbeitung. Daran können ablesen, dass die kontinuierliche Migration aktiv ist.

Wenn der Jobstatus zu Wird ausgeführt | CDC in Bearbeitung wechselt, fahren Sie mit der nächsten Aufgabe fort.

Klicken Sie auf Fortschritt prüfen. Kontinuierlichen Migrationsjob erstellen, starten und prüfen

Aufgabe 4: Daten in Cloud SQL for PostgreSQL bestätigen

PostgreSQL-Datenbanken in Cloud SQL prüfen

  1. Klicken Sie in der Google Cloud Console im Navigationsmenü (Symbol für Navigationsmenü) auf SQL.

  2. Maximieren Sie die Instanz-ID postgresql-cloudsql-master.

  3. Klicken Sie auf die Instanz postgresql-cloudsql (PostgreSQL-Lesereplikat).

  4. Klicken Sie im Menü Replikatinstanz auf Datenbanken.

Sie sehen, dass die Datenbanken namens postgres, orders und gmemegen_db zu Cloud SQL migriert wurden.

Verbindung zur PostgreSQL-Instanz herstellen

  1. Klicken Sie im Menü Replikatinstanz auf Übersicht.

  2. Scrollen Sie nach unten zum Bereich Mit dieser Instanz verbinden und klicken Sie auf Cloud Shell öffnen.

Der Befehl zum Herstellen einer Verbindung zu PostgreSQL wird in Cloud Shell vorab ausgefüllt:

gcloud sql connect postgresql-cloudsql --user=postgres --quiet
  1. Führen Sie den vorab ausgefüllten Befehl aus.

  2. Wenn Sie dazu aufgefordert werden, klicken Sie für die API auf Autorisieren.

  3. Wenn Sie zur Eingabe eines Passworts aufgefordert werden, geben Sie das zuvor festgelegte ein:

supersecret!

Jetzt haben Sie die interaktive PostgreSQL-Konsole für die Zielinstanz aktiviert.

Daten in der Cloud SQL for PostgreSQL-Instanz prüfen

  1. Führen Sie den folgenden Befehl aus, um die Datenbank in der interaktiven PostgreSQL-Konsole auszuwählen:
\c orders;
  1. Wenn Sie zur Eingabe eines Passworts aufgefordert werden, geben Sie Folgendes ein:
supersecret!
  1. Fragen Sie die Tabelle distribution_centers ab:
select * from distribution_centers;

(Ausgabe)

longitude | latitude | name | id -----------+----------+---------------------------------------------+---- -89.9711 | 35.1174 | Memphis TN | 1 -87.6847 | 41.8369 | Chicago IL | 2 -95.3698 | 29.7604 | Houston TX | 3 -118.25 | 34.05 | Los Angeles CA | 4 -90.0667 | 29.95 | New Orleans LA | 5 -73.7834 | 40.634 | Port Authority of New York/New Jersey NY/NJ | 6 -75.1667 | 39.95 | Philadelphia PA | 7 -88.0431 | 30.6944 | Mobile AL | 8 -79.9333 | 32.7833 | Charleston SC | 9 -81.1167 | 32.0167 | Savannah GA | 10
  1. Beenden Sie die interaktive PostgreSQL-Konsole, indem Sie Folgendes eingeben:
\q

Daten der eigenständigen Quelle zum Testen der Migration aktualisieren

  1. Geben Sie in Cloud Shell die folgenden Befehle ein, um eine Verbindung zur PostgreSQL-Quellinstanz herzustellen:
export VM_NAME=postgresql-vm export PROJECT_ID=$(gcloud config list --format 'value(core.project)') export POSTGRESQL_IP=$(gcloud compute instances describe ${VM_NAME} \ --zone={{{ project_0.default_zone|(zone) }}} --format="value(networkInterfaces[0].accessConfigs[0].natIP)") echo $POSTGRESQL_IP psql -h $POSTGRESQL_IP -p 5432 -d orders -U migration_admin Hinweis: Der Befehl oben stellt einen alternativen Ansatz dar, um auf die eigenständige Datenbank auf der VM-Instanz zuzugreifen.
  1. Wenn Sie zur Eingabe eines Passworts aufgefordert werden, geben Sie Folgendes ein:
DMS_1s_cool!
  1. Geben Sie in „psql“ die folgenden Befehle ein:
\c orders; insert into distribution_centers values(-80.1918,25.7617,'Miami FL',11);
  1. Beenden Sie die interaktive psql-Sitzung:
\q

Verbindung zur Cloud SQL PostgreSQL-Datenbank herstellen, um zu prüfen, ob die aktualisierten Daten migriert wurden

  1. Geben Sie in Cloud Shell die folgenden Befehle ein, um eine Verbindung zur Cloud SQL PostgreSQL-Zielinstanz herzustellen:
gcloud sql connect postgresql-cloudsql --user=postgres --quiet
  1. Wenn Sie zur Eingabe eines Passworts aufgefordert werden, geben Sie das zuvor festgelegte Passwort für die Cloud SQL-Instanz ein:
supersecret!

Jetzt haben Sie die interaktive PostgreSQL-Konsole für die Zielinstanz aktiviert.

Daten in Cloud SQL for PostgreSQL-Datenbank prüfen

  1. Wählen Sie in Cloud Shell die aktive Datenbank in der interaktiven PostgreSQL-Konsole aus:
\c orders;
  1. Wenn Sie zur Eingabe eines Passworts aufgefordert werden, geben Sie das zuvor festgelegte ein:
supersecret!
  1. Fragen Sie die Tabelle distribution_centers ab:
select * from distribution_centers;

(Ausgabe)

longitude | latitude | name | id -----------+----------+---------------------------------------------+---- -89.9711 | 35.1174 | Memphis TN | 1 -87.6847 | 41.8369 | Chicago IL | 2 -95.3698 | 29.7604 | Houston TX | 3 -118.25 | 34.05 | Los Angeles CA | 4 -90.0667 | 29.95 | New Orleans LA | 5 -73.7834 | 40.634 | Port Authority of New York/New Jersey NY/NJ | 6 -75.1667 | 39.95 | Philadelphia PA | 7 -88.0431 | 30.6944 | Mobile AL | 8 -79.9333 | 32.7833 | Charleston SC | 9 -81.1167 | 32.0167 | Savannah GA | 10 -80.1918 | 25.7617 | Miami FL | 11

Sie sehen, dass die neue Zeile, die Sie der eigenständigen Datenbank orders hinzugefügt haben, jetzt auch in der migrierten Datenbank zu sehen ist.

  1. Beenden Sie die interaktive PostgreSQL-Konsole:
\q

Klicken Sie auf Fortschritt prüfen. Kontinuierliche Datenmigration von der Quelle zum Ziel testen

Aufgabe 5: Cloud SQL-Instanz zur eigenständigen Instanz zum Lesen und Schreiben von Daten hochstufen

  1. Klicken Sie in der Google Cloud Console im Navigationsmenü (Symbol für Navigationsmenü) auf Alle Produkte ansehen und dann im Bereich Datenbanken auf Datenbankmigration > Migrationsjobs.

  2. Klicken Sie auf den Migrationsjobnamen vm-to-cloudsql, um die Detailseite anzusehen.

  3. Klicken Sie auf Hochstufen.

  4. Wenn Sie zur Bestätigung aufgefordert werden, klicken Sie auf Hochstufen.

Wenn dies erledigt ist, wechselt der Status des Jobs zu Abgeschlossen.

  1. Klicken Sie in der Google Cloud Console im Navigationsmenü (Symbol für Navigationsmenü) auf Alle Produkte ansehen. Klicken Sie im Bereich Datenbanken auf SQL.

Sie sehen, dass postgresql-cloudsql jetzt eine eigenständige Instanz zum Lesen und Schreiben von Daten ist.

Klicken Sie auf Fortschritt prüfen. Cloud SQL for PostgreSQL-Datenbank zur eigenständigen Instanz zum Lesen und Schreiben von Daten hochstufen

Das wars! Sie haben das Lab erfolgreich abgeschlossen.

Sie haben einen kontinuierlichen Database Migration Service-Job konfiguriert, um Datenbanken von einer PostgreSQL-Instanz zu Cloud SQL for PostgreSQL zu migrieren.

Weitere Informationen

Weitere Informationen zur Datenmigration, zu Cloud SQL-Datenbanken und zu Database Migration Service:

Google Cloud-Schulungen und -Zertifizierungen

In unseren Schulungen erfahren Sie alles zum optimalen Einsatz unserer Google Cloud-Technologien und können sich entsprechend zertifizieren lassen. Unsere Kurse vermitteln technische Fähigkeiten und Best Practices, damit Sie möglichst schnell mit Google Cloud loslegen und Ihr Wissen fortlaufend erweitern können. Wir bieten On-Demand-, Präsenz- und virtuelle Schulungen für Anfänger wie Fortgeschrittene an, die Sie individuell in Ihrem eigenen Zeitplan absolvieren können. Mit unseren Zertifizierungen weisen Sie nach, dass Sie Experte im Bereich Google Cloud-Technologien sind.

Anleitung zuletzt am 10. Dezember 2025 aktualisiert

Lab zuletzt am 10. Dezember 2025 getestet

© 2026 Google LLC. Alle Rechte vorbehalten. Google und das Google-Logo sind Marken von Google LLC. Alle anderen Unternehmens- und Produktnamen können Marken der jeweils mit ihnen verbundenen Unternehmen sein.

Vorbereitung

  1. Labs erstellen ein Google Cloud-Projekt und Ressourcen für einen bestimmten Zeitraum
  2. Labs haben ein Zeitlimit und keine Pausenfunktion. Wenn Sie das Lab beenden, müssen Sie von vorne beginnen.
  3. Klicken Sie links oben auf dem Bildschirm auf Lab starten, um zu beginnen

Privates Surfen verwenden

  1. Kopieren Sie den bereitgestellten Nutzernamen und das Passwort für das Lab
  2. Klicken Sie im privaten Modus auf Konsole öffnen

In der Konsole anmelden

  1. Melden Sie sich mit Ihren Lab-Anmeldedaten an. Wenn Sie andere Anmeldedaten verwenden, kann dies zu Fehlern führen oder es fallen Kosten an.
  2. Akzeptieren Sie die Nutzungsbedingungen und überspringen Sie die Seite zur Wiederherstellung der Ressourcen
  3. Klicken Sie erst auf Lab beenden, wenn Sie das Lab abgeschlossen haben oder es neu starten möchten. Andernfalls werden Ihre bisherige Arbeit und das Projekt gelöscht.

Diese Inhalte sind derzeit nicht verfügbar

Bei Verfügbarkeit des Labs benachrichtigen wir Sie per E-Mail

Sehr gut!

Bei Verfügbarkeit kontaktieren wir Sie per E-Mail

Es ist immer nur ein Lab möglich

Bestätigen Sie, dass Sie alle vorhandenen Labs beenden und dieses Lab starten möchten

Privates Surfen für das Lab verwenden

Nutzen Sie den privaten oder Inkognitomodus, um dieses Lab durchzuführen. So wird verhindert, dass es zu Konflikten zwischen Ihrem persönlichen Konto und dem Teilnehmerkonto kommt und zusätzliche Gebühren für Ihr persönliches Konto erhoben werden.