Outils pour utilisateurs

Outils du site


linux:postgresql (lu 84912 fois)

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
linux:postgresql [31-01-2019 16:16]
edmc73 [postgis]
linux:postgresql [23-03-2023 14:57] (Version actuelle)
edmc73 [Taille]
Ligne 49: Ligne 49:
 0.0.0.0/0 correspond à toutes les ip possibles 0.0.0.0/0 correspond à toutes les ip possibles
  
 +==== Le type d'authentification ====
  
-Redémarrez le serveur postgresql +  * https://docs.postgresql.fr/10/client-authentication.html#auth-pg-hba-conf
-  service postgresql restart+
  
 +Indique la méthode d'authentification à utiliser lors d'une connexion via cet enregistrement. Les choix possibles sont résumés ici ; les détails se trouvent dans la Section 20.2, « Méthodes d'authentification ».
 +
 +=== trust ===
 +Autorise la connexion sans condition. Cette méthode permet à quiconque peut se connecter au serveur de bases de données de s'enregistrer sous n'importe quel utilisateur PostgreSQL™ de son choix sans mot de passe ou autre authentification. Voir la Section 20.3.1, « Authentification trust » pour les détails.
 +
 +=== reject ===
 +Rejette la connexion sans condition. Ce cas est utile pour « filtrer » certains hôtes d'un groupe, par exemple une ligne reject peut bloquer la connexion d'un hôte spécifique alors qu'une ligne plus bas permettra aux autres hôtes de se connecter à partir d'un réseau spécifique.
 +
 +=== scram-sha-256 ===
 +Réalise une authentification SCRAM-SHA-256 afin de vérifier le mot de passe utilisateur. Voir Section 20.3.2, « Authentification par mot de passe » pour les détails.
 +
 +=== md5 ===
 +Réalise une authentification SCRAM-SHA-256 ou MD5 afin de vérifier le mot de passe utilisateur. Voir Section 20.3.2, « Authentification par mot de passe » pour les détails.
 +
 +=== password ===
 +Requiert que le client fournisse un mot de passe non chiffré pour l'authentification. Comme le mot de passe est envoyé en clair sur le réseau, ceci ne doit pas être utilisé sur des réseaux non dignes de confiance. Voir la Section 20.3.2, « Authentification par mot de passe » pour les détails.
 +
 +=== gss ===
 +Utilise GSSAPI pour authentifier l'utilisateur. Disponible uniquement pour les connexions TCP/IP. Voir Section 20.3.3, « Authentification GSSAPI » pour les détails.
 +
 +=== sspi ===
 +Utilise SSPI pour authentifier l'utilisateur. Disponible uniquement sur Windows. Voir Section 20.3.4, « Authentification SSPI » pour plus de détails.
 +
 +=== ident ===
 +Récupère le nom de l'utilisateur en contactant le serveur d'identification sur le poste client, et vérifie que cela correspond au nom d'utilisateur de base de données demandé. L'authentification Ident ne peut être utilisée que pour les connexions TCP/IP. Pour les connexions locales, elle sera remplacée par l'authentification peer.
 +
 +=== peer ===
 +Récupère le nom d'utilisateur identifié par le système d'exploitation du client et vérifie que cela correspond au nom d'utilisateur de base de données demandé. Peer ne peut être utilisée que pour les connexions locales. Voir la Section 20.3.6, « Peer Authentication » ci-dessous pour les details.
 +
 +=== ldap ===
 +Authentification par un serveur LDAP. Voir la Section 20.3.7, « Authentification LDAP » pour les détails.
 +
 +=== radius ===
 +Authentification par un serveur RADIUS. Voir Section 20.3.8, « Authentification RADIUS » pour les détails.
 +
 +=== cert ===
 +Authentification par certificat client SSL. Voir Section 20.3.9, « Authentification de certificat » pour les détails.
 +
 +=== pam ===
 +Authentification par les Pluggable Authentification Modules (PAM) fournis par le système d'exploitation. Voir la Section 20.3.10, « Authentification PAM » pour les détails.
 +
 +=== bsd ===
 +Authentification utilisant le service BSD Authentication fourni par le système d'exploitation. Voir Section 20.3.11, « Authentification BSD » pour plus de détails.
 +
 +
 +Redémarrez ou rechargez le serveur postgresql
 +  service postgresql restart
 +ou
 +  systemctl reload postgresql-9.6.service
 ==== utilisateur, bdd ==== ==== utilisateur, bdd ====
  
Ligne 79: Ligne 128:
 Se connecter en utilisant TCP/IP (psql utilise par défaut un socket UNIX). Se connecter en utilisant TCP/IP (psql utilise par défaut un socket UNIX).
  
-  $ psql -h localhost -p 5432 nom_de_la_bd+  $ psql -h localhost -p 5432 -U rickastley -W nom_de_la_bd
  
 Demander à psql de nous demander le mot de masse: Demander à psql de nous demander le mot de masse:
  
-  $ psql -W nom_de_la_bd+  $ psql -U rickastley -W nom_de_la_bd
   Password:   Password:
  
Ligne 105: Ligne 154:
  
 ===== Taille ===== ===== Taille =====
 +
 +Connaître la taille de toutes les bases et trier par la plus grosse.
 +<code sql>
 +SELECT pg_database.datname, 
 +pg_size_pretty(pg_database_size(pg_database.datname)) AS size , pg_database_size(pg_database.datname) as octets
 +FROM pg_database order by octets desc;
 +</code>
  
 Connaître la taille d'une base Connaître la taille d'une base
Ligne 278: Ligne 334:
  
 Se connecter au serveur Se connecter au serveur
 +  su postgres
 +  psql
 +ou
   psql postgres   psql postgres
  
 Puis lancer la requête Puis lancer la requête
-<code sql>SELECT datname,usename,procpid,client_addr,waiting,query_start,current_query FROM pg_stat_activity;</code>+<code sql> 
 +Version 9.1 
 +SELECT datname,usename,application_name,procpid,client_addr,waiting,query_start,current_query FROM pg_stat_activity;</code> 
 + 
 +<code sql> 
 +Version 9.6 
 +SELECT datname,usename,application_name,pid,client_addr,state,query_start,query FROM pg_stat_activity;</code> 
 + 
 +<code sql> 
 +Version 11 
 +SELECT datname,usename,application_name,pid,client_addr,state,query_start,query FROM pg_stat_activity;</code> 
 + 
 +Repérer le PID qui vous intéresse puis terminez la requête 
 +  SELECT pg_cancel_backend(PID); 
 +ou tuez la 
 +  SELECT pg_terminate_backend(PID);
  
 ===== Requête sur un caractère spécial ===== ===== Requête sur un caractère spécial =====
Ligne 323: Ligne 397:
 </code> </code>
  
 +Alternative
 +
 +<code sql>
 +ALTER SEQUENCE meteo_id_seq RESTART WITH 1453
 +</code>
 ===== postgis ===== ===== postgis =====
  
Ligne 336: Ligne 415:
 Enable Topology Enable Topology
   CREATE EXTENSION postgis_topology;   CREATE EXTENSION postgis_topology;
 +
 +
 +Sinon à la main, retrouvez tous les fichiers sql à importer dans:
 +  /usr/pgsql-XX/share/contrib/postgis-2.X/
 +  psql -d madatabase -f ....../....sql
 +
 +Doc => http://postgis.net/docs/postgis_installation.html#idm559
  
  
 A tester => http://postgis.net/docs/performance_tips.html A tester => http://postgis.net/docs/performance_tips.html
 +
 +
 +https://gis.stackexchange.com/questions/43187/using-schema-other-than-public-in-postgis
 +  UPDATE pg_extension SET extrelocatable = TRUE WHERE extname = 'postgis';
 +
 +
 +Pour tester si postgis fonctionne et voir sa version
 +  select postgis_version()
  
 ===== Outils de backup ===== ===== Outils de backup =====
Ligne 347: Ligne 441:
   * http://www.pgbarman.org/   * http://www.pgbarman.org/
   * http://docs.pgbarman.org/release/2.3/   * http://docs.pgbarman.org/release/2.3/
 +
 +
 +===== Analiser une requete =====
 +
 +<code sql>
 +begin;
 +explain (analyze,buffers,timing)
 +delete from mydata where id='897b4dde-6a0d-4159-91e6-88e84519e6b6';
 +rollback;
 +</code>
 +
 +===== Point de vigilance =====
 +
 +La fonction SUM() peut retourner une valeur arrondie
 +
 +Dans ce cas, caster le champ en décimal 
 +  SUM( colonne::decimal )
  
linux/postgresql.1548947800.txt.gz · Dernière modification: 31-01-2019 16:16 de edmc73