Das Verwalten von Datenbanken über die Befehlszeile ist mit einer Lernkurve verbunden, um das Beste daraus zu machen.
Die Befehlszeile kann manchmal mühsam sein und die Anzeige ist möglicherweise nicht optimal für das, was Sie tun.
Das Durchsuchen von Datenbanken und Tabellen, das Überprüfen von Indizes oder Benutzerprivilegien, das Überwachen, Verwalten und sogar das Programmieren kann wirklich chaotisch werden, wenn man versucht, es über die Konsole zu handhaben.
Es ist nicht so, dass Sie die Befehlszeilenbefehle nicht verwalten müssen (es ist auf jeden Fall ein Muss), aber es gibt einige Tools, die Ihnen helfen können, viele der täglichen DBA-Aufgaben zu beschleunigen.
Sehen wir uns an, worum es bei diesen Tools geht, und sehen wir uns einige davon an.
Was ist ein GUI-Tool?
Eine GUI oder grafische Benutzeroberfläche ist eine Software, die die Aufgaben der Benutzer durch grafische Symbole und visuelle Indikatoren vereinfacht. Die Aktionen werden durch grafische Elemente ausgeführt.
Warum sollte ich ein GUI-Tool verwenden?
Die Verwendung einer GUI ist kein Muss, kann aber nützlich sein. Einer der Hauptvorteile der GUIs ist, dass sie im Allgemeinen leichter zu erlernen sind als viele Befehle, und wahrscheinlich könnte eine Aktion auf der GUI einige Befehle generieren, um die Aufgabe auszuführen.
Ein weiterer Vorteil könnte sein, dass die GUI benutzerfreundlicher ist als die Befehlszeile, und in den meisten Fällen benötigen Sie keine Programmier- oder Sysadmin-Kenntnisse, um sie zu verwenden.
Sie sollten jedoch vorsichtig sein, bevor Sie eine Aufgabe über die GUI ausführen, da Sie durch die Verwendung der falschen Schaltfläche ein großes Problem wie das Löschen einer Tabelle erzeugen könnten. Seien Sie aus diesem Grund vorsichtig, wenn Sie diese Art von Werkzeug verwenden.
Top-GUI-Tools für PostgreSQL
Sehen wir uns nun einige der gebräuchlichsten GUI-Tools für PostgreSQL an.
Beachten Sie, dass wir die Installationsbeispiele auf Ubuntu 18.04 Bionic testen.
pgAdmin
pgAdmin ist eine der beliebtesten Open-Source-Verwaltungs- und Entwicklungsplattformen für PostgreSQL.
Es wurde entwickelt, um die Anforderungen sowohl von Anfängern als auch von erfahrenen PostgreSQL-Benutzern gleichermaßen zu erfüllen, und bietet eine leistungsstarke grafische Oberfläche, die die Erstellung, Wartung und Verwendung von Datenbankobjekten vereinfacht.
Es wird unter Linux, Mac OS X und Windows unterstützt. Es unterstützt alle PostgreSQL-Funktionen, vom Schreiben einfacher SQL-Abfragen bis zum Entwickeln komplexer Datenbanken. Es wurde entwickelt, um eine aktive Datenbank abzufragen, sodass Sie bei Änderungen und Implementierungen auf dem Laufenden bleiben können. pgAdmin 4, die aktuelle Version, kann PostgreSQL 9.2 und höher verwalten.
Funktionen
- Grafische Abfrageplananzeige
- Grant Wizard für schnelle Aktualisierungen von ACLs
- Prozeduraler Sprachdebugger
- Automatisches Vakuummanagement
- Überwachungs-Dashboard
- Sichern, Wiederherstellen, Vakuumieren und Analysieren bei Bedarf
- SQL/Shell/Batch-Jobplanungsagent
- Automatische Erkennung und Unterstützung für zur Laufzeit entdeckte Objekte
- Ein Live-SQL-Abfragetool mit direkter Datenbearbeitung
- Unterstützung für administrative Abfragen
- Ein Syntaxhervorhebungs-SQL-Editor
- Neu gestaltete grafische Benutzeroberflächen
- Leistungsstarke Verwaltungsdialoge und Tools für allgemeine Aufgaben
- Reaktionsfähiges, kontextsensitives Verhalten
- Unterstützende Fehlermeldungen
- Hilfreiche Tipps
- Online-Hilfe und Informationen zur Verwendung von pgAdmin-Dialogen und -Werkzeugen
Installation
Zuerst müssen wir den Repository-Schlüssel importieren.
$ sudo apt-get install curl ca-certificates
$ curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Und erstellen Sie die Datei /etc/apt/sources.list.d/pgdg.list. Die Distributionen heißen codename-pgdg. In unserem Beispiel sollte bionic-pgdg sein.
$ deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main
Um den Codenamen Ihrer Distribution zu ermitteln, können Sie den Befehl lsb_release -c ausführen.
Danach müssen Sie die Paketlisten aktualisieren und das pgadmin-Paket installieren:
$ sudo apt-get update
$ sudo apt-get install pgadmin4
Dann müssen Sie nur noch den pgadmin4-Befehl ausführen:
$ pgadmin4
Konfiguration
Die Installation erstellt einen pgAdmin-Server, der einen bestimmten Port überwacht. Dieser Port ändert sich jedes Mal, wenn Sie den Befehl pgadmin4 ausführen. Nachdem das Programm ausgeführt wurde, können Sie Ihre Datenbank über eine Weboberfläche verwalten, indem Sie auf das pgAdmin-Symbol in der Taskleiste zugreifen.
Um eine Verbindung zu Ihrer Datenbank herzustellen, müssen Sie die Option Neuen Server hinzufügen auswählen und die Verbindungsinformationen eingeben.
Anschließend können Sie Ihre Datenbank mit pgAdmin 4 verwalten.
Das Design sieht gut aus und es ist eine intuitive Benutzeroberfläche. Die Diagramme im Hauptbildschirm können helfen, ein Problem auf Ihrem System zu erkennen.
Die Installation erfordert das Hinzufügen eines Repositorys, daher könnten einige zusätzliche Fähigkeiten erforderlich sein.
ClusterControl
ClusterControl unterstützt die Bereitstellung, Verwaltung, Überwachung und Skalierung für PostgreSQL.
Jede bereitgestellte PostgreSQL-Instanz wird automatisch über die benutzerfreundliche Point-and-Click-Oberfläche von ClusterControl konfiguriert.
Sie können Sicherungen verwalten, Abfragen ausführen und eine erweiterte Überwachung aller Master und Slaves durchführen. alles mit automatischem Failover, falls etwas schief geht.
Mit den Automatisierungsfunktionen in ClusterControl können Sie ganz einfach eine PostgreSQL-Replikationsumgebung einrichten, in der Sie neue Replikations-Slaves von Grund auf neu hinzufügen oder bereits konfigurierte verwenden können.
Es erlaubt Ihnen auch, Meister zu befördern und Sklaven wieder aufzubauen.
Es gibt zwei Versionen:Community Edition oder Enterprise Edition.
Funktionen
- Sicherungsverwaltung
- Überwachung und Benachrichtigung
- Bereitstellung und Skalierung
- Upgrades und Patches
- Sicherheit und Compliance
- Betriebsberichterstattung
- Konfigurationsverwaltung
- Automatische Wiederherstellung und Reparatur
- Leistungsverwaltung
- Automatisierte Leistungsberater
Installation
Für die Installation können Sie die automatische, manuelle oder Offline-Installation verwenden.
In diesem Beispiel verwenden wir die automatische Installation.
Sie müssen das folgende Skript herunterladen und mit Root-Rechten auf dem ClusterControl-Server ausführen:
$ wget http://www.severalnines.com/downloads/cmon/install-cc
$ chmod +x install-cc
$ sudo ./install-cc
Dann müssen Sie die Informationen wie Passwörter oder Konfiguration vervollständigen und fertig.
Konfiguration
Nach Abschluss der Installation sollten Sie die ClusterControl-Benutzeroberfläche im Webbrowser öffnen können, indem Sie den Hostnamen oder die IP-Adresse Ihres Servers verwenden, zum Beispiel:http://192.168.100.191/clustercontrol/
Hier können Sie verschiedene Aufgaben wie Bereitstellung, Import, Überwachung und noch mehr ausführen.
Nachdem Sie Ihren PostgreSQL-Cluster von ClusterControl importiert oder bereitgestellt haben, können Sie ihn über eine vollständige, benutzerfreundliche Weboberfläche verwalten.
Es läuft auf einem Server, sodass Sie es von überall aus verwenden können. Die gesamte Software wird von ClusterControl installiert, sodass Sie keine manuelle Installation durchführen müssen.
Administrator
Adminer ist ein voll funktionsfähiges Datenbankverwaltungstool, das in PHP geschrieben ist.
Es besteht aus einer einzigen Datei, die bereit ist, auf dem Zielserver bereitgestellt zu werden.
Adminer ist für MySQL, MariaDB, PostgreSQL, SQLite, MS SQL, Oracle, Firebird, SimpleDB, Elasticsearch und MongoDB verfügbar. Die aktuelle Version ist 4.7 und wurde im November veröffentlicht.
Funktionen
- Mit Benutzername und Passwort mit einem Datenbankserver verbinden
- Wählen Sie eine vorhandene Datenbank aus oder erstellen Sie eine neue
- Felder, Indizes, Fremdschlüssel und Trigger einer Tabelle auflisten
- Ändern Sie Name, Engine, Sortierung, auto_increment und Kommentar der Tabelle
- Name, Typ, Sortierung, Kommentar und Standardwerte von Spalten ändern
- Tabellen und Spalten hinzufügen und löschen
- Erstellen, ändern, löschen und durchsuchen Sie Indizes einschließlich Volltext
- Erstellen, ändern, löschen und verknüpfen Sie Listen mit Fremdschlüsseln
- Ansichten erstellen, ändern, löschen und auswählen
- Erstellen, ändern, löschen und rufen Sie gespeicherte Prozeduren und Funktionen auf
- Trigger erstellen, ändern und löschen
- Daten in Tabellen mit Suchergebnissen auflisten, aggregieren, sortieren und einschränken
- Fügen Sie neue Datensätze ein, aktualisieren und löschen Sie die bestehenden
- Unterstützt alle Datentypen, Blobs durch Dateiübertragung
- Führen Sie einen beliebigen SQL-Befehl aus einem Textfeld oder einer Datei aus
- Tabellenstruktur, Daten, Ansichten, Routinen, Datenbanken nach SQL oder CSV exportieren
- Datenbankschema drucken, das durch Fremdschlüssel verbunden ist
- Zeige Prozesse und beende sie
- Benutzer und Rechte anzeigen und ändern
- Variablen mit Links zur Dokumentation anzeigen
- Ereignisse und Tabellenpartitionen verwalten
- PostgreSQL-
- Schemata, Sequenzen, Benutzertypen
- Umfangreiche Anpassungsoptionen
Installation
Es läuft auf einem Webserver, also müssen Sie zuerst die Pakete Apache2, php, php-pdo und php-pgsql installieren.
$ sudo apt install apache2 php php-pdo php-pgsql
Wir müssen die PHP-Datei von der Adminer-Webseite herunterladen:
$ wget https://github.com/vrana/adminer/releases/download/v4.7.1/adminer-4.7.1.php
Und wir müssen die PHP-Datei in unser Apache-Dokumentenstammverzeichnis verschieben:
$ sudo mv adminer-4.7.1.php /var/www/html/adminer.php
Wenn Sie es dann auf Ihrem lokalen Rechner installieren, müssen Sie die URL http://localhost/adminer.php in Ihrem Webbrowser öffnen.
Konfiguration
Um das Tool zu verwenden, müssen Sie sich bei Ihrer Datenbank anmelden.
Nach der Anmeldung können Sie die folgende Webseite sehen.
Die Installation ist wirklich einfach, da Sie nur die PHP-Datei in das Document-Root Ihres Webservers legen müssen, aber die Oberfläche sieht etwas altmodisch aus.
Da es sich um eine Webanwendung handelt, können Sie von überall aus nur über einen Webbrowser darauf zugreifen.
SQL Workbench/J
SQL Workbench/J ist ein kostenloses, DBMS-unabhängiges, plattformübergreifendes SQL-Abfragetool.
Es ist in Java geschrieben und sollte auf jedem Betriebssystem laufen, das eine Java-Laufzeitumgebung bereitstellt.
Sein Hauptaugenmerk liegt auf der Ausführung von SQL-Skripten und Export-/Importfunktionen. Das Erstellen von grafischen Abfragen oder fortgeschrittenere DBA-Aufgaben stehen nicht im Mittelpunkt und sind nicht geplant.
Funktionen
- Daten direkt im Abfrageergebnis bearbeiten, einfügen und löschen
- Leistungsstarker Exportbefehl zum Schreiben von Textdateien, XML, HTML oder SQL.
- Alle Benutzertabellen können mit einem einzigen Befehl in ein Verzeichnis exportiert werden. Exportdateien können "on-the-fly" komprimiert werden.
- Leistungsstarker Text-, XML- und Tabellenimport. Eine Reihe von Dateien kann mit einem einzigen Befehl aus einem Verzeichnis importiert werden. Fremdschlüsseleinschränkungen werden erkannt, um die Daten in der richtigen Reihenfolge einzufügen
- Vergleichen Sie zwei Datenbankschemata auf Unterschiede. Die XML-Ausgabe kann mithilfe von XSLT in die entsprechenden SQL-ALTER-Anweisungen umgewandelt werden
- Vergleichen Sie die Daten zweier Datenbanken und generieren Sie die erforderlichen SQL-Anweisungen, um eine zur anderen zu migrieren.
- Unterstützt die Ausführung von SQL-Skripten im Stapelmodus
- Unterstützt die Ausführung im Konsolenmodus
- Suchen Sie Text in Prozeduren, Ansichten und anderen Quellen mit einem SQL-Befehl oder einer GUI
- Suchen Sie mithilfe eines SQL-Befehls oder einer GUI nach Daten in allen Spalten in allen Tabellen
- Neuformatierung von SQL-Anweisungen
- Wählen Sie Zeilen aus verknüpften Tabellen gemäß ihren Fremdschlüsseldefinitionen aus
- Tooltips für INSERT-Anweisungen, um den entsprechenden Wert oder die entsprechende Spalte anzuzeigen
- Kopieren Sie Daten direkt zwischen zwei Datenbankservern mit einem SQL-Befehl oder einer GUI
- Makros für häufig verwendete SQL-Anweisungen
- Variablensubstitution in SQL-Anweisungen, einschließlich intelligenter Eingabeaufforderung für Werte
- Automatische Vervollständigung für Tabellen und Spalten in SQL-Anweisungen
- Datenbankobjekte und ihre Definitionen anzeigen
- Tabellenquelle anzeigen
- Ansichts-, Prozedur- und Trigger-Quellcode anzeigen
- Fremdschlüsselbeschränkungen zwischen Tabellen anzeigen
- Volle Unterstützung für BLOB-Daten in Abfrageergebnissen, SQL-Anweisungen, Export und Import.
Installation
Es ist in Java geschrieben, also brauchen Sie diese Software, um es auszuführen.
Zuerst müssen Sie überprüfen, ob Sie Java auf Ihrem System installiert haben:
$ java --version
Dann müssen Sie das SQL Workbench-Paket herunterladen:
$ wget https://www.sql-workbench.eu/Workbench-Build124.zip
$ unzip -d sqlworkbench Workbench-Build124.zip
Um es auszuführen, müssen Sie die JAR-Datei namens sqlworkbench.jar mit dem Java-Befehl mit dem JAR-Flag ausführen:
$ java -jar sqlworkbench/sqlworkbench.jar
Konfiguration
Um eine Verbindung zu Ihrer PostgreSQL-Datenbank herzustellen, müssen Sie den JDBC-Treiber herunterladen:
$ wget https://jdbc.postgresql.org/download/postgresql-42.2.5.jar
$ mv postgresql-42.2.5.jar sqlworkbench/
Und konfigurieren Sie den Treiber in Ihrer SQL Workbench. Gehen Sie dazu auf Datei -> Treiber verwalten -> PostgreSQL auswählen und wählen Sie den Treiber aus.
Gehen Sie dann zum Fenster Datei -> Verbinden und geben Sie die Informationen zum Verbindungsprofil ein.
Nachdem die Verbindung hergestellt wurde, können Sie Ihre Datenbank damit verwalten.
Die Installation ist einfach, aber Sie müssen den Treiber herunterladen und manuell konfigurieren. Außerdem ist die Benutzeroberfläche nicht zu freundlich.
DBeaver
DBeaver ist ein kostenloses und universelles Open-Source-Datenbanktool für Entwickler und Datenbankadministratoren.
Unterstützt alle gängigen Datenbanken:MySQL, PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, MS Access, Teradata, Firebird, Derby usw.
Benutzerfreundlichkeit ist das Hauptziel dieses Projekts, die Benutzeroberfläche des Programms wird sorgfältig entworfen und implementiert. Es basiert auf einem Open-Source-Framework und ermöglicht das Schreiben verschiedener Erweiterungen (Plugins). Es unterstützt jede Datenbank mit einem JDBC-Treiber. Es gibt zwei Versionen:Community Edition und Enterprise Edition.
Funktionen
- Verbindungsmanager
- Metadaten-Browser
- SQL-Editor
- Datenbetrachter/-editor
- Daten-/Metadatensuche
- Datenbankstruktur vergleichen
- Datenübertragung (Export/Import)
- ER-Diagramme
- Abfragemanager
- Projekte
- Zusätzliche Aufrufe
- Treibermanager
- Unterstützte relationale Datenbanken
- Unterstützte NoSQL-Datenbanken
- Unterstützte Betriebssysteme
- PostgreSQL-
- Ausführungsplan erläutern
- Quelle gespeicherter Prozeduren
- Ansichts-DDL
- Sequenzen
Installation
Zuerst müssen Sie das Paket herunterladen und installieren:
$ wget https://dbeaver.io/files/dbeaver-ce_latest_amd64.deb
$ dpkg -i dbeaver-ce_latest_amd64.deb
Führen Sie dann einfach den folgenden Befehl aus, um die Anwendung zu öffnen:
$ dbeaver
Konfiguration
Wenn Sie die Anwendung zum ersten Mal ausführen, müssen Sie Ihre Datenbankverbindung konfigurieren.
Sie müssen also PostgreSQL auswählen und die Informationen vervollständigen.
Anschließend müssen Sie durch Auswahl von Verbindung testen die Treiberdateien herunterladen. Nach dem Test sollten Sie die folgende Nachricht erhalten.
Wenn Sie die Konfiguration abgeschlossen haben, können Sie Ihre Datenbank mit der DBeaver-Anwendung verwalten.
Die Installation ist im Grunde ein Kinderspiel, und die Benutzeroberfläche sieht freundlich und intuitiv aus.
Navigation
Navicat for PostgreSQL ist ein benutzerfreundliches grafisches Tool für die Entwicklung von PostgreSQL-Datenbanken.
Dieses Tool ist für alle geeignet, vom Anfänger bis zum Senior, und erfüllt alle Aufgaben, von einfachen Abfragen bis hin zur Entwicklung. Stellen Sie eine Verbindung zu lokalen/entfernten PostgreSQL-Servern her und kompatibel mit Cloud-Datenbanken wie Amazon Redshift, Amazon Aurora, Amazon RDS, Google Cloud, Microsoft Azure, Alibaba Cloud, Tencent Cloud und Huawei Cloud sowie allen PostgreSQL-Datenbankobjekten. Es ist eine kostenpflichtige Anwendung, aber Sie können die Testversion verwenden, um sie zu testen.
Funktionen
- Unterstützt unter anderem PostgreSQL 7.3 oder höher und Cloud-Dienste wie AWS, Google Cloud oder Microsoft Azure.
- Sichere Verbindung:SSH/HTTP/SSL
- Navicat-Cloud
- Datenbetrachter und -editor
- SQL-Verarbeitung
- Datenmodellierung
- Importieren/Exportieren
- Datenmanipulation
- Sichern/Wiederherstellen
- Automatisierung
- Benutzer verwalten
- Servermonitor
Installation
Zuerst müssen wir das Navicat-Paket herunterladen und dekomprimieren.
$ wget http://download3.navicat.com/download/navicat121_pgsql_en_x64.tar.gz
$ tar zxvf navicat121_pgsql_en_x64.tar.gz
Dann müssen wir das Skript start_navicat ausführen, um es zu starten.
$ cd navicat121_pgsql_en_x64
$ ./start_navicat
Dadurch wird Wine verwendet, um die Navicat-Anwendung auszuführen, und es könnte Sie auffordern, während der Initialisierung einige erforderliche Abhängigkeiten zu installieren.
Konfiguration
Wenn Sie auf die Anwendung zugreifen, müssen Sie eine neue Verbindung erstellen.
Gehen Sie zu Verbindung -> PostgreSQL und vervollständigen Sie die Informationen.
Danach können Sie mit der Anwendung beginnen, um Ihre Datenbank zu verwalten.
Die Software läuft über Wine unter Linux und die Testversion ist 14 Tage lang gültig. Die Benutzeroberfläche sieht hübsch und freundlich aus.
Schlussfolgerung
In diesem Blog haben wir einige der gängigsten GUI-Tools für PostgreSQL überprüft.
Ungeachtet der Tatsache, dass die Verwendung eines GUI-Tools nicht obligatorisch ist, kann es Ihnen helfen, einige der täglichen DBA-Aufgaben zu erleichtern, indem es Ihnen eine benutzerfreundlichere Art der Verwaltung bietet.
Diese Tools sind kein Ersatz für die Kommandozeile (als DBA müssen Sie sie beherrschen), aber sie sind äußerst hilfreich und Sie werden wirklich davon profitieren.