Passer au contenu principal
Ce guide fournit des instructions détaillées pour migrer votre base de données PostgreSQL vers ClickHouse Managed Postgres à l’aide des utilitaires pg_dump et pg_restore.

Prérequis

  • Accès à votre base de données PostgreSQL source.
  • pg_dump et pg_restore installés sur votre machine locale. Ils sont généralement fournis avec PostgreSQL. Dans le cas contraire, vous pouvez les télécharger depuis le site officiel de PostgreSQL.

La mise en place

Pour suivre les étapes, prenons comme base de données source un exemple de base de données RDS Postgres. Quelque chose comme ceci : Voici ce que nous avons :
  • Deux tables : events et users. events contient un million de lignes, et users en contient mille.
  • events a un index.
  • Une vue définie sur la table events.
  • Deux séquences

Créer un dump de la base de données source

Utilisons maintenant pg_dump pour générer un fichier de dump des objets ci-dessus. C’est une commande simple :
pg_dump \
  -d 'postgresql://<user>:<password>@<host>:<port>/<database>' \
  --format directory \
  -f rds-dump
Ici :
  • Remplacez <user>, <password>, <host>, <port> et <database> par les identifiants de connexion de votre base de données source. La plupart des fournisseurs Postgres vous fournissent une chaîne de connexion que vous pouvez utiliser directement.
  • --format directory indique que nous voulons un dump au format répertoire, ce qui convient à pg_restore.
  • -f rds-dump indique le répertoire de sortie des fichiers du dump. Notez que ce répertoire sera créé automatiquement et ne doit pas exister au préalable.
  • Vous pouvez également paralléliser le processus de dump en ajoutant l’option --jobs, suivie du nombre de tâches parallèles que vous souhaitez exécuter. Pour plus de détails, consultez la documentation de pg_dump.
Vous pouvez tester ce processus une première fois pour vous faire une idée du temps nécessaire et de la taille du dump.
Voici à quoi ressemble l’exécution de cette commande :

Migrer le dump vers ClickHouse Managed Postgres

Maintenant que nous disposons du fichier dump, nous pouvons le restaurer sur notre instance ClickHouse Managed Postgres à l’aide de pg_restore.

Créez une instance Managed Postgres

Commencez par vérifier que vous disposez d’une instance Managed Postgres configurée, de préférence dans la même région que la source. Vous pouvez suivre le guide de démarrage rapide ici. Voici ce que nous allons provisionner dans ce guide :

Restaurer le dump

Maintenant, de retour sur notre machine locale, nous pouvons utiliser la commande pg_restore pour restaurer le dump dans notre instance Managed Postgres :
pg_restore \
  -d 'postgresql://<user>:<password>@<pg_clickhouse_host>:5432/<database>' \
  --verbose \
  rds-dump
Vous pouvez obtenir la chaîne de connexion de votre instance Managed Postgres depuis la console ClickHouse Cloud, comme expliqué très simplement ici. Là encore, il y a quelques options à noter :
  • --verbose affiche une sortie détaillée pendant le processus de restauration.
  • Vous pouvez également utiliser l’option --jobs ici pour paralléliser le processus de restauration. Pour plus de détails, consultez la documentation pg_restore.
Dans notre cas, cela ressemble à ceci :

Vérifier la migration

Une fois la restauration terminée, vous pouvez vous connecter à votre instance Managed Postgres et vérifier que toutes vos données et tous vos objets ont bien été migrés. Vous pouvez utiliser n’importe quel client PostgreSQL pour vous connecter et exécuter des requêtes. Voici à quoi ressemble notre configuration Managed Postgres après la migration : Nous voyons que toutes nos tables, tous nos index, toutes nos vues et toutes nos séquences sont bien présents, et que les volumes de données correspondent.

Points à prendre en compte

  • Assurez-vous que les versions de PostgreSQL des bases de données source et cible sont compatibles. L’utilisation d’une version de pg_dump plus ancienne que le serveur source peut entraîner l’absence de certaines fonctionnalités ou des problèmes de restauration. Idéalement, utilisez une version majeure de pg_dump identique à celle de la base de données source, ou plus récente.
  • Les bases de données volumineuses peuvent prendre beaucoup de temps à exporter et à restaurer. Anticipez-le afin de réduire au minimum le temps d’arrêt, et envisagez d’utiliser des exports/restaurations parallèles (--jobs) lorsque cette option est prise en charge.
  • Notez que pg_dump / pg_restore ne répliquent pas tous les objets liés à la base de données ni l’intégralité de l’état d’exécution. Cela inclut les rôles et les appartenances à des rôles, les slots de réplication, la configuration au niveau du serveur (par ex. postgresql.conf, pg_hba.conf), les tablespaces et les statistiques d’exécution.

Prochaines étapes

Félicitations ! Vous avez migré avec succès votre base de données PostgreSQL vers ClickHouse Managed Postgres à l’aide de pg_dump et pg_restore. Vous êtes maintenant prêt à découvrir les fonctionnalités de Managed Postgres et son intégration avec ClickHouse. Voici un guide de démarrage rapide de 10 minutes pour bien démarrer :
Dernière modification le 29 juin 2026