Exemple : utilisation de la réplication logique avec des clusters de SQL base de données Aurora Postgre - Amazon Aurora

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Exemple : utilisation de la réplication logique avec des clusters de SQL base de données Aurora Postgre

La procédure suivante explique comment démarrer une réplication logique entre deux clusters de SQL base de données Aurora Postgre. L'éditeur et l'abonné doivent être configurés pour la réplication logique, comme indiqué dans Configuration de la réplication logique pour votre cluster de SQL base de données Aurora Postgre.

Le cluster de SQL base de données Aurora Postgre qui est l'éditeur désigné doit également autoriser l'accès au slot de réplication. Pour ce faire, modifiez le groupe de sécurité associé au cloud public virtuel du SQL cluster de base de données Aurora Postgre (VPC) en fonction du VPC service Amazon. Autorisez l'accès entrant en ajoutant le groupe de sécurité associé à celui de l'abonné VPC au groupe de sécurité de l'éditeur. Pour plus d'informations, consultez la section Contrôler le trafic vers les ressources à l'aide de groupes de sécurité dans le guide de VPC l'utilisateur Amazon.

Une fois ces étapes préliminaires terminées, vous pouvez utiliser SQL les commandes Postgre CREATE PUBLICATION sur l'éditeur et CREATE SUBSCRIPTION sur l'abonné, comme indiqué dans la procédure suivante.

Pour démarrer le processus de réplication logique entre deux clusters de SQL base de données Aurora Postgre

Ces étapes supposent que vos clusters de SQL base de données Aurora Postgre disposent d'une instance d'écriture avec une base de données dans laquelle créer les exemples de tables.

  1. Sur le cluster de base de données Postgre SQL Aurora de l'éditeur

    1. Créez un tableau à l'aide de l'SQLinstruction suivante.

      CREATE TABLE LogicalReplicationTest (a int PRIMARY KEY);
    2. Insérez des données dans la base de données de l'éditeur en utilisant l'SQLinstruction suivante.

      INSERT INTO LogicalReplicationTest VALUES (generate_series(1,10000));
    3. Vérifiez que les données existent dans le tableau à l'aide de l'SQLinstruction suivante.

      SELECT count(*) FROM LogicalReplicationTest;
    4. Créez une publication pour cette table à l'aide de l'instruction CREATE PUBLICATION, comme suit.

      CREATE PUBLICATION testpub FOR TABLE LogicalReplicationTest;
  2. Sur le cluster de SQL base de données Aurora Postgre abonné

    1. Créez la même table LogicalReplicationTest sur l'abonné que celle que vous avez créée sur l'éditeur, comme suit.

      CREATE TABLE LogicalReplicationTest (a int PRIMARY KEY);
    2. Vérifiez que cette table est vide.

      SELECT count(*) FROM LogicalReplicationTest;
    3. Créez un abonnement pour obtenir les modifications de la part de l'éditeur. Vous devez utiliser les informations suivantes concernant le cluster de SQL base de données Aurora Postgre de l'éditeur.

      • host — L'instance de base de données d'écriture du SQL cluster de base de données Aurora Postgre de l'éditeur.

      • port – Port sur lequel l'instance de base de données écoute. La valeur par défaut pour Postgre SQL est 5432.

      • dbname – Nom de la base de données.

      CREATE SUBSCRIPTION testsub CONNECTION 'host=publisher-cluster-writer-endpoint port=5432 dbname=db-name user=user password=password' PUBLICATION testpub;
      Note

      Spécifiez un mot de passe autre que celui indiqué ici, en tant que bonne pratique de sécurité.

      Une fois que l'abonnement est créé, un emplacement de réplication logique est créé chez l'éditeur.

    4. Pour vérifier dans cet exemple que les données initiales sont répliquées sur l'abonné, utilisez l'SQLinstruction suivante sur la base de données des abonnés.

      SELECT count(*) FROM LogicalReplicationTest;

Toute modification ultérieure sur l'éditeur sera répliquée sur l'abonné.

La réplication logique affecte les performances. Nous vous recommandons de désactiver la réplication logique une fois vos tâches de réplication terminées.