Prochaine révision | Révision précédente |
serveurs:installation:db-srv:geonature-db [2020/02/13 14:39] – créée jpmilcent | serveurs:installation:db-srv:geonature-db [2021/04/14 08:06] (Version actuelle) – [Installer GeoNature DB] jpmilcent |
---|
====== Installer GeoNature DB ====== | ====== Installer GeoNature DB ====== |
* **Préalable** : il est nécessaire d'avoir installé GeoNature sur le serveur Frontend et copié l'installation de GeoNature sur le serveur DB. | * **Préalable** : il est nécessaire d'avoir installé //GeoNature// sur le serveur //web-srv// et copié l'installation de //GeoNature// sur le serveur //db-srv//. |
* Se placer dans le dossier //install/// : ''cd /home/geonat/www/geonature/install/'' | * Se placer dans le dossier //install/// : ''cd /home/geonat/www/geonature/install/'' |
* Lancer le script d'installation de la base de données : ''./install_db.sh'' | * Lancer le script d'installation de la base de données : ''./install_db.sh'' |
| * Si le script indique que la base de données existe déjà et que vous souhaitez l'installer ou la réinitialiser : |
| * **ATTENTION** : cette manipulation efface tout le contenu de la base ! |
| * Éditer le fichier //settings.ini// avec : ''vi ../config/settings.ini'' |
| * Modifier le paramètre suivant : '' drop_apps_db=true '' |
| * Relancer le script d'installation de la base de données |
| * **ATTENTION** : une fois terminé, passer à nouveau le paramètre ''drop_apps_db'' du fichier //settings.ini// à ''false''. |
| |
| ===== Installer le schéma du module "OccTax" ===== |
| * **Notes** : c'est la commande //geonature// qui lance l'installation des modules du cœur de GeoNature. Or, cette commande est lancée par le script //install_app.sh// qui est lancé côté instance //web-srv//. Nous devons donc installer manuellement le schéma du module côté instance //db-srv//. |
| * Se connecter à l'instance //db-srv// en tant que //geonat// : ''ssh geonat@db-<region>-sinp'' |
| * Se placer dans le dossier du module : ''cd ~/www/geonature/contrib/occtax/'' |
| * Lancer l'installation du schéma du module : ''./install_db.sh'' |
| |
| ===== Erreurs ===== |
| === (psycopg2.errors.DatetimeFieldOverflow) date/time field value out of range: "19/02/2020 00:00:00" === |
| * **Problème** : saisie d'observation dans OccTax ne fonctionne pas. |
| * **Origine** : cela provient d'une commande de modification du fichier ///etc/postgresql/*/main/postgresql.conf// présente dans le script //install_all.sh// de GeoNature avant la version //2.3.1// (au delà, la commande a été transférée dans le script //install_db.sh//). Notre installation n'utilisant pas ce script n'a pas la modification correspondante. |
| * **Solution** : |
| * Se connecter sur l'instance //db-srv// : ''ssh admin@db-<region>-sinp'' |
| * Éditer le fichier suivant : ''vi /etc/postgresql/11/main/postgresql.conf'' |
| * Modifier la propriété //datestyle// comme suit : <code ini>datestyle = 'iso, dmy'</code> |
| * Redémarrer le service : ''systemctl restart postgresql'' |
| * Redémarrer vos sessions de connexion à la base de données |
| * Vérifier la prise en compte du changement avec la requête SQL : <code sql>SHOW datestyle;</code> |
| |
| === sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) terminating connection due to administrator command === |
| * **Message erreur côté navigateur** : <code>Blocage d’une requête multiorigines (Cross-Origin Request) ... sur https://taxhub.silene.eu/api/.... Raison : l’en-tête CORS « Access-Control-Allow-Origin » est manquant.</code> |
| * **Problème** : impossible de faire apparaître la liste des taxons d'autocomplétion dans OccTax. |
| * **Origine** : lorsqu'on redémarre //Postgresql// alors que //Taxhub// est entrain d’exécuter une requête, le driver Python psycopg2 remonte une erreur. |
| * **Solution** : redémarre le service //Taxhub// avec la commande ''supervisorctl restart taxhub''. De manière générale, redémarrer les services de //GeoNature// après un redémarrage de //Postgresql// est une bonne pratique. |