Configuration pour le transport d'une base de données PostgreSQL - Amazon Relational Database Service

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.

Configuration pour le transport d'une base de données PostgreSQL

Avant de commencer, vérifiez que vos instances de base de données RDS pour PostgreSQL répondent aux exigences suivantes :

  • Les instances de base de données source et destination doivent exécuter la même version de PostgreSQL.

  • La base de données de destination ne peut pas avoir de base de données portant le même nom que la base de données source que vous souhaitez transporter.

  • Le compte que vous utilisez pour exécuter le transport doit avoir les privilèges rds_superuser sur les bases de données source et de destination.

  • Le groupe de sécurité de l'instance de base de données source doit autoriser l'accès entrant depuis l'instance de base de données de destination. C'est peut-être déjà le cas si vos instances de base de données source et de destination se trouvent dans le VPC. Pour plus d’informations sur les groupes de sécurité, consultez Contrôle d'accès par groupe de sécurité.

Le transport de bases de données d'une instance de base de données source vers une instance de base de données de destination nécessite plusieurs modifications apportées au groupe de paramètres de base de données associé à chaque instance. Cela signifie que vous devez créer un groupe de paramètres de base de données personnalisé pour l'instance de base de données source et créer un groupe de paramètres de base de données personnalisé pour l'instance de base de données de destination.

Note

Si vos instances de base de données sont déjà configurées à l'aide de groupes de paramètres de base de données personnalisés, vous pouvez commencer par l'étape 2 de la procédure suivante.

Pour configurer les paramètres de groupe de base de données personnalisés pour le transport de bases de données

Pour les étapes suivantes, utilisez un compte doté des privilèges rds_superuser.

  1. Si les instances de base de données source et de destination utilisent un groupe de paramètres de base de données par défaut, vous devez créer un groupe de paramètres de base de données personnalisé à l’aide de la version appropriée pour vos instances. Vous pouvez ainsi modifier les valeurs de plusieurs paramètres. Pour plus d’informations, consultez Groupes de paramètres pour Amazon RDS.

  2. Dans le groupe de paramètres de base de données personnalisé, modifiez les valeurs des paramètres suivants :

    • shared_preload_libraries : ajoutez pg_transport à la liste des bibliothèques.

    • pg_transport.num_workers : la valeur par défaut est 3. Augmentez ou réduisez cette valeur au besoin pour votre base de données. Pour une base de données de 200 Go, nous recommandons de ne pas dépasser 8. N'oubliez pas que si vous augmentez la valeur par défaut de ce paramètre, vous devez également augmenter la valeur de max_worker_processes.

    • pg_transport.work_mem : la valeur par défaut est 128 Mo ou 256 Mo, selon la version PostgreSQL. Le paramètre par défaut peut généralement rester inchangé.

    • max_worker_processes : la valeur de ce paramètre doit être définie à l'aide du calcul suivant :

      (3 * pg_transport.num_workers) + 9

      Cette valeur est nécessaire au niveau de la destination pour gérer les divers processus employés en arrière-plan impliqués dans le transport. Pour en savoir plus sur max_worker_processes,, consultez Resource Consumption (Consommation des ressources) dans la documentation de PostgreSQL.

    Pour de plus amples informations sur les paramètres pg_transport, consultez Référence des paramètres des bases de données transportables .

  3. Redémarrez l’instance de base de données source RDS pour PostgreSQL et l’instance de destination pour que les paramètres prennent effet.

  4. Connectez-vous à votre instance de base de données source RDS pour PostgreSQL.

    psql --host=source-instance.111122223333.aws-region.rds.amazonaws.com --port=5432 --username=postgres --password
  5. Supprimez les extensions externes du schéma public de l'instance de base de données. Seule l'extension pg_transport est autorisée pendant l'opération de transport réelle.

  6. Installez l'extension pg_transport comme suit :

    postgres=> CREATE EXTENSION pg_transport; CREATE EXTENSION
  7. Connectez-vous à votre instance de base de données de destination RDS pour PostgreSQL. Supprimez toutes les extensions externes, puis installez l'extension pg_transport.

    postgres=> CREATE EXTENSION pg_transport; CREATE EXTENSION