Récemment, j’ai eu un cas ou j’ai du exporter une base de données depuis un serveur distant. Le problème était que le stockage était très limité, et ne permettait pas de contenir la base de données elle-même ainsi que son extraction. Il est possible de faire un dump de la base de données, et de rediriger l’output de la commande à travers la connexion SSH pour stocker les données sur son poste de travail.
Elle n’a pas été testée dans le cas de figure ou le service PostgreSQL tourne sur un serveur hôte Windows (sachant que Windows ne propose pas nativement du SSH).
Marche à suivre pour poste client Linux/UNIX
Sur un poste fonctionnant sous Linux/UNIX, il suffit de se rendre dans le dossier où socker le dump, puis de taper la commande suivante dans un terminal:
ssh -t USER@SERVEUR "pg_dump -Fp -U postgres DATABASE" > DUMP_FILE.sql
Remplacer SERVEUR par l’adresse IP ou le nom du serveur à se connecter.
Remplacer DUMP_FILE.sq par le nom du fichier souhaité qui sera créé, et qui contiendra l’extraction.
Marche à suivre pour poste client Windows
Le fonctionnement est similaire que si l’opération est effectuée depuis un poste en Linux/UNIX. Il faut taper la commande dans une fenêtre Powershell une fois que nous nous sommes rendu dans le dossier souhaité pour la récupération.

