petites corrections
This commit is contained in:
parent
0e79f99e1a
commit
e62c81338d
@ -8,6 +8,7 @@ Les utilisateurs interrogés insistent sur leur souhait d'avoir une interface si
|
|||||||
## Principales fonctionnalités
|
## Principales fonctionnalités
|
||||||
|
|
||||||
L'application, intégrée à ScoDoc, fournira:
|
L'application, intégrée à ScoDoc, fournira:
|
||||||
|
|
||||||
- Saisie et gestion des entreprises
|
- Saisie et gestion des entreprises
|
||||||
- Saisie et gestion des offres de stage et d'apprentissage
|
- Saisie et gestion des offres de stage et d'apprentissage
|
||||||
- Envoi des offres aux responsables de formations
|
- Envoi des offres aux responsables de formations
|
||||||
|
@ -1,23 +1,43 @@
|
|||||||
|
|
||||||
|
|
||||||
# Mise en place de sauvegardes des bases de données ScoDoc 9
|
# Mise en place de sauvegardes des bases de données ScoDoc 9
|
||||||
Il est ***vivement recommandé*** de mettre en place une stratégie de sauvegarde permettant de rétablir le service en minimisant les pertes de données à la suite d'un accident majeur mais probable comme: crash de disque dur, bug, vol du serveur, incendie...
|
Il est ***vivement recommandé*** de mettre en place une stratégie de sauvegarde
|
||||||
|
permettant de rétablir le service en minimisant les pertes de données à la suite
|
||||||
|
d'un accident majeur mais probable comme: crash de disque dur, bug, vol du
|
||||||
|
serveur, incendie...
|
||||||
|
|
||||||
Nous recommandons d'agir à deux niveaux:
|
Nous recommandons d'agir à deux niveaux:
|
||||||
|
|
||||||
* sauvegarde des bases de données postgresql: dump des bases dans des fichiers. Le script donné ci-dessous peut se charger de gérer cela.
|
* sauvegarde des bases de données postgresql: dump des bases dans des fichiers.
|
||||||
|
Le script donné ci-dessous peut se charger de gérer cela.
|
||||||
|
|
||||||
* sauvegarde du système complet (et de ses disques durs): la forme dépend de l'environnement (machine virtuelle ou non...). Dans tous les cas, les données doivent être sauvegardées dans une salle (voire un bâtiment) différente de celle abritant le serveur ScoDoc (vols ou incendies). Typiquement, une sauvegarde quotidienne (nocturne) est suffisante.
|
* sauvegarde du système complet (et de ses disques durs): la forme dépend de
|
||||||
|
l'environnement (machine virtuelle ou non...). Dans tous les cas, les données
|
||||||
|
doivent être sauvegardées dans une salle (voire un bâtiment) différente de
|
||||||
|
celle abritant le serveur ScoDoc (vols ou incendies). Typiquement, une
|
||||||
|
sauvegarde quotidienne (nocturne) est suffisante.
|
||||||
|
|
||||||
Notons que ScoDoc sauvegarde de nombreuses informations sous le répertoire `/opt/scodoc-data` (en particulier les photos, les documents archivés et divers réglages): *il est absolument nécessaire de sauvegarder aussi ce répertoire*, en plus des bases de données SQL.
|
Notons que ScoDoc sauvegarde de nombreuses informations sous le répertoire
|
||||||
|
`/opt/scodoc-data` (en particulier les photos, les documents archivés et divers
|
||||||
|
réglages): *il est absolument nécessaire de sauvegarder aussi ce répertoire*, en
|
||||||
|
plus des bases de données SQL.
|
||||||
|
|
||||||
|
|
||||||
### Dump des bases de données
|
## Dump des bases de données
|
||||||
Le script `backup_db9` (fourni dans le répertoire `/opt/scodoc/tools/backups`) peut être utilisé pour effectuer des sauvegardes automatisées des bases de données SQL. Les données sont extraites de la base et écrites sur le disque local du serveur, qui doit bien entendu être sauvegardé par d'autres moyens, comme indiqué ci-dessus.
|
Le script `backup_db9` (fourni dans le répertoire `/opt/scodoc/tools/backups`)
|
||||||
|
peut être utilisé pour effectuer des sauvegardes automatisées des bases de
|
||||||
|
données SQL. Les données sont extraites de la base et écrites sur le disque
|
||||||
|
local du serveur, qui doit bien entendu être sauvegardé par d'autres moyens,
|
||||||
|
comme indiqué ci-dessus.
|
||||||
|
|
||||||
Le script `backup_db9` permet de conserver des sauvegardes de chaque heure durant les 48 (par défaut) dernières heures, des sauvegardes quotidiennes des 40 derniers jours, hebdomadaires des 30 dernières semaines, et mensuelles des 200 derniers mois (tout ceci est paramétrable dans le script `/opt/scodoc/tools/backups/backup_rotation.sh`).
|
Le script `backup_db9` permet de conserver des sauvegardes de chaque heure
|
||||||
|
durant les 48 (par défaut) dernières heures, des sauvegardes quotidiennes des 40
|
||||||
|
derniers jours, hebdomadaires des 30 dernières semaines, et mensuelles des 200
|
||||||
|
derniers mois (tout ceci est paramétrable dans le script
|
||||||
|
`/opt/scodoc/tools/backups/backup_rotation.sh`).
|
||||||
|
|
||||||
Par défaut, les fichiers de sauvegardes sont créés dans le répertoire de l'utilisateur `postgres` (actuellement `/var/lib/postgresql/`).
|
Par défaut, les fichiers de sauvegardes sont créés dans le répertoire de
|
||||||
|
l'utilisateur `postgres` (actuellement `/var/lib/postgresql/`).
|
||||||
|
|
||||||
|
|
||||||
En tant que `root` sur le serveur, faire:
|
En tant que `root` sur le serveur, faire:
|
||||||
@ -34,10 +54,14 @@ et ajouter:
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
### En cas de problème: restaurer la base à partir d'une sauvegarde
|
## En cas de problème: restaurer la base à partir d'une sauvegarde
|
||||||
<img src="/img/alert.png" style="vertical-align: bottom; margin:0 0 0 0;" alt="/!\" /> 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.
|
<img src="/img/alert.png" style="vertical-align: bottom; margin:0 0 0 0;" alt="/!\" /> 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.
|
||||||
|
|
||||||
1. Choisir la sauvegarde à utiliser, en fonction de la date à partir de laquelle on a fait une erreur (eg 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.
|
1. Choisir la sauvegarde à utiliser, en fonction de la date à partir de
|
||||||
|
laquelle on a fait une erreur (eg 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.
|
||||||
|
|
||||||
1. Copier le fichier de sauvegarde choisi et le décomprimer; par exemple:
|
1. Copier le fichier de sauvegarde choisi et le décomprimer; par exemple:
|
||||||
|
|
||||||
@ -54,22 +78,48 @@ et ajouter:
|
|||||||
systemctl stop scodoc9 # arret du serveur
|
systemctl stop scodoc9 # arret du serveur
|
||||||
su postgres
|
su postgres
|
||||||
dropdb SCODOC # <<< votre base production
|
dropdb SCODOC # <<< votre base production
|
||||||
pg_restore -C -d scodoc /tmp/SCODOC_pgdump # <<<
|
pg_restore -C -d scodoc /tmp/XXX # (nom de la BDD en majuscule)
|
||||||
exit # retour a l'utilisateur root
|
exit # retour a l'utilisateur root
|
||||||
systemctl start scodoc # relance ScoDoc
|
systemctl start scodoc9 # relance ScoDoc
|
||||||
```
|
```
|
||||||
|
|
||||||
Attention: s'il y a eu des mise à jour du logiciel entre temps, il peut arriver
|
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 sservice scodoc9,
|
que la base sauvegardée nécessite une migration. Arrêtez le service scodoc9,
|
||||||
puis, en tant qu'utilisateur `scodoc`, lancer les commandes suivantes:
|
puis, en tant qu'utilisateur `scodoc`, lancer les commandes suivantes:
|
||||||
|
|
||||||
cd /opt/scodoc
|
cd /opt/scodoc
|
||||||
source venv/bin/activate
|
source venv/bin/activate
|
||||||
flask db upgrade
|
flask db upgrade
|
||||||
|
|
||||||
puis relancer le service (`systemctl start scodoc` comme root).
|
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.
|
||||||
|
|
||||||
|
Pour créer une sauvegarde complète d'une installation, vous pouvez utiliser le
|
||||||
|
script
|
||||||
|
|
||||||
|
tools/save_scodoc9_data.sh /tmp/sauvegarde-scodoc.tgz
|
||||||
|
|
||||||
|
Ce script va générer une archive (`tar`, format `.tgz`) contenant non seulement
|
||||||
|
la base de données SQL mais aussi tous les fichiers générés par votre ScoDoc:
|
||||||
|
photos, configurations locales, archives, PV de jurys, logos, etc (tout ceci
|
||||||
|
étant stocké sous `/opt/scodoc-data`).
|
||||||
|
|
||||||
|
Attention à l'espace disque: le répertoire destination (`/tmp`dans l'exemple
|
||||||
|
ci-dessus) doit avoir de l'espace (sinon utilisez un autre répertoire dans
|
||||||
|
lequel l'utilisateur `scodoc` puisse écrire, ou montez un autre disque. La
|
||||||
|
commande `df -h`est votre amie).
|
||||||
|
|
||||||
|
Pour restaurer ce type de sauvegarde, sur une autre machine (ou plus tard sur la
|
||||||
|
même), transférer le fichier généré (`/tmp/sauvegarde-scodoc.tgz`) dans
|
||||||
|
l'exemple ci-dessus) et utiliser
|
||||||
|
|
||||||
|
tools/restore_scodoc9_data.sh /tmp/sauvegarde-scodoc.tgz
|
||||||
|
|
||||||
|
(Note: la sauvegarde s'effectue comme utilisateur `scodoc`, en revanche le
|
||||||
|
rechargement doit se faire en tant que `root` car il faut évidemment arrêter et
|
||||||
|
relancer le service).
|
||||||
|
|
||||||
|
|
||||||
|
@ -85,7 +85,7 @@ Les prochaines versions de ScoDoc (*sous réserve !*):
|
|||||||
- ScoDoc 9.0 : publiée le 19 sept. 2021, version complètement remaniée en
|
- ScoDoc 9.0 : publiée le 19 sept. 2021, version complètement remaniée en
|
||||||
Python 3/Flask.
|
Python 3/Flask.
|
||||||
|
|
||||||
- ScoDoc 9.1 : novembre 2021 gestion du bachelor (BUT)
|
- ScoDoc 9.1 : décembre 2021 gestion du bachelor (BUT)
|
||||||
- type de formation BUT
|
- type de formation BUT
|
||||||
- distinction SAE/ressources
|
- distinction SAE/ressources
|
||||||
- poids (coefs) des évaluations, affichage, édition
|
- poids (coefs) des évaluations, affichage, édition
|
||||||
|
Loading…
Reference in New Issue
Block a user