Aller au contenu

Sauvegarder

Badlen offre deux façons de récupérer les données d’une instance, et elles ne servent pas à la même chose.

Export JSON pg_dump
Contenu les données d’un seul lecteur, dans un fichier lisible et modifiable toute la base, tous les lecteurs, à l’octet près
Où le restaurer dans n’importe quel Badlen, même plus récent, sur un compte qui existe déjà dans la même version majeure de PostgreSQL, sur un volume vide
Ce qui n’y est pas les clés API, votre second facteur rien
À quoi il sert déplacer vos données, garder une copie que vous pouvez lire reconstruire la machine

Faites les deux. L’export JSON résiste à un changement de schéma ; le dump restaure une instance sans que vous ayez à recréer votre compte.

L’export JSON se fait par chaque lecteur, depuis Réglages → Données. Cette page traite de la copie que fait l’administrateur. Restaurer un export et Recharger un dump expliquent comment remettre chacune en place.

Lancez-la avec l’application arrêtée, pour que rien ne soit écrit pendant le dump :

Fenêtre de terminal
export PGPASSWORD=$(grep -m1 '^POSTGRES_PASSWORD=' .env | cut -d= -f2-)
docker compose stop app
docker run --rm --network badlen_default -e PGPASSWORD postgres:18-alpine \
pg_dump -h db -U badlen -d badlen > badlen-$(date +%F).sql
grep -c 'PostgreSQL database dump complete' badlen-$(date +%F).sql # doit afficher 1
docker compose start app

badlen est le POSTGRES_USER de votre .env, et db le nom du service de base de données sur le réseau de la pile. La dernière ligne est la vérification à garder : un dump interrompu laisse quand même un gros fichier d’apparence normale, et seule la marque de fin vous garantit qu’il est complet.

L’export JSON ne demande qu’un clic : faites-en un avant toute opération qui modifie la structure de vos données, comme une mise à jour, l’import d’une nouvelle banque ou une modification en masse. La copie pg_dump mérite une tâche cron.

Si vous êtes seul à faire tourner cette instance, demandez-vous qui saurait le faire après vous, et nommez cette personne sous Qui appeler dans la lettre à vos proches : une sauvegarde que personne ne sait restaurer n’en est pas une.

Réglages → Données propose une troisième action, entre la remise à zéro de la progression et la suppression du compte : effacer tous les chiffres en gardant le compte. Elle supprime les comptes, les positions, les soldes, les transactions, les catégories, les points d’historique, les clés de fournisseur et le questionnaire investisseur, mais conserve votre adresse e-mail, votre mot de passe, votre second facteur, vos clés API et vos succès : vous restez connecté et pouvez restaurer un fichier aussitôt après.

La fenêtre de confirmation propose le même export complet. Faites-le, car l’effacement supprime une chose qu’on ne peut pas ressaisir : l’historique des cours disparaît avec les titres. Un portefeuille détenu depuis des années perd ainsi des années de cours quotidiens, qu’il faudrait récupérer à raison d’un appel au fournisseur par jour. Un export fait une minute plus tôt les restitue d’un coup.

Tant qu’une copie n’a jamais été restaurée, rien ne prouve qu’elle fonctionne ; Tester une sauvegarde explique comment la vérifier.