Dupliquer une base
Comment créer un site de formation copie conforme du site de production
Niveau : expert
Vous pourriez être tenté de créer un site de formation qui est une copie conforme de votre site de production. Le souci est qu’une duplication seule de la base ne suffira pas : en effet, CapInfo permet un paramétrage étendu, et gère simultanément le nom de domaine et le répertoire de stockage de la base.
Comment faire
Arrêter tomcat
# <répertoire de Tomcat>/shutdown.sh
# killall java
Faire un dump de la base que vous souhaitez dupliquer et de la base destination s’il y en a déjà une
# <répertoire de la webapps de CapInfo>/bin/serveurBD/sauvegardeDB.sh <base source> /tmp/<base source>.dmp
# <répertoire de la webapps de CapInfo>/bin/serveurBD/sauvegardeDB.sh <base destination> /tmp/<base destination>.dmp
Supprimer la base destination si nécessaire
# su - postgres
# dropdb <base destination>
Renommer la base source
# psql template1
# ALTER DATABASE "<base source>" RENAME TO "<base destination>";
# \q
# exit
Recharger la base source
# <répertoire de la webapps de CapInfo>/bin/serveurBD/restaureDB.sh <base source> /tmp/<base source>.dmp
Changer le nom du répertoire des assets dans la base cible
# su - postgres
# psql <base cible>
# select * from cat_categories;
noter l’id du répertoire initial de création du site, généralement l’un des premiers enregistrements.
# update cat_categories set name=’<nouveau répertoire>’ where category_id=<id noté>;
# \q
# exit
Modifier le Nom de Domaine dans la base cible
# cp /wct95/conf/virtualhost.conf /wct95/conf/virtualhost.conf_bak[
# ./sitemanager-express.sh modifyhostname <base cible> <id noté> <ancien nom de domaine> <nouveau nom de domaine>
# cp /wct95/conf/virtualhost.conf_bak /wct95/conf/virtualhost.conf
Relancer Tomcat
# <répertoire de Tomcat>/catalina.sh start
