1
0
forked from ScoDoc/ScoDoc

ajout doc et modif config SCODOC_DATABASE_URI

This commit is contained in:
Emmanuel Viennet 2021-09-16 11:46:36 +02:00
parent 085aff657a
commit 30481e4729
2 changed files with 25 additions and 24 deletions

View File

@ -55,7 +55,7 @@ class DevConfig(Config):
DEBUG = True DEBUG = True
TESTING = False TESTING = False
SQLALCHEMY_DATABASE_URI = ( SQLALCHEMY_DATABASE_URI = (
os.environ.get("SCODOC_DEV_DATABASE_URI") or "postgresql:///SCODOC_DEV" os.environ.get("SCODOC_DATABASE_URI") or "postgresql:///SCODOC_DEV"
) )
SECRET_KEY = os.environ.get("DEV_SECRET_KEY") or "bb3faec7d9a34eb68a8e3e710087d87a" SECRET_KEY = os.environ.get("DEV_SECRET_KEY") or "bb3faec7d9a34eb68a8e3e710087d87a"
@ -64,7 +64,7 @@ class TestConfig(DevConfig):
TESTING = True TESTING = True
DEBUG = True DEBUG = True
SQLALCHEMY_DATABASE_URI = ( SQLALCHEMY_DATABASE_URI = (
os.environ.get("SCODOC_TEST_DATABASE_URI") or "postgresql:///SCODOC_TEST" os.environ.get("SCODOC_DATABASE_URI") or "postgresql:///SCODOC_TEST"
) )
SERVER_NAME = os.environ.get("SCODOC_TEST_SERVER_NAME") or "test.gr" SERVER_NAME = os.environ.get("SCODOC_TEST_SERVER_NAME") or "test.gr"
DEPT_TEST = "TEST_" # nom du département, ne pas l'utiliser pour un "vrai" DEPT_TEST = "TEST_" # nom du département, ne pas l'utiliser pour un "vrai"

View File

@ -1,68 +1,69 @@
Notes sur la restauration de la base SQL complete Notes sur la restauration de la base SQL complete (ScoDoc 9)
(dans le cas d'une réinstallation sur une autre machine, par exemple) (dans le cas d'une réinstallation sur une autre machine, par exemple)
1) Sur la machine origine, faire un dump complet: 1) Sur la machine origine, faire un dump complet:
su postgres su postgres
cd /tmp # ou ailleurs... cd /tmp # ou ailleurs...
pg_dumpall > scodoc.dump.txt pg_dumpall | gzip > scodoc.dump.txt.gz
On obtient un fichier texte assez volumineux (on peut utiliser gzip pour le compresser avant transfert). On obtient un fichier texte assez volumineux (comprimé par gzip ci-dessus)
Le copier sur la machine destination. Le copier sur la machine destination, et le décompresser (gunzip).
2) Sur la machine destination: 2) Sur la machine destination:
Avant toute chose, stopper scodoc: Avant toute chose, stopper scodoc:
/etc/init.d/scodoc stop (ou systemctl stop scodoc))
systemctl stop scodoc9
1.1) Supprimer toutes les bases ScoDoc existantes s'il y en a: 1.1) Supprimer toutes les bases ScoDoc existantes s'il y en a:
su postgres su scodoc
psql -l psql -l
liste les bases: celles de ScoDoc sont SCO* liste les bases: celles de ScoDoc sont SCO*
Pour chaque base SCO*, faire dropdb Pour chaque base SCO*, faire dropdb
dropdb SCOUSERS dropdb SCODOC
dropdb SCOGEII dropdb SCODOC_DEV
... ...
Pour les feignants, voici un script (à lancer comme utilisateur postgres): Pour les gens pressés, voici un script (à lancer comme utilisateur postgres):
for f in $(psql -l --no-align --field-separator . | grep SCO | cut -f 1 -d.); do for f in $(psql -l --no-align --field-separator . | grep SCO | cut -f 1 -d.); do
echo dropping $f echo dropping $f
dropdb $f dropdb $f
done done
1.2) Charger le dump (toujours comme utilisateur postgres): 1.2) Charger le dump (toujours comme utilisateur scodoc):
psql -f scodoc.dump.txt postgres psql -f scodoc.dump.txt scodoc
1.3) Recopier les fichiers (photos, config, archives): copier le repertoire complet 1.3) Recopier les fichiers (photos, config, archives): copier le repertoire complet
/opt/scodoc/instance/var /opt/scodoc-data
de la machine origine vers la nouvelle de la machine origine vers la nouvelle
Puis redemarrer ScoDoc: Puis redemarrer ScoDoc:
en tant que root: /etc/init.d/scodoc start (ou systemctl start scodoc) en tant que root: systemctl start scodoc9
NB: si la version des sources a changée, lancer imperativement le script de mise a jour 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: avant de redemarrer scodoc, afin qu'il change si besoin la base de donnees:
(en tant que root): (en tant que root):
cd /opt/scodoc/instance/Products/ScoDoc/config apt-get update &&
./upgrade.sh
---- ----
Cas d'une seule base à copier: (eg un seul département, mais faire Cas d'une seule base à copier (base production ou dev. par exemple)
attention aux utilisateurs definis dans la base SCOUSERS):
En tant qu'utilisateur "postgres": En tant qu'utilisateur "scodoc":
Dump: (script avec commande de creation de la base) Dump: permettant de la recharger en changeant son nom
pg_dump --create SCOINFO > /tmp/scoinfo.dump pg_dump --format=custom --file=/tmp/SCODOC.dump SCODOC
Restore: (si necessaire, utiliser dropdb avant) Restore: (si necessaire, utiliser dropdb avant)
psql -f /tmp/scoinfo.dump postgres createdb SCODOC_IUTV
pg_restore -d SCODOC_IUTV SCODOC.dump
(si on veut garder le même nom de base que l'origine, utiliser --create )
--- --- à revoir
Cas d'un dump via sco_dump_db (assistance): Cas d'un dump via sco_dump_db (assistance):
createdb -E UTF-8 SCOXXX createdb -E UTF-8 SCOXXX
zcat xxx | psql SCOXXX zcat xxx | psql SCOXXX