Une fonctionnalité puissante sur PostgreSQL est la possibilité de récupérer des informations dans des requêtes SQL minimales. En effet.
Ce tutoriel vous guidera dans diverses façons d'identifier les connexions et les activités du serveur à l'aide du serveur. Cela peut vous aider à identifier les connexions, à les gérer ou à les terminer s'ils ne sont pas utiles.
Le catalogue du système PostgreSQL
Avant d'arriver à interroger PostgreSQL pour les connexions actives sur le serveur, comprenons où se produit cette collecte d'informations.
PostgreSQL contient un schéma avec des tables et des vues remplies d'informations sur les métadonnées sur d'autres objets du serveur. C'est similaire à la table d'information_schema dans MySQL.
Le schéma du catalogue système vous permet de recueillir des informations sur le système, y compris les processus système, les index, l'accès à la table, la méthode d'accès aux données, et bien d'autres.
Comme le catalogue du système est massif et contient des charges et des tas d'informations, nous ne pouvons pas les couvrir dans un seul article. Cependant, il y a un tableau qui nous intéresse: le PG_STAT_ACTIVITY.
Ce tableau montre un journal des connexions établie au serveur et à leurs données correspondantes, à la base de données connectée, au PID de son processus équivalent, et bien plus encore.
Le pg_stat_activité
Les informations que nous pouvons recueillir à partir du tableau PG_STAT_ACTIVITY comprennent les éléments suivants
Avec ces informations, nous pouvons désormais interroger des informations détaillées sur les connexions actives dans le serveur.
Comment interroger les connexions actives
Pour interroger pour les connexions actives, nous commençons par vous connecter au serveur. Si vous utilisez l'installation par défaut de postgresql, utilisez PSQL avec votre nom d'utilisateur et votre mot de passe en tant que
PSQL -U Postgres -WTapez «Aide» pour obtenir de l'aide.
Commençons par rassembler toutes les informations du tableau PG_STAT_ACTIVITY. Utilisez la requête comme indiqué ci-dessous
SELECT * FROM PG_STAT_ACTIVITY;Une fois que vous avez exécuté la requête ci-dessus, PostgreSQL videra beaucoup d'informations sur vous, dont la plupart vous pourriez ne pas avoir besoin. Pour résoudre ce problème, nous pouvons sélectionner des colonnes spécifiques comme indiqué dans la requête ci-dessous:
Sélectionnez Datname comme Database_name,Cela ne sélectionnera que les informations nécessaires et l'organisera de manière tabulaire, comme indiqué dans la capture d'écran.
Enfin, nous pouvons filtrer où l'état n'est pas égal à actif pour collecter uniquement les connexions actives.
La requête est:
Sélectionnez Datname comme Database_name,Cela montrera une sortie similaire à celle ci-dessous:
Enfin, un moyen simple d'obtenir des informations similaires consiste à utiliser Pgadmin. Pgadmin est un puissant outil d'administration GUI pour la base de données PostgreSQL.
Une fois que vous vous connectez à Pgadmin, accédez au tableau de bord et accédez à Server_activité. Actualiser pour vous montrer toutes les connexions.
Conclusion
Ce guide a examiné comment interroger les activités de connexion de PostgreSQL en utilisant la table PG_STAT_ACTIVITY et PGADMIN.