La gestion des bases de données à partir de la ligne de commande s'accompagne d'une courbe d'apprentissage pour en tirer le meilleur parti.
La ligne de commande peut parfois être laborieuse et l'affichage peut ne pas être optimal pour ce que vous faites.
La navigation dans les bases de données et les tables, la vérification des index ou des privilèges des utilisateurs, la surveillance, la gestion et même le codage peuvent devenir très compliquées lorsque vous essayez de les gérer via la console.
Ce n'est pas que vous n'avez pas besoin de gérer les commandes de ligne de commande (c'est certainement un must), mais il existe des outils qui peuvent vous aider à accélérer de nombreuses tâches DBA quotidiennes.
Voyons en quoi consistent ces outils et passons en revue certains d'entre eux.
Qu'est-ce qu'un outil graphique ?
Une interface graphique ou interface utilisateur graphique est un logiciel qui simplifie les tâches des utilisateurs grâce à des icônes graphiques et des indicateurs visuels. Les actions sont réalisées à l'aide d'éléments graphiques.
Pourquoi devrais-je utiliser un outil graphique ?
L'utilisation d'une interface graphique n'est pas indispensable, mais elle peut être utile. L'un des principaux avantages des interfaces graphiques est qu'elles sont, en général, plus faciles à apprendre que beaucoup de commandes et probablement qu'une action sur l'interface graphique pourrait générer quelques commandes pour effectuer la tâche.
Un autre avantage pourrait être que l'interface graphique est plus conviviale que la ligne de commande et, dans la plupart des cas, vous n'avez besoin d'aucune connaissance en programmation ou en administrateur système pour l'utiliser.
Mais, vous devez être prudent avant d'effectuer une tâche à partir de l'interface graphique, car en utilisant le mauvais bouton, vous pourriez générer un gros problème comme la suppression d'une table; et pour cette raison, soyez prudent lorsque vous utilisez ce type d'outil.
Les meilleurs outils d'interface graphique pour PostgreSQL
Voyons maintenant quelques-uns des outils graphiques les plus courants pour PostgreSQL.
Notez que, pour les exemples d'installation, nous allons le tester sur Ubuntu 18.04 Bionic.
pgAdmin
pgAdmin est l'une des plateformes d'administration et de développement Open Source les plus populaires pour PostgreSQL.
Il est conçu pour répondre aux besoins des utilisateurs novices et expérimentés de PostgreSQL, en fournissant une interface graphique puissante qui simplifie la création, la maintenance et l'utilisation des objets de base de données.
Il est pris en charge sur Linux, Mac OS X et Windows. Il prend en charge toutes les fonctionnalités de PostgreSQL, de l'écriture de requêtes SQL simples au développement de bases de données complexes. Il est conçu pour interroger une base de données active, vous permettant de rester au courant des modifications et des implémentations. pgAdmin 4, la version actuelle, peut gérer PostgreSQL 9.2 et supérieur.
Caractéristiques
- Affichage graphique du plan de requête
- Assistant Grant pour des mises à jour rapides des LCA
- Débogueur de langage procédural
- Gestion du vide automatique
- Tableau de bord de surveillance
- Sauvegarder, restaurer, aspirer et analyser à la demande
- Agent de planification de tâches SQL/shell/batch
- Détection automatique et prise en charge des objets découverts lors de l'exécution
- Un outil de requête SQL en direct avec édition directe des données
- Assistance pour les requêtes administratives
- Un éditeur SQL mettant en évidence la syntaxe
- Interfaces graphiques repensées
- Boîtes de dialogue et outils de gestion puissants pour les tâches courantes
- Comportement réactif et contextuel
- Messages d'erreur de soutien
- Conseils utiles
- Aide en ligne et informations sur l'utilisation des boîtes de dialogue et des outils de pgAdmin
Installation
Tout d'abord, nous devons importer la clé du référentiel.
$ sudo apt-get install curl ca-certificates
$ curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Et créez le fichier /etc/apt/sources.list.d/pgdg.list. Les distributions sont appelées codename-pgdg. Dans notre exemple devrait être bionic-pgdg.
$ deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main
Pour déterminer le nom de code de votre distribution, vous pouvez exécuter la commande lsb_release -c.
Après cela, vous devez mettre à jour les listes de packages et installer le package pgadmin :
$ sudo apt-get update
$ sudo apt-get install pgadmin4
Ensuite, il vous suffit de lancer la commande pgadmin4 :
$ pgadmin4
Configuration
L'installation crée un serveur pgAdmin écoutant sur un port spécifique. Ce port change chaque fois que vous exécutez la commande pgadmin4. Une fois le programme en cours d'exécution, vous pouvez gérer votre base de données à partir d'une interface Web accessible par l'icône pgAdmin dans la barre des tâches.
Pour vous connecter à votre base de données, vous devez choisir l'option Ajouter un nouveau serveur et compléter les informations de connexion.
Ensuite, vous pouvez gérer votre base de données à l'aide de pgAdmin 4.
Le design a l'air bien et c'est une interface intuitive. Les graphiques de l'écran principal peuvent aider à détecter un problème sur votre système.
L'installation nécessite l'ajout d'un référentiel, elle peut donc nécessiter des compétences supplémentaires.
ClusterControl
ClusterControl prend en charge le déploiement, la gestion, la surveillance et la mise à l'échelle pour PostgreSQL.
Chaque instance PostgreSQL déployée est automatiquement configurée à l'aide de l'interface pointer-cliquer facile à utiliser de ClusterControl.
Vous pouvez gérer les sauvegardes, exécuter des requêtes et effectuer une surveillance avancée de tous les maîtres et esclaves ; le tout avec un basculement automatique en cas de problème.
Les fonctionnalités d'automatisation de ClusterControl vous permettent de configurer facilement un environnement de réplication PostgreSQL, dans lequel vous pouvez ajouter de nouveaux esclaves de réplication à partir de rien ou utiliser ceux qui sont déjà configurés.
Il vous permet également de promouvoir des maîtres et de reconstruire des esclaves.
Il existe deux versions : Community Edition ou Enterprise Edition.
Caractéristiques
- Gestion des sauvegardes
- Surveillance et alerte
- Déploiement et mise à l'échelle
- Mises à niveau et correctifs
- Sécurité et conformité
- Rapports opérationnels
- Gestion des configurations
- Récupération et réparation automatiques
- Gestion des performances
- Conseillers de performance automatisés
Installation
Pour l'installation, vous pouvez utiliser l'installation automatique, manuelle ou hors ligne.
Dans cet exemple, nous utiliserons l'installation automatique.
Vous devez télécharger le script suivant et l'exécuter avec les privilèges root sur le serveur ClusterControl :
$ wget http://www.severalnines.com/downloads/cmon/install-cc
$ chmod +x install-cc
$ sudo ./install-cc
Ensuite, vous devez compléter les informations comme les mots de passe ou la configuration et le tour est joué.
Configuration
Une fois l'installation terminée, vous devriez pouvoir ouvrir l'interface utilisateur ClusterControl sur le navigateur Web en utilisant le nom d'hôte ou l'adresse IP de votre serveur, par exemple :http://192.168.100.191/clustercontrol/
Ici, vous pouvez effectuer plusieurs tâches telles que le déploiement, l'importation, la surveillance et bien plus encore.
Après avoir importé ou déployé votre cluster PostgreSQL par ClusterControl, vous pouvez le gérer à partir d'une interface Web complète et conviviale.
Il fonctionne sur un serveur, vous pouvez donc l'utiliser de partout. Tous les logiciels sont installés par ClusterControl, vous n'avez donc pas besoin d'effectuer d'installation manuelle.
Administrateur
Adminer est un outil de gestion de base de données complet écrit en PHP.
Il se compose d'un seul fichier prêt à être déployé sur le serveur cible.
Adminer est disponible pour MySQL, MariaDB, PostgreSQL, SQLite, MS SQL, Oracle, Firebird, SimpleDB, Elasticsearch et MongoDB. La version actuelle est la 4.7 et elle est sortie en novembre.
Caractéristiques
- Se connecter à un serveur de base de données avec un nom d'utilisateur et un mot de passe
- Sélectionnez une base de données existante ou créez-en une nouvelle
- Répertorier les champs, les index, les clés étrangères et les déclencheurs d'une table
- Modifier le nom, le moteur, le classement, l'incrémentation automatique et le commentaire de la table
- Modifier le nom, le type, le classement, le commentaire et les valeurs par défaut des colonnes
- Ajouter et supprimer des tableaux et des colonnes
- Créer, modifier, supprimer et rechercher par index, y compris le texte intégral
- Créer, modifier, supprimer et lier des listes par clés étrangères
- Créer, modifier, supprimer et sélectionner des vues
- Créer, modifier, supprimer et appeler des procédures et des fonctions stockées
- Créer, modifier et supprimer des déclencheurs
- Répertorier les données dans des tableaux avec rechercher, agréger, trier et limiter les résultats
- Insérer de nouveaux enregistrements, mettre à jour et supprimer ceux qui existent
- Prend en charge tous les types de données, les blobs via le transfert de fichiers
- Exécuter n'importe quelle commande SQL à partir d'un champ de texte ou d'un fichier
- Exporter la structure des tables, les données, les vues, les routines, les bases de données vers SQL ou CSV
- Imprimer le schéma de base de données connecté par des clés étrangères
- Afficher les processus et les tuer
- Afficher les utilisateurs et les droits et les modifier
- Afficher les variables avec des liens vers la documentation
- Gérer les événements et les partitions de table
- PostgreSQL
- Schémas, séquences, types d'utilisateurs
- Options de personnalisation étendues
Installation
Il s'exécute sur un serveur Web. Vous devez donc d'abord installer les packages Apache2, php, php-pdo et php-pgsql.
$ sudo apt install apache2 php php-pdo php-pgsql
Nous devons télécharger le fichier PHP à partir de la page Web Adminer :
$ wget https://github.com/vrana/adminer/releases/download/v4.7.1/adminer-4.7.1.php
Et nous devons déplacer le fichier PHP vers notre racine de document apache :
$ sudo mv adminer-4.7.1.php /var/www/html/adminer.php
Ensuite, si vous l'installez sur votre ordinateur local, vous devez ouvrir l'URL http://localhost/adminer.php dans votre navigateur Web.
Configuration
Pour commencer à utiliser l'outil, vous devez vous connecter à votre base de données.
Une fois connecté, vous pouvez voir la page Web suivante.
L'installation est vraiment simple car il vous suffit de mettre le fichier PHP à la racine du document de votre serveur Web, mais l'interface a l'air un peu démodée.
Il s'agit d'une application Web, vous pouvez donc y accéder de partout uniquement à l'aide d'un navigateur Web.
Atelier SQL/J
SQL Workbench/J est un outil de requête SQL gratuit, indépendant du SGBD et multiplateforme.
Il est écrit en Java et devrait fonctionner sur n'importe quel système d'exploitation qui fournit un environnement d'exécution Java.
Son objectif principal est l'exécution de scripts SQL et les fonctionnalités d'exportation/importation. La création de requêtes graphiques ou des tâches DBA plus avancées ne sont pas au centre des préoccupations et ne sont pas planifiées.
Caractéristiques
- Modifier, insérer et supprimer des données directement dans le résultat de la requête
- Puissante commande d'exportation pour écrire des fichiers texte, XML, HTML ou SQL.
- Toutes les tables utilisateur peuvent être exportées dans un répertoire avec une seule commande. Les fichiers d'exportation peuvent être compressés "à la volée".
- Importation puissante de texte, XML et de feuilles de calcul. Un ensemble de fichiers peut être importé depuis un répertoire avec une seule commande. Des contraintes de clé étrangère sont détectées pour insérer les données dans le bon ordre
- Comparez deux schémas de base de données pour les différences. La sortie XML peut être transformée en instructions SQL ALTER appropriées à l'aide de XSLT
- Comparez les données de deux bases de données et générez les instructions SQL nécessaires pour migrer l'une vers l'autre.
- Prend en charge l'exécution de scripts SQL en mode batch
- Prend en charge l'exécution en mode console
- Rechercher du texte dans une procédure, une vue et d'autres sources à l'aide d'une commande SQL ou d'une interface graphique
- Rechercher des données dans toutes les colonnes de toutes les tables à l'aide d'une commande SQL ou d'une interface graphique
- Reformatage des instructions SQL
- Sélectionnez les lignes des tables associées en fonction de leurs définitions de clé étrangère
- Info-bulles pour les instructions INSERT pour afficher la valeur ou la colonne correspondante
- Copiez les données directement entre les serveurs de base de données à l'aide d'une commande SQL ou d'une interface graphique
- Macros pour les instructions SQL fréquemment utilisées
- Substitution de variables dans les instructions SQL, y compris l'invite intelligente pour les valeurs
- Saisie semi-automatique pour les tables et les colonnes dans les instructions SQL
- Afficher les objets de la base de données et leurs définitions
- Afficher la source du tableau
- Afficher la vue, la procédure et le code source du déclencheur
- Afficher les contraintes de clé étrangère entre les tables
- Prise en charge complète des données BLOB dans les résultats de requête, les instructions SQL, l'exportation et l'importation.
Installation
Il est écrit en Java, vous avez donc besoin de ce logiciel pour l'exécuter.
Tout d'abord, vous devez vérifier si Java est installé sur votre système :
$ java --version
Ensuite, vous devez télécharger le package SQL Workbench :
$ wget https://www.sql-workbench.eu/Workbench-Build124.zip
$ unzip -d sqlworkbench Workbench-Build124.zip
Pour l'exécuter, vous devez exécuter le fichier jar nommé sqlworkbench.jar à l'aide de la commande java avec le drapeau jar :
$ java -jar sqlworkbench/sqlworkbench.jar
Configuration
Pour vous connecter à votre base de données PostgreSQL, vous devez télécharger le pilote JDBC :
$ wget https://jdbc.postgresql.org/download/postgresql-42.2.5.jar
$ mv postgresql-42.2.5.jar sqlworkbench/
Et configurez le pilote dans votre SQL Workbench. Pour cela, allez dans Fichier -> Gérer les pilotes -> Sélectionnez PostgreSQL et sélectionnez le pilote.
Ensuite, allez dans Fichier -> Connecter la fenêtre et complétez les informations du profil de connexion.
Une fois la connexion terminée, vous pouvez gérer votre base de données en l'utilisant.
L'installation est simple mais vous devez télécharger le pilote et le configurer manuellement. De plus, l'interface n'est pas trop conviviale.
DBeaver
DBeaver est un outil de base de données universel gratuit et open source pour les développeurs et les administrateurs de base de données.
Prend en charge toutes les bases de données courantes :MySQL, PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, MS Access, Teradata, Firebird, Derby, etc.
La convivialité est l'objectif principal de ce projet, l'interface utilisateur du programme est soigneusement conçue et mise en œuvre. Il est basé sur un framework opensource et permet l'écriture de diverses extensions (plugins). Il prend en charge toute base de données ayant un pilote JDBC. Il existe deux versions :Community Edition et Enterprise Edition.
Caractéristiques
- Gestionnaire de connexion
- Navigateur de métadonnées
- Éditeur SQL
- Visualiseur/éditeur de données
- Recherche de données/métadonnées
- Comparaison de la structure de la base de données
- Transfert de données (export/import)
- Schémas ER
- Gestionnaire de requêtes
- Projets
- Vues supplémentaires
- Gestionnaire de chauffeurs
- Bases de données relationnelles prises en charge
- Bases de données NoSQL prises en charge
- Systèmes d'exploitation pris en charge
- PostgreSQL
- Plan d'exécution expliqué
- Source des procédures stockées
- Vues DDL
- Séquences
Installation
Tout d'abord, vous devez télécharger le package et l'installer :
$ wget https://dbeaver.io/files/dbeaver-ce_latest_amd64.deb
$ dpkg -i dbeaver-ce_latest_amd64.deb
Et ensuite, exécutez simplement la commande suivante pour ouvrir l'application :
$ dbeaver
Configuration
Lorsque vous exécutez l'application pour la première fois, vous devez configurer votre connexion à la base de données.
Vous devez donc sélectionner PostgreSQL et compléter les informations.
Ensuite, en sélectionnant Tester la connexion, vous devez télécharger les fichiers du pilote. Vous devriez recevoir le message suivant après le test.
Lorsque vous avez terminé la configuration, vous pouvez gérer votre base de données en utilisant l'application DBeaver.
L'installation est, en gros, un jeu d'enfant, et l'interface semble conviviale et intuitive.
Navicat
Navicat pour PostgreSQL est un outil graphique facile à utiliser pour le développement de bases de données PostgreSQL.
Cet outil conviendra à tous, des débutants aux seniors, et s'adaptera à toutes les tâches, des requêtes simples au développement. Connectez-vous aux serveurs PostgreSQL locaux/distants et compatible avec les bases de données cloud comme Amazon Redshift, Amazon Aurora, Amazon RDS, Google Cloud, Microsoft Azure, Alibaba Cloud, Tencent Cloud et Huawei Cloud, et tous les objets de base de données PostgreSQL. C'est une application payante mais vous pouvez utiliser la version d'essai pour la tester.
Caractéristiques
- Prend en charge PostgreSQL 7.3 ou version ultérieure et les services cloud tels qu'AWS, Google Cloud ou Microsoft Azure, entre autres.
- Connexion sécurisée :SSH/HTTP/SSL
- Navicat Cloud
- Visualiseur et éditeur de données
- Traitement SQL
- Modélisation des données
- Importer/Exporter
- Manipulation des données
- Sauvegarde/Restauration
- Automatisation
- Gérer l'utilisateur
- Moniteur de serveur
Installation
Tout d'abord, nous devons télécharger le package Navicat et le décompresser.
$ wget http://download3.navicat.com/download/navicat121_pgsql_en_x64.tar.gz
$ tar zxvf navicat121_pgsql_en_x64.tar.gz
Ensuite, nous devons exécuter le script start_navicat pour le démarrer.
$ cd navicat121_pgsql_en_x64
$ ./start_navicat
Cela utilisera Wine pour exécuter l'application Navicat et il pourrait vous demander d'installer certaines dépendances requises lors de l'initialisation.
Configuration
Lorsque vous accédez à l'application, vous devez créer une nouvelle connexion.
Allez dans Connexion -> PostgreSQL et complétez les informations.
Après cela, vous pouvez commencer à utiliser l'application pour gérer votre base de données.
Le logiciel fonctionne sur Wine sous Linux et la période d'essai est de 14 jours. L'interface est jolie et conviviale.
Conclusion
Dans ce blog, nous avons passé en revue certains des outils graphiques les plus courants pour PostgreSQL.
Indépendamment du fait que l'utilisation d'un outil graphique n'est pas obligatoire, il peut vous aider à faciliter certaines des tâches quotidiennes du DBA en vous offrant une manière plus conviviale de gérer les choses.
Ces outils ne remplacent pas la ligne de commande (en tant que DBA, vous devez la maîtriser), mais ils sont extrêmement utiles et vous en tirerez vraiment profit.