Sauvegarder automatiquement une base de données avec l’outil pg_dump

INTRODUCTION

 

PostgreSQL est un SGBD libre et gratuit, permettant de stocker vos données. Il stocker les données dans les tables et une table peut contenir plus de 2TO de données. Ayant une grande capacité de stockage, PostgreSQL permet une garantie sur les données par le biais de la sécurité, la sauvegarde et la Restauration des données, …

 

  1. Script de Sauvegarde des données
  • Utilisation de l’outil pg_dump

 

PostgreSQL dispose de plusieurs outils pour faciliter l’administration des bases de données. Les outils pg_dump et pg_dumpall permettent de sauvegarder les données sous un serveur PostgreSQL.

Dans ce projet de sauvegarde des données sur un serveur PostgreSQL distant sous Windows, nous avons pu mettre sur pied à travers des recherches un script qui permet d’effectuer une sauvegarde des données.

Ce script peut s’exécuter par Automatisation ou manuellement. Son contenu est le suivant :

  • Les variables JOUR, MOIS, ANNEE sont des variables qui permettent d’avoir la DATE et les variables HEURE, MINUTE, SECOND permettent d’avoir le TEMPS. Ces variables peuvent respectivement être remplacées par les variables DATE et TIME.
  • A la ligne 10 nous avons le répertoire où sera créé les fichiers de sauvegarde.
  • A la ligne 12 nous avons le fichier de sauvegarde renommer avec la date , l’heure et les minutes permettant de différencier les sauvegardes et d’utiliser la plus récente.
  • La ligne 14 précise simplement que si le répertoire de sauvegarde n’existe pas alors qu’il soit créé.
  • La ligne 16 est la ligne la plus importante, car c’est elle qui effectue la sauvegarde des données de la base de donnée.

Elle contient :

  • pg_dump qui est l’ outil de sauvegarde des données de PostgreSQL
  • –host localhost permet de spécifier l’adresse de la machine serveur
  • –port 5433 permet de spécifier le port de connexion du serveur PostgreSQL sur la machine serveur
  • –username nom_utilisateur permet de spécifier le nom de l’utilisateur ou du rôle se trouvant sur le serveur.
  • –file chemin_du_fichier_de_sauvegarde permet de sauvegarder toutes les données dans le fichier de sauvegarde
  • –verbose permet juste de voir comment le processus de sauvegarde s’exécute
  • Bd_parifoot ici c’est la base de donnée dont la sauvegarde des données doit être effectuée.

 

NB : Il faut insérer le chemin du répertoire C:\Program Files (x86)\PostgreSQL\9.6\bin dans le path de windows.

lors de l’exécution de ce script un mot de passe sera demandé et il faut le saisir pourque la sauvegarde s’effectue.

Mais  dans le cas où s’exécution du script serait automatisé il faudrait configurer le fichier .pgpass  sous linux ou pgpass.conf sous windows qui est un fichier caché àfin que le script s’exécute sans demander de mot de passe. Il se trouve dans le /home/utilisateur sous linux et dans C:\Utilisateur\nom_de_la_machine\AppData\Roaming\postgresql sous windows.

La 1ere ligne de ce fichier est en commentaire expliquant les différents éléments se trouvant à la ligne 2.

L’étoile signifie simplement  n’importe quel base de données.

Ces informations sont celles se trouvant sur la machine serveur distante ou lacal, mais la configuration du fichier pgpass.conf ou .pgpass se fait sur la machine qui exécute le script dont la machine cliente.

Après avoir fait cela la sauvegarde peux s’exécuter soit par Automatisation du script soit Manullement.