La migration avancée est une solution permettant de migrer les données des bases de données de grande taille avec un temps d'arrêt réduit. Cette fonctionnalité n'est disponible que pour AlloyDB Omni et PostgreSQL.
Un utilisateur disposant du rôle Administrateur de base de données du projet doit effectuer les étapes suivantes. Utilisez la console GDC ou Distributed Cloud CLI pour gérer les migrations :
Console
- Dans le menu principal, sélectionnez Service de base de données.
- Cliquez sur Créer une migration.
- Dans la boîte de dialogue Commencer, vérifiez les exigences concernant la source et la connectivité.
- Dans la boîte de dialogue Spécifiez votre base de données source, indiquez le nom d'hôte ou l'adresse IP de la base de données source, le nom d'utilisateur, le mot de passe, le type de chiffrement et le certificat.
- Dans la boîte de dialogue Configurer votre cluster, spécifiez l'ID du cluster, le mot de passe, la version de la base de données, le processeur, la mémoire et la capacité de stockage du cluster de base de données cible. Assurez-vous de choisir suffisamment de mémoire pour accueillir votre table la plus volumineuse.
- Cliquez sur Créer. La création de la migration et du cluster de base de données cible peut prendre quelques minutes.
L'état passe de
Reconciling
àReady
lorsque le cluster est prêt. L'état de la migration passe àUnsynced
lorsque la migration est configurée avec succès. Utilisez les options suivantes pour gérer votre migration :- Démarrer : lance la migration et définit l'état de la migration sur
Running
. - Arrêter : arrête la migration et définit son état sur
Stopped
. - Promouvoir : cette option permet de promouvoir le cluster de bases de données cibles en base de données autonome.
- Supprimer : cette option supprime la migration et le cluster de base de données cible créés pour cette migration.
- Démarrer : lance la migration et définit l'état de la migration sur
Modifiez régulièrement le mot de passe de l'utilisateur de réplication de la base de données source en procédant comme suit :
- Accédez à Base de données source, puis cliquez sur Modifier Modifier.
- Apportez les modifications nécessaires pour changer le mot de passe de l'utilisateur de réplication.
- Cliquez sur Enregistrer pour appliquer les modifications.
Une fois la modification appliquée, le backend de migration utilise le nouveau mot de passe.
gdcloud
Avant d'utiliser Distributed Cloud CLI, installez-la et initialisez-la. Ensuite, authentifiez-vous auprès de votre organisation.
Créer une migration :
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
Remplacez les variables suivantes :
DB_ENGINE_TYPE
, le type de moteur de base de données pour la migration. Les valeurs autorisées sont :postgresql
oualloydbomni
SOURCE_CONNECTION_PROFILE
: nom du nouveau profil de connexion.REPLICATION_USERNAME
, nom de l'utilisateur de la réplication de la base de données source.REPLICATION_PASSWORD
, mot de passe de l'utilisateur de la réplication de la base de données source.CA_CERT_FILE_PATH
, chemin d'accès au certificat d'autorité de certification de la base de données source.MIGRATION_NAME
: nom de la nouvelle migration.DESTINATION_DBCLUSTER
: nom du cluster de base de données cible.DB_VERSION
: chaîne de version du nouveau cluster. Exemple :POSTGRESQL_13
ADMIN_PASSWORD
, mot de passe de l'utilisateur administrateur pour le nouveau cluster.
Lancer une migration :
gdcloud database migrations start MIGRATION_NAME
Arrêter une migration :
gdcloud database migrations stop MIGRATION_NAME
Promouvoir une migration :
gdcloud database migrations promote MIGRATION_NAME
Répertoriez les profils de connexion existants :
gdcloud database connection-profiles list DB_ENGINE_TYPE
Répertoriez la migration existante :
gdcloud database migrations list --destination DESTINATION_DBCLUSTER
API
Pour les bases de données sources AlloyDB ou PostgreSQL :
Créez un secret pour stocker le certificat CA de la base de données source :
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
Créez un secret pour stocker le mot de passe de l'utilisateur de la migration de la base de données source :
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
Créez un 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
Créez une migration :
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
Remplacez les variables suivantes :
EXTERNAL_SERVER_NAME
: nom du serveur externe représentant la base de données source.USER_PROJECT
: nom du projet utilisateur dans lequel le serveur externe est créé.DBENGINE_NAME
: nom du moteur de base de données. Il s'agit dealloydbomni
oupostgresql
.SOURCE_DB_CA_CERT
: certificat CA de la base de données source.SOURCE_DB_USER_PASSWORD
: mot de passe de l'utilisateur de la migration de la base de données source.SOURCE_DB_USERNAME
: nom d'utilisateur de la migration de la base de données source.SOURCE_DB_HOST
: adresse de l'hôte de migration de la base de données source.MIGRATION_NAME
: nom de l'opération de migration.DBCLUSTER_NAME
: nom du cluster de base de données cible de la migration.MIGRATION_CONTROL
: contrôles de l'opération de migration. Lors de la création de la migration, la valeur doit êtrestart
oustop
. La valeur doit êtrepromote
pour promouvoir le cluster de base de données cible de la migration.