Sauvegardes et restauration
Protégez vos données avec des sauvegardes automatisées. sh0 prend en charge les destinations de stockage local, S3 et Cloudflare R2 avec des politiques de rétention configurables et une restauration en un clic.
Sauvegardes manuelles
Vous pouvez déclencher une sauvegarde à tout moment depuis la page de détail de la base de données. Les sauvegardes manuelles utilisent les mêmes outils de dump spécifiques au moteur que les sauvegardes planifiées.
- Accédez à votre base de données au sein du stack.
- Cliquez sur l'onglet Sauvegardes.
- Cliquez sur Sauvegarder maintenant.
- Sélectionnez une destination de stockage (ou utilisez celle par défaut).
- La sauvegarde s'exécute en arrière-plan -- vous pouvez continuer à travailler.
sh0 utilise l'utilitaire de dump natif de chaque moteur pour garantir des sauvegardes cohérentes :
| Moteur | Outil de sauvegarde | Format |
|---|---|---|
| PostgreSQL | pg_dump | Format personnalisé (.dump) ou SQL |
| MySQL / MariaDB | mysqldump | SQL (.sql.gz) |
| MongoDB | mongodump | Archive BSON (.archive) |
| Redis | Instantané RDB | Fichier RDB (.rdb) |
Sauvegardes planifiées
Configurez des sauvegardes automatisées qui s'exécutent selon un calendrier. sh0 utilise des expressions cron pour une flexibilité maximale.
- Ouvrez l'onglet Sauvegardes de la base de données.
- Cliquez sur Configurer la planification.
- Saisissez une expression cron ou sélectionnez un préréglage (quotidien, toutes les 6 heures, hebdomadaire).
- Choisissez la destination de stockage.
- Définissez une politique de rétention.
- Cliquez sur Enregistrer.
Expressions cron
Les planifications de sauvegarde utilisent la syntaxe cron standard à 5 champs. Voici les schémas courants :
# Every day at 2:00 AM
0 2 * * *
# Every 6 hours
0 */6 * * *
# Every Sunday at midnight
0 0 * * 0
# Every hour
0 * * * *
# Monday to Friday at 3:30 AM
30 3 * * 1-5Destinations de stockage
Les sauvegardes peuvent être stockées localement sur le serveur ou téléversées vers un stockage objet dans le cloud. L'utilisation d'un stockage distant est fortement recommandée pour la reprise après sinistre.
Stockage local
Par défaut, les sauvegardes sont stockées sur le système de fichiers local du serveur. C'est l'option la plus simple mais elle n'offre aucune protection contre les pannes de disque ou la perte du serveur.
/var/lib/sh0/backups/<stack-name>/<database-name>/Stockage compatible S3
sh0 prend en charge tout fournisseur de stockage objet compatible S3, y compris AWS S3, Cloudflare R2, MinIO, Backblaze B2 et DigitalOcean Spaces.
Pour configurer un fournisseur de stockage :
- Allez dans Paramètres → Fournisseurs de stockage.
- Cliquez sur Ajouter un fournisseur.
- Saisissez l'URL du point de terminaison, la clé d'accès, la clé secrète, le nom du bucket et la région.
- Cliquez sur Tester la connexion pour vérifier l'accès.
- Cliquez sur Enregistrer.
https://<account-id>.r2.cloudflarestorage.com.Rétention
Une planification conserve un nombre borné de sauvegardes pour sa source. La valeur que vous réglez est un nombre de sauvegardes à conserver -- pas un nombre de jours. La rétention ne compte que les sauvegardes créées par cette planification : les sauvegardes manuelles ne sont jamais comptées ni supprimées, et lorsqu'une source a plusieurs planifications, chacune ne purge que les siennes. La valeur par défaut est 7, et 0 signifie illimité : aucune suppression automatique.
| Réglage | Description |
|---|---|
| Nombre conservé | Combien de sauvegardes planifiées terminées conserver pour cette source. Ce qui dépasse ce nombre est ce qu'une purge supprimerait. |
| Sauvegardes manuelles | Jamais comptées dans le nombre conservé, et jamais supprimées automatiquement. |
| Valeur inférieure ou égale à 0 | Désactive la purge pour cette planification. |
Restauration à partir d'une sauvegarde
La restauration d'une sauvegarde remplace le contenu actuel de la base de données par les données de la sauvegarde. sh0 gère l'arrêt de la base de données, la restauration des données et le redémarrage du conteneur.
- Ouvrez l'onglet Sauvegardes de la base de données.
- Trouvez la sauvegarde que vous souhaitez restaurer dans la liste de l'historique.
- Cliquez sur le bouton Restaurer à côté de la sauvegarde.
- Confirmez l'opération de restauration dans la boîte de dialogue.
- Attendez que la restauration soit terminée -- la base de données sera temporairement indisponible.
Historique et statut des sauvegardes
Le tableau de l'historique des sauvegardes affiche toutes les sauvegardes d'une base de données, y compris leur statut, taille, durée et emplacement de stockage.
Chaque sauvegarde peut avoir l'un des statuts suivants :
- Terminée -- La sauvegarde s'est terminée avec succès et est disponible pour la restauration.
- En cours -- La sauvegarde est en cours d'exécution.
- Échouée -- La sauvegarde a rencontré une erreur. Cliquez sur l'entrée pour voir le message d'erreur.
- Expirée -- La sauvegarde a été supprimée par la politique de rétention.
Vous pouvez également télécharger les sauvegardes terminées directement depuis le tableau de bord pour un stockage hors ligne ou une migration vers un autre serveur.