DocScoDocTest/docs/MigrationDonneesScoDoc.md

47 lines
2.9 KiB
Markdown

# Migration d'une installation existante de ScoDoc
Marche à suivre pour transférer les données d'un serveur ScoDoc déjà existant vers un autre. Cas d'usage typiques:
* changement de machine physique
* création d'un serveur de développement
* Mise à jour majeure du système d'exploitation (exemple: passage de Debian 9 à Debian 10).
Toutes les données seront copiées: bases SQL, configurations, photos, archives, logs.
## Principe
Au lieu de mettre à jour le système Debian, il est préférable de **réinstaller complètement un nouveau serveur**. En effet, ScoDoc utilise certains composants qui ne sont pas fournis dans les versions adéquates par Debian.
L'expérience montre qu'il est plus rapide de **tout réinstaller** sans se poser de questions. D'ailleurs, la plupart des installations étant sur des serveurs virtualisés, cette méthode est souvent plus simple et évite de toucher au serveur en production. J'insiste : **ne tentez pas de mettre à jour le système Debian de votre ancien serveur**, c'est une perte de temps.
Le principe est donc:
1. Installer un nouveau serveur Linux Debian (à partir de zéro);
2. Y installer ScoDoc ;
3. Copier les données d'un serveur à l'autre (scripts fournis);
4. Tester, puis le cas échéant couper l'ancien serveur et le remplacer par le nouveau.
## Marche à suivre détaillée
### Installation de Debian et ScoDoc
Voir les instructions ici: [GuideInstallDebianDix](GuideInstallDebianDix.md) (ou si votre système est encore en Debian 9: [GuideInstallDebianNeuf](GuideInstallDebianNeuf.md) : mais ce n'est pas conseillé)
### Copie des données d'un serveur à l'autre
Il est important de suivre rigoureusement et pas à pas cette procédure:
1. S'assurer que le serveur de départ est à jour (pour avoir le bon script de sauvegarde!): [voir ici](https://trac.lipn.univ-paris13.fr/projects/scodoc/wiki/MisesAJour)
1. Enregistrer les données sur le serveur d'origine: lancer le script `save_scodoc_data.sh` (en tant qu'utilisateur `root` dans `/opt/scodoc/instance/Products/ScoDoc/config`). Ce script crée une archive (tgz) qui contient toutes les informations: bases de données SQL, données utilisateurs, photos, archives des documents, fichier de configuration.
1. Copier le fichier (`.tgz`) obtenu sur la machine destination (par exemple en utilisant ssh ou une clé USB).
1. Mettre à jour votre installation de destination (`./upgrade.sh`)
1. Sur la machine destination, sur laquelle ScoDoc vient d'être installé, lancer (en tant qu'utilisateur `root` dans `/opt/scodoc/instance/Products/ScoDoc/config`) le script `restore_scodoc_data.sh <nom_fichier_archive>`
1. Mettre à jour votre installation de destination (`./upgrade.sh`) (oui, à nouveau, important pour assurer que les anciennes bases de données sont aussi mises à jour).
1. Relancer ScoDoc (`/etc/init.d/scodoc start`) et tester.