Die erweiterte Migration ist eine Lösung zum Migrieren von Daten für große Datenbanken mit weniger Ausfallzeiten. Diese Funktion ist nur für AlloyDB Omni und PostgreSQL verfügbar.
Ein Nutzer mit der Rolle „Project DB Admin“ muss die folgenden Schritte ausführen. Verwenden Sie entweder die GDC Console oder die Distributed Cloud CLI, um Migrationen zu verwalten:
Console
- Wählen Sie im Hauptmenü Database Service aus.
- Klicken Sie auf Migration erstellen.
- Prüfen Sie im Dialogfeld Erste Schritte die Anforderungen für die Quelle und die Verbindung.
- Geben Sie im Dialogfeld Quelldatenbank angeben den Hostnamen oder die IP-Adresse der Quelldatenbank, den Nutzernamen, das Passwort, den Verschlüsselungstyp und das Zertifikat an.
- Geben Sie im Dialogfeld Cluster konfigurieren die Cluster-ID, das Passwort, die Datenbankversion, die CPU, den Arbeitsspeicher und die Speicherkapazität des Zieldatenbankclusters an. Achten Sie darauf, dass Sie genügend Arbeitsspeicher für Ihre größte Tabelle auswählen.
- Klicken Sie auf Erstellen. Die Erstellung des Migrations- und Zieldatenbankclusters kann einige Minuten dauern.
Der Status ändert sich von
Reconciling
inReady
, wenn der Cluster bereit ist. Der Migrationsstatus ändert sich zuUnsynced
, wenn die Migration erfolgreich eingerichtet wurde. Verwenden Sie die folgenden Optionen, um die Migration zu verwalten:- Starten: Dadurch wird die Migration gestartet und der Migrationsstatus ändert sich zu
Running
. - Stoppen: Dadurch wird die Migration beendet und der Migrationsstatus ändert sich in
Stopped
. - Hochstufen: Dadurch wird der Zieldatenbankcluster zu einer eigenständigen Datenbank hochgestuft.
- Löschen: Dadurch werden die Migration und der für diese Migration erstellte Zieldatenbankcluster gelöscht.
- Starten: Dadurch wird die Migration gestartet und der Migrationsstatus ändert sich zu
Rotieren Sie das Passwort des Replikationsnutzers der Quelldatenbank regelmäßig mit den folgenden Schritten:
- Klicken Sie unter Quelldatenbank auf Bearbeiten Bearbeiten.
- Nehmen Sie die Änderungen vor, um das Passwort des Replikationsnutzers zu rotieren.
- Klicken Sie auf Speichern, um die Änderungen zu übernehmen.
Nachdem die Änderung angewendet wurde, verwendet das Migrations-Backend das neue Passwort.
gdcloud
Bevor Sie die Distributed Cloud CLI verwenden, müssen Sie sie installieren und initialisieren. Authentifizieren Sie sich dann bei Ihrer Organisation.
Migration erstellen:
gdcloud database connection-profiles create DB_ENGINE_TYPE SOURCE_CONNECTION_PROFILE \ --username REPLICATION_USERNAME \ --password REPLICATION_PASSWORD \ --ca-certificate CA_CERT_FILE_PATH gdcloud database migrations create MIGRATION_NAME \ --source SOURCE_CONNECTION_PROFILE \ --destination DESTINATION_DBCLUSTER gdcloud database clusters create DESTINATION_DBCLUSTER \ --database-version DB_VERSION \ --admin-password ADMIN_PASSWORD
Ersetzen Sie die folgenden Variablen:
DB_ENGINE_TYPE
: Der Datenbank-Engine-Typ für die Migration. Unterstützte Werte:postgresql
oderalloydbomni
SOURCE_CONNECTION_PROFILE
: der Name des neuen Verbindungsprofils.REPLICATION_USERNAME
: Der Name des Replikationsnutzers der Quelldatenbank.REPLICATION_PASSWORD
: Das Passwort für den Replikationsnutzer der Quelldatenbank.CA_CERT_FILE_PATH
: Der Pfad zum CA-Zertifikat der Quelldatenbank.MIGRATION_NAME
: Der Name der neuen Migration.DESTINATION_DBCLUSTER
: der Name des Zieldatenbankclusters.DB_VERSION
: der Versionsstring für den neuen Cluster. Beispiel:POSTGRESQL_13
.ADMIN_PASSWORD
: Das Administratornutzerpasswort für den neuen Cluster.
So starten Sie eine Migration:
gdcloud database migrations start MIGRATION_NAME
Migration stoppen:
gdcloud database migrations stop MIGRATION_NAME
So stufen Sie eine Migration hoch:
gdcloud database migrations promote MIGRATION_NAME
Vorhandene Verbindungsprofile auflisten:
gdcloud database connection-profiles list DB_ENGINE_TYPE
Vorhandene Migration auflisten:
gdcloud database migrations list --destination DESTINATION_DBCLUSTER
API
Für AlloyDB- oder PostgreSQL-Quelldatenbanken:
Erstellen Sie ein Secret zum Speichern des CA-Zertifikats der Quelldatenbank:
apiVersion: v1
data:
ca.crt: SOURCE_DB_CA_CERT
kind: Secret
metadata:
annotations:
propagation.gdch.gke.io/target-namespace: USER_PROJECT
name: es-crt-EXTERNAL_SERVER_NAME
namespace: USER_PROJECT
type: Opaque
Erstellen Sie ein Secret zum Speichern des Passworts des Migrationsnutzers der Quelldatenbank:
apiVersion: v1
data:
password: SOURCE_DB_USER_PASSWORD
kind: Secret
metadata:
annotations:
propagation.gdch.gke.io/target-namespace: USER_PROJECT
name: es-pw-EXTERNAL_SERVER_NAME
namespace: USER_PROJECT
type: Opaque
So erstellen Sie einen externalserver:
apiVersion: DBENGINE_NAME.dbadmin.gdc.goog/v1
kind: ExternalServer
metadata:
name: EXTERNAL_SERVER_NAME
namespace: USER_PROJECT
spec:
host: SOURCE_DB_HOST
port: 5432
username: SOURCE_DB_USERNAME
password:
name: es-pw-EXTERNAL_SERVER_NAME
namespace: USER_PROJECT
certRef:
name: es-crt-EXTERNAL_SERVER_NAME
namespace: USER_PROJECT
Migration erstellen:
apiVersion: DBENGINE_NAME.dbadmin.gdc.goog/v1
kind: Migration
metadata:
name: MIGRATION_NAME
namespace: USER_PROJECT
spec:
source:
reference:
apiVersion: DBENGINE_NAME.dbadmin.gdc.goog/v1
kind: ExternalServer
name: EXTERNAL_SERVER_NAME
target:
reference:
apiVersion: DBENGINE_NAME.dbadmin.gdc.goog/v1
kind: DBCluster
name: DBCLUSTER_NAME
control: MIGRATION_CONTROL
Ersetzen Sie die folgenden Variablen:
EXTERNAL_SERVER_NAME
: der Name des externen Servers, der die Quelldatenbank darstellt.USER_PROJECT
: Der Name des Nutzerprojekts, in dem der externe Server erstellt wird.DBENGINE_NAME
: der Name der Datenbank-Engine. Dies ist entwederalloydbomni
oderpostgresql
.SOURCE_DB_CA_CERT
: Das CA-Zertifikat der Quelldatenbank.SOURCE_DB_USER_PASSWORD
: Das Passwort des Migrationsnutzers der Quelldatenbank.SOURCE_DB_USERNAME
: Der Migrationsnutzername der Quelldatenbank.SOURCE_DB_HOST
: die Migrationshostadresse der Quelldatenbank.MIGRATION_NAME
: Der Name des Migrationsvorgangs.DBCLUSTER_NAME
: Der Name des Datenbankclusters für das Migrationsziel.MIGRATION_CONTROL
: Die Steuerelemente des Migrationsvorgangs. Der Wert solltestart
oderstop
sein, wenn die Migration erstellt wird. Sie solltepromote
sein, um den Cluster der Migrationszieldatenbank hochzustufen.