Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente |
serveurs:installation:db-srv:postgresql-config [2023/11/21 13:11] – [Gestion des logs et des stats] jpmilcent | serveurs:installation:db-srv:postgresql-config [2024/10/23 14:17] (Version actuelle) – [Restaurer localement un dump de la base du serveur] jpmilcent |
---|
* Créer l'utilisateur //geonatatlas// pour //GeoNature// : '' psql -c "CREATE ROLE geonatatlas WITH LOGIN PASSWORD '<mot-de-passe>';"'' | * Créer l'utilisateur //geonatatlas// pour //GeoNature// : '' psql -c "CREATE ROLE geonatatlas WITH LOGIN PASSWORD '<mot-de-passe>';"'' |
* Le script d'installation créés la base de données de //GeoNature Atlas// (au cas ou la commande : ''createdb -E UTF8 -O geonatatlas gnatlas'' ) | * Le script d'installation créés la base de données de //GeoNature Atlas// (au cas ou la commande : ''createdb -E UTF8 -O geonatatlas gnatlas'' ) |
* Créer l'utilisateur //Postgresql// //telegraf// qui peut accéder à la base //postgres// : | * Créer l'utilisateur //Postgresql// //telegraf// : |
* Créer l'utilisateur //telegraf// pour l'accès à la base //postgres// : '' psql -c "CREATE ROLE telegraf WITH LOGIN PASSWORD '<mot-de-passe>';"'' | * Créer l'utilisateur //telegraf// pour l'accès à la base //postgres// : '' psql -c "CREATE ROLE telegraf WITH LOGIN PASSWORD '<mot-de-passe>';"'' |
* Ajouter le droit de connection à la base ''postgres'' avec : ''psql -c "GRANT CONNECT ON DATABASE postgres TO telegraf;"'' | * avec au choix un accès : |
| * à la base //postgres// seulement (mode basique), ajouter le droit de connexion à la base ''postgres'' avec : ''psql -c "GRANT CONNECT ON DATABASE postgres TO telegraf;"'' |
| * à toutes les bases (mode avancé) : |
| * droits de super-utilisateur : ''psql -c "ALTER USER telegraf SUPERUSER CONNECTION LIMIT 3;"'' |
| * création d'une base de données a son nom : ''createdb -E UTF8 -O telegraf telegraf'' |
* Créer, si nécessaire, l'utilisateur //Postgreqsl// //gnreader// qui a des droits d'accès lecture seule. Voir [[serveurs:installation:db-srv:postgresql-ssh-tunnel|la documentation correspondante]]. | * Créer, si nécessaire, l'utilisateur //Postgreqsl// //gnreader// qui a des droits d'accès lecture seule. Voir [[serveurs:installation:db-srv:postgresql-ssh-tunnel|la documentation correspondante]]. |
| |
* Donner les droits d'execution : ''%%chmod +x postgresqltuner.pl%%'' | * Donner les droits d'execution : ''%%chmod +x postgresqltuner.pl%%'' |
* Recharger le shell : ''source ~/.bashrc'' | * Recharger le shell : ''source ~/.bashrc'' |
* Lancer le script (mettre un espace devant la commande pour éviter d'enregistrer le mot de passe dans l'historique) : '' postgresqltuner.pl --host=localhost --database=geonature2db --user=admin --password=<mot-de-passe>'' | * Lancer le script (mettre un espace devant la commande pour éviter d'enregistrer le mot de passe dans l'historique) : ''%% postgresqltuner.pl --host=localhost --database=geonature2db --user=admin --password=<mot-de-passe>%%'' |
* Etudier les consigne du script et modifier le fichier de config si nécessaire : ''vi /etc/postgresql/15/main/conf.d/02_optimize.conf'' | * Etudier les consigne du script et modifier le fichier de config si nécessaire : ''vi /etc/postgresql/15/main/conf.d/02_optimize.conf'' |
| |
* pour l'option ''<nowiki>--jobs</nowiki>'' indiquer seulement 3/4 du nombre de processeurs (sinon une erreur "nombre max de client atteint" peut apparaître). Dans l'exemple, 8 pour 12 CPU. Pour afficher le nombre de processeur de votre machine : ''grep -c ^processor /proc/cpuinfo'' | * pour l'option ''<nowiki>--jobs</nowiki>'' indiquer seulement 3/4 du nombre de processeurs (sinon une erreur "nombre max de client atteint" peut apparaître). Dans l'exemple, 8 pour 12 CPU. Pour afficher le nombre de processeur de votre machine : ''grep -c ^processor /proc/cpuinfo'' |
* Retirer les droits de super-utilisateur à ''geonatadmin'' : <code bash> sudo -u postgres psql -c "ALTER ROLE geonatadmin NOSUPERUSER;" </code> | * Retirer les droits de super-utilisateur à ''geonatadmin'' : <code bash> sudo -u postgres psql -c "ALTER ROLE geonatadmin NOSUPERUSER;" </code> |
* Renommer la base de données après avoir supprimé la base de données de destination. Exemple avec pour base de destination ''gn2_sinp_paca'' : | * Supprimer la base de données de destination. Exemple avec pour base de destination ''gn2_sinp_paca'' : <code bash> sudo -u postgres dropdb --if-exists gn2_sinp_paca </code> |
* <code bash> sudo -u postgres dropdb --if-exists gn2_sinp_paca </code> | * Vous pouvez ensuite soit renommer la base de données ''geonature2db'' soit vous en servir de template et la maintenir en local : |
* <code bash> sudo -u postgres psql -c "ALTER DATABASE geonature2db RENAME TO gn2_sinp_paca;" </code> | * Copier la base : <code bash> sudo -u postgres psql -c "CREATE DATABASE gn2_sinp_paca WITH TEMPLATE geonature2db ;" </code> |
| * Renommer la base : <code bash> sudo -u postgres psql -c "ALTER DATABASE geonature2db RENAME TO gn2_sinp_paca;" </code> |
| * Réattributer la propriété de la base à geonatadmin : <code sql>psql -c "ALTER DATABASE gn2_sinp_paca OWNER TO geonatadmin;"</code> |
===== Mettre à jour Postgresql (Ex. v11 vers v15) ===== | ===== Mettre à jour Postgresql (Ex. v11 vers v15) ===== |
* Sur ''web-srv'', activer la maintenance longue de GeoNature et l'Atlas. | * Sur ''web-srv'', activer la maintenance longue de GeoNature et l'Atlas. |
host gnatlas geonatadmin 10.0.1.10/32 scram-sha-256 | host gnatlas geonatadmin 10.0.1.10/32 scram-sha-256 |
host gnatlas geonatatlas 10.0.1.10/32 scram-sha-256 | host gnatlas geonatatlas 10.0.1.10/32 scram-sha-256 |
host postgres telegraf 172.18.5.0/24 scram-sha-256 | # Si telegraf utilisé avec un accès basique (base postgres uniquement) : |
| #host postgres telegraf 172.18.5.0/24 scram-sha-256 |
| # Si telegraf utilisé avec un accès avancé (toutes les bases) : |
| host all telegraf 172.18.5.0/24 scram-sha-256 |
# GeoNature : access by gnreader (read only) | # GeoNature : access by gnreader (read only) |
host geonature2db gnreader 10.0.1.20/32 scram-sha-256 | host geonature2db gnreader 10.0.1.20/32 scram-sha-256 |