diff --git a/docs/SauvegardesBases.md b/docs/SauvegardesBases.md index 883ba68..4b8af2c 100644 --- a/docs/SauvegardesBases.md +++ b/docs/SauvegardesBases.md @@ -55,10 +55,17 @@ et ajouter: ## En cas de problème: restaurer la base à partir d'une sauvegarde -/!\ Attention, certaines informations sont stockées dans des fichiers et non dans la base de données: configuration du logiciel, photos des étudiants. Ce paragraphe ne traite que de la restauration à de la base de données. + Attention, certaines informations sont stockées dans des fichiers +et non dans la base de données: configuration du logiciel, photos des étudiants. +Ce paragraphe ne traite que de la restauration de la base de données. + +Rappel: en ScoDoc 9, il n'y a qu'une seule base de donnée SQL, nommée par défaut +`SCODOC`. Cette base contient les données des départements et la définition des +comptes utilisateurs. 1. Choisir la sauvegarde à utiliser, en fonction de la date à partir de - laquelle on a fait une erreur (eg suppression non intentionnelle d'un + laquelle on a fait une erreur (par ex. suppression non intentionnelle d'un semestre...). Le fichier se trouve sous `/var/lib/postgresql/SCODOC-BACKUPS`où `XXX` est concerné. Utiliser par exemple `ls -lrt` pour visualiser les sauvegardes triées par date. @@ -76,24 +83,18 @@ et ajouter: ``` # en tant que root... systemctl stop scodoc9 # arret du serveur -su postgres -dropdb SCODOC # <<< votre base production -pg_restore -C -d scodoc /tmp/XXX # (nom de la BDD en majuscule) +su - scodoc +dropdb SCODOC # <<< votre base production +createdb -E UTF-8 SCODOC +pg_restore -d SCODOC /tmp/SCODOC_pgdump.gz # (nom du fichier dump) +source venv/bin/activate +flask db upgrade # nécessaire seulement si sauvegarde ancienne +flask clear-cache + exit # retour a l'utilisateur root systemctl start scodoc9 # relance ScoDoc ``` -Attention: s'il y a eu des mise à jour du logiciel entre temps, il peut arriver -que la base sauvegardée nécessite une migration. Arrêtez le service scodoc9, -puis, en tant qu'utilisateur `scodoc`, lancer les commandes suivantes: - - cd /opt/scodoc - source venv/bin/activate - flask db upgrade - -puis relancer le service (`systemctl start scodoc9` comme root). - - ## Déplacement de toute une installation Les scripts ci-dessus ne se chargent que de la base de données SQL.