2020-09-26 16:19:37 +02:00
|
|
|
|
|
|
|
Notes sur la restauration de la base SQL complete
|
|
|
|
(dans le cas d'une réinstallation sur une autre machine, par exemple)
|
|
|
|
|
|
|
|
|
|
|
|
1) Sur la machine origine, faire un dump complet:
|
|
|
|
su postgres
|
|
|
|
cd /tmp # ou ailleurs...
|
|
|
|
pg_dumpall > scodoc.dump.txt
|
|
|
|
|
|
|
|
On obtient un fichier texte assez volumineux (on peut utiliser gzip pour le compresser avant transfert).
|
|
|
|
|
|
|
|
Le copier sur la machine destination.
|
|
|
|
|
|
|
|
2) Sur la machine destination:
|
|
|
|
|
|
|
|
Avant toute chose, stopper scodoc:
|
2020-12-05 17:29:26 +01:00
|
|
|
/etc/init.d/scodoc stop (ou systemctl stop scodoc))
|
2020-09-26 16:19:37 +02:00
|
|
|
|
|
|
|
1.1) Supprimer toutes les bases ScoDoc existantes s'il y en a:
|
|
|
|
su postgres
|
|
|
|
psql -l
|
|
|
|
liste les bases: celles de ScoDoc sont SCO*
|
|
|
|
|
|
|
|
Pour chaque base SCO*, faire dropdb
|
|
|
|
dropdb SCOUSERS
|
|
|
|
dropdb SCOGEII
|
|
|
|
...
|
|
|
|
|
|
|
|
Pour les feignants, voici un script (à lancer comme utilisateur postgres):
|
|
|
|
for f in $(psql -l --no-align --field-separator . | grep SCO | cut -f 1 -d.); do
|
|
|
|
echo dropping $f
|
|
|
|
dropdb $f
|
|
|
|
done
|
|
|
|
|
|
|
|
1.2) Charger le dump (toujours comme utilisateur postgres):
|
|
|
|
psql -f scodoc.dump.txt postgres
|
|
|
|
|
|
|
|
1.3) Recopier les fichiers (photos, config, archives): copier le repertoire complet
|
|
|
|
/opt/scodoc/instance/var
|
|
|
|
de la machine origine vers la nouvelle
|
|
|
|
|
|
|
|
|
|
|
|
Puis redemarrer ScoDoc:
|
2020-12-05 17:29:26 +01:00
|
|
|
en tant que root: /etc/init.d/scodoc start (ou systemctl start scodoc)
|
2020-09-26 16:19:37 +02:00
|
|
|
|
|
|
|
NB: si la version des sources a changée, lancer imperativement le script de mise a jour
|
|
|
|
avant de redemarrer scodoc, afin qu'il change si besoin la base de donnees:
|
|
|
|
(en tant que root):
|
|
|
|
cd /opt/scodoc/instance/Products/ScoDoc/config
|
|
|
|
./upgrade.sh
|
|
|
|
|
|
|
|
|
|
|
|
----
|
|
|
|
Cas d'une seule base à copier: (eg un seul département, mais faire
|
|
|
|
attention aux utilisateurs definis dans la base SCOUSERS):
|
|
|
|
|
|
|
|
En tant qu'utilisateur "postgres":
|
|
|
|
Dump: (script avec commande de creation de la base)
|
|
|
|
pg_dump --create SCOINFO > /tmp/scoinfo.dump
|
|
|
|
|
|
|
|
Restore: (si necessaire, utiliser dropdb avant)
|
|
|
|
psql -f /tmp/scoinfo.dump postgres
|
|
|
|
|
|
|
|
---
|
|
|
|
Cas d'un dump via sco_dump_db (assistance):
|
|
|
|
createdb -E UTF-8 SCOXXX
|
|
|
|
zcat xxx | psql SCOXXX
|
|
|
|
|