Configurez votre base de données Cloud SQL pour PostgreSQL de destination

Présentation

Database Migration Service permet d'effectuer des migrations continues à partir de bases de données sources vers des bases de données de destination Cloud SQL.

Les bases de données de destination compatibles avec Cloud SQL pour PostgreSQL incluent ces versions :

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

Configurez votre base de données Cloud SQL pour PostgreSQL de destination

Avant de pouvoir utiliser Database Migration Service pour migrer des données vers votre base de données de destination, vous devez configurer la base de données comme suit:

  • Création d'une instance Nous vous recommandons d'utiliser un type de machine avec au moins un CPU double cœur. Par exemple, si le nom de votre machine est db-custom et qu'elle dispose de deux processeurs et de 3 840 Mo de RAM, le nom du type de machine est au format db-custom-2-3840.
  • Si vous vous connectez à l'instance de destination à l'aide d'une adresse IP publique, Database Migration Service utilise le proxy d'authentification Cloud SQL pour se connecter à l'instance. Pour ce faire, vous devez disposer des éléments suivants :
    • L'instance doit disposer d'une adresse IPv4 publique.
    • L'adresse IP publique n'a pas besoin d'être accessible à une adresse externe (inutile de l'ajouter en tant qu'adresse réseau autorisée).
  • Si vous vous connectez à l'instance de destination à l'aide d'une adresse IP privée, Database Migration Service utilise Private Service Connect pour se connecter à l'instance. Pour en savoir plus, consultez Configurer Private Service Connect pour une instance de destination.
  • Créez un compte utilisateur et une base de données dans l'instance en leur attribuant le même nom. Par exemple, si vous utilisez Database Migration Service pour migrer des données vers la base de données myapp, le nom du compte utilisateur doit aussi être myapp.

  • Définissez les autorisations suivantes pour l'utilisateur sur la base de données :
    • CREATE SCHEMA
    • CREATE TABLE
    • CREATE DATABASE
    • SELECT
    • INSERT
    • UPDATE
    • DELETE
    • TRUNCATE (pour toutes les tables)
  • (Pour les bases de données contenant des clés étrangères ou des déclencheurs) Ignorez les clés étrangères et les déclencheurs en utilisant l'option REPLICATION avec votre compte utilisateur de migration. Exécutez la commande suivante :
        ALTER USER MIGRATION_USER_NAME WITH replication;
        
    Pour en savoir plus sur la migration des clés étrangères et des déclencheurs, consultez la section Considérations concernant les clés étrangères et les déclencheurs.

Considérations concernant les clés étrangères et les déclencheurs

Les clés étrangères et les déclencheurs présents dans votre base de données source peuvent entraîner des problèmes d'intégrité des données ou même faire échouer la tâche de migration. Pour éviter ces problèmes, ignorez les clés étrangères et les déclencheurs en utilisant l'option REPLICATION pour l'utilisateur de migration. Vous pouvez également supprimer toutes les clés étrangères et tous les déclencheurs de la base de données de destination, puis les recréer une fois la migration terminée.

Déclencheurs
Les données répliquées par Database Migration Service intègrent déjà toutes les modifications apportées par les déclencheurs dans la base de données source. Si des déclencheurs sont activés sur la destination, ils peuvent se déclencher à nouveau et potentiellement manipuler des données, ce qui peut entraîner des problèmes d'intégrité ou de duplication des données.
Clés étrangères
Database Migration Service ne réplique pas les données de manière transactionnelle. Il est donc possible que les tables soient migrées dans le désordre. Si des clés étrangères sont présentes et qu'une table enfant qui utilise une clé étrangère est migrée avant sa table parente, vous risquez de rencontrer des erreurs de réplication.