Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
💥 Les 22 & 23 novembre : Accès 100% GRATUIT
à la Bibliothèque Numérique ENI. Je m'inscris !
  1. Livres et vidéos
  2. PostgreSQL
  3. Outils
Extrait - PostgreSQL Administration et exploitation de vos bases de données (4e édition)
Extraits du livre
PostgreSQL Administration et exploitation de vos bases de données (4e édition) Revenir à la page d'achat du livre

Outils

Introduction

PostgreSQL ne fournit pas d’outil d’administration graphique, seulement des outils en lignes de commandes comme psql. Si psql est très efficace et qu’il doit faire partie de la boîte à outils du DBA, ne serait-ce que parce qu’il est toujours disponible dès que PostgreSQL est installé, il est néanmoins utile de disposer d’outils graphiques, notamment pour les utilisateurs qui souhaitent accéder aux données sans devoir maîtriser la ligne de commande.

De plus, il existe des outils d’administration en mode console et complémentaires à ce qui est livré avec PostgreSQL. Enfin, les outils de monitoring et supervision courants permettent d’intégrer la supervision de PostgreSQL.

L’outil graphique : pgAdmin III

L’outil pgAdmin III est un outil graphique historique lié à PostgreSQL. À partir de la version 10, cet outil est délaissé par les développeurs, au profit de la version PgAdmin IV. Du fait que la réécriture de PgAdmin IV n’a pas convaincu les utilisateurs, il existe une adaptation de PgAdmin III pour PostgreSQL 10 intégré dans la distribution pgc uniquement pour Windows, voir chapitre Installation.

L’outil Dbeaver

Dbeaver est un client SQL universel, écrit en Java et basé sur Eclipse. Il permet de se connecter à un grand nombre de systèmes de bases de données relationnelles, dont PostgreSQL. Étant écrit en Java, il utilise le pilote JDBC pour se connecter. S’il connaît de nombreux systèmes de bases de données, il doit néanmoins télécharger le pilote JDBC lors de la configuration initiale de la connexion à PostgreSQL.

L’outil est téléchargeable à l’adresse suivante : https://dbeaver.jkiss.org/

L’outil permet de représenter un modèle graphique à partir des tables et des clés étrangères existantes :

images/dbeaver01.png

Il permet aussi de lancer des requêtes à partir d’un éditeur de requêtes SQL. Il est possible de gérer les ordres SQL depuis des fichiers, chargés depuis le gestionnaire de scripts. Les données affichées dans la grille sont éditables directement, et l’outil gère implicitement les ajouts et mises à jour effectués :

images/dbeaver03.png

L’outil SQLTabs

SQLTabs est un client SQL disposant de nombreuses fonctionnalités intéressantes en termes d’ergonomie, tant sur le plan de la découverte du modèle de données que de l’auto-complétion des requêtes SQL, jusqu’à la présentation des résultats et des plans d’execution.

L’outil est téléchargeable à l’adresse suivante : http://www.sqltabs.com/

L’écran suivant montre l’outil, connecté grace à l’URI de la barre d’adresse, puis une requête SQL en cours d’édition et les objets de la base dans la zone de présentation :

images/sqltabs01.png

L’écran suivant montre deux requêtes, dont les résultats sont présentés successivement dans la zone de présentation :

images/sqltabs02.png

De plus, l’outil sait interpréter les résultats pour produire des graphiques, comme dans l’exemple suivant :

images/sqltabs03.png

Enfin, il est possible d’obtenir un affichage visuel des plans d’exécution :

images/sqltabs04.png

De nombreuses options d’affichage graphique et de personnalisation de la zone de présentation sont détaillées dans la documentation de l’outil.

L’outil PGWatch2

PGWatch2 est une solution de supervision, permettant de collecter les métriques depuis le catalogue de PostgreSQL et de les insérer dans une base de données de type « timeseries », comme par exemple InfluxDB, pour finalement les afficher dans Grafana, depuis des tableaux de bord fournis par l’outil. Même s’il est possible d’installer les différents composants individuellement, ce qui est le cas des systèmes où InfluxDB et Grafana sont déjà utilisés, l’outil fournit une image Docker qui peut être suffisante pour évaluer l’outil.

PGWatch2 est téléchargeable à l’adresse suivante : https://github.com/cybertec-postgresql/pgwatch2

La copie d’écran suivante montre le résultat d’un tableau de bord de Grafana avec des données collectées :

images/grafana01.png

L’administrateur de base de données dispose alors de toute la richesse de Grafana pour explorer les données collectées et ainsi comprendre le comportement de PostgreSQL.