Forum Programmation.SQL Qui est connecté à postgresql

Posté par  .
Étiquettes :
0
19
oct.
2007
Hello !
J'ai regardé la doc de postgres, mais j'ai dû mal la lire ou mal la comprendre, ou alors ce que je veux faire n'est pas clairement expliqué...
Bref, je voudrais savoir d'une façon ou d'une autre quels utilisateurs sont connectés à une base de donnée.
En gros, l'équivalent de la commande who sous linux/unix, mais en propre à une base, ou à plusieurs.
Si vous avez des pistes autres que fouiller le logfile (sur lequel je n'ai de toutes façons pas les droits), je suis preneur !
Merci d'avance pour votre aide et vos conseils.
  • # pg_stat_activity

    Posté par  (site web personnel) . Évalué à 3.

    Si tu as le statistics collector (normalement enabled par défaut), il existe une view pg_stat_activity qui permet de récupérer l'ensemble des connexions (un row par client)
    • [^] # Re: pg_stat_activity

      Posté par  . Évalué à 3.

      Merki tout plein...
      J'avais lu la doc de postgres sans voir cette vue... Elle est bigrement intéressante.
      Maintenant, il faudra que j'étudie la question pour faire en sorte que les connexions à mes bases de données par le biais de mes applis intranet développées en php soient d'une certaine façon rendue persistantes.
      J'avais (à l'époque de php3 / début de php4) essayé les pools de connexions, et l'appel à pg_pconnect, mais ça foirait un max, car il n'y avait pas de ramasse poubelles, et finalement, au bout d'un certain temps, j'arrivais à saturer le nombre de connexions possibles au back-end.
      Du coup, je n'avais, soit qu'à lancer un kill sur les postmaster un peu au petit bonheur, soit à relancer le serveur, directement. Ce qui était loin d'être propre.
      Je pense, et j'espère même que les choses ont évoluées depuis, il ne me reste qu'à mettre les mains dans le cambouis.
      Merci encore.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.