TutorielNouveauParcours : Industrialiser les sauvegardes et la reprise

Automatiser la sauvegarde d'une base PostgreSQL vers S3

  • 4,3 sur 5, (3 avis)
  • Intermédiaire
  • 1 h 30 min
  • 400 LC

Par Équipe MonPremierLab

Description

L'équipe data d'une fintech de Douala conserve ses sauvegardes PostgreSQL sur le disque du serveur applicatif. Une panne disque en juillet a coûté deux jours de transactions : la direction exige désormais des sauvegardes quotidiennes, chiffrées, stockées hors du serveur et vérifiables. Dans ce scénario, vous reprenez l'infrastructure là où elle en est : une base PostgreSQL de paiements qui reçoit une nouvelle transaction toutes les deux secondes, et un bucket S3 vide. À vous de construire la chaîne de sauvegarde complète — extraction avec pg_dump, chiffrement, dépôt sur S3, rotation des anciennes copies et alerte en cas d'échec. La sandbox est prête : PostgreSQL, l'AWS CLI et un rôle IAM limité à votre bucket sont déjà en place, et vous ouvrez le terminal directement dans votre navigateur, sans clé SSH. Vous passez la séance sur la logique de sauvegarde, pas sur l'installation des outils. À la fin, vous supprimez volontairement une table et prouvez que votre sauvegarde permet de repartir.

Important
La sauvegarde est prise sur la base de production du scénario, qui reçoit des écritures pendant toute la séance. Une extraction sans option de cohérence produira une archive inutilisable : c'est exactement le piège que l'étape 2 vous demande de désamorcer.
Conseil
Restaurez votre première sauvegarde dans la base paiements_controle avant de la confier à cron. Une erreur de guillemets dans un script planifié ne se voit qu'au premier incident, quand il est trop tard.

Compétences travaillées

  • Produire une sauvegarde cohérente d'une base PostgreSQL en production avec pg_dump
  • Chiffrer une archive avec GnuPG avant qu'elle ne quitte le serveur
  • Déposer et versionner les sauvegardes sur S3 depuis un serveur applicatif
  • Appliquer une politique de rétention avec les règles de cycle de vie S3
  • Planifier la chaîne avec cron et rendre visible un échec silencieux
  • Vérifier une sauvegarde en la restaurant dans une base de contrôle

Technologies utilisées

  • PostgreSQL
  • pg_dump
  • pg_restore
  • Amazon S3
  • AWS CLI
  • GnuPG
  • cron
  • Bash

Prérequis

  • Être à l'aise avec la ligne de commande Linux : se déplacer, lire et éditer un fichier
  • Connaître les bases de SQL (SELECT, CREATE DATABASE)
  • Avoir déjà utilisé l'AWS CLI, même une seule fois
  • postgresql
  • sauvegarde
  • s3
  • automatisation
  • cron
En bref
Domaine
Données et analytique
Niveau
Intermédiaire
Durée estimée
1 h 30 min
Sandbox
3 h, puis suppression automatique
Langues
Français, Anglais
Mis à jour le
16 septembre 2026