Administration af databaser fra kommandolinjen kommer med en indlæringskurve for at få mest muligt ud af det.
Kommandolinjen kan nogle gange være besværlig, og visningen er muligvis ikke optimal til det, du laver.
At gennemse databaser og tabeller, tjekke indekser eller brugerrettigheder, overvåge, administrere og endda kodning kan blive rigtig rodet, når man forsøger at håndtere det gennem konsollen.
Det er ikke fordi, du ikke behøver at administrere kommandolinjekommandoer (det er helt sikkert et must), men der er nogle værktøjer, der kan hjælpe dig med at fremskynde mange af de daglige DBA-opgaver.
Lad os se på, hvad disse værktøjer går ud på, og gennemgå nogle af dem.
Hvad er et GUI-værktøj?
En GUI eller Graphical User Interface er en software, der forenkler brugernes opgaver gennem grafiske ikoner og visuelle indikatorer. Handlingerne udføres ved at bruge grafiske elementer.
Hvorfor skal jeg bruge et GUI-værktøj?
Brug af en GUI er ikke et must, men det kan være nyttigt. En af de vigtigste fordele ved GUI'erne er, at de generelt er nemmere at lære end mange kommandoer, og sandsynligvis kunne én handling på GUI'en generere nogle få kommandoer til at udføre opgaven.
En anden fordel kunne være, at GUI'en er mere venlig end kommandolinjen, og i de fleste tilfælde behøver du ikke nogen programmerings- eller systemadministratorviden for at bruge den.
Men du bør være forsigtig, før du udfører en opgave fra GUI, for ved at bruge den forkerte knap, kan du generere et stort problem som at slette en tabel; og af denne grund skal du være forsigtig, når du bruger denne slags værktøj.
Top GUI-værktøjer til PostgreSQL
Lad os nu se nogle af de mest almindelige GUI-værktøjer til PostgreSQL.
Bemærk, at for installationseksemplerne tester vi det på Ubuntu 18.04 Bionic.
pgAdmin
pgAdmin er en af de mest populære Open Source-administrations- og udviklingsplatforme til PostgreSQL.
Det er designet til at imødekomme behovene hos både nybegyndere og erfarne PostgreSQL-brugere og giver en kraftfuld grafisk grænseflade, der forenkler oprettelsen, vedligeholdelsen og brugen af databaseobjekter.
Det er understøttet på Linux, Mac OS X og Windows. Det understøtter alle PostgreSQL-funktioner, fra at skrive simple SQL-forespørgsler til at udvikle komplekse databaser. Den er designet til at forespørge i en aktiv database, så du kan holde dig opdateret med ændringer og implementeringer. pgAdmin 4, den nuværende version, kan administrere PostgreSQL 9.2 og nyere.
Funktioner
- Visning af grafisk forespørgselsplan
- Giv guide til hurtige opdateringer til ACL'er
- Procedursprog debugger
- Automatisk vakuumstyring
- Overvågningskontrolpanel
- Sikkerhedskopier, gendan, støvsug og analyser efter behov
- SQL/shell/batchjobplanlægningsagent
- Automatisk registrering og understøttelse af objekter, der er opdaget under kørsel
- Et live SQL-forespørgselsværktøj med direkte dataredigering
- Support til administrative forespørgsler
- En syntaksfremhævende SQL-editor
- Redesignede grafiske grænseflader
- Kraftfulde styringsdialoger og værktøjer til almindelige opgaver
- Responsiv, kontekstfølsom adfærd
- Understøttende fejlmeddelelser
- Nyttige tip
- Online hjælp og information om brug af pgAdmin-dialoger og værktøjer
Installation
Først skal vi importere lagernøglen.
$ sudo apt-get install curl ca-certificates
$ curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Og opret filen /etc/apt/sources.list.d/pgdg.list. Distributionerne kaldes kodenavn-pgdg. I vores eksempel skal det være bionisk-pgdg.
$ deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main
For at bestemme kodenavnet på din distribution kan du køre kommandoen lsb_release -c.
Herefter skal du opdatere pakkelisterne og installere pgadmin-pakken:
$ sudo apt-get update
$ sudo apt-get install pgadmin4
Så behøver du kun at køre pgadmin4-kommandoen:
$ pgadmin4
Konfiguration
Installationen opretter en pgAdmin-server, der lytter i en bestemt port. Denne port ændres hver gang du kører pgadmin4-kommandoen. Når programmet kører, kan du administrere din database fra en webgrænseflade, som du får adgang til via pgAdmin-ikonet på proceslinjen.
For at oprette forbindelse til din database skal du vælge Tilføj ny server og udfylde forbindelsesoplysningerne.
Derefter kan du administrere din database ved hjælp af pgAdmin 4.
Designet ser godt ud, og det er en intuitiv grænseflade. Diagrammerne på hovedskærmen kan hjælpe med at opdage nogle problemer på dit system.
Installationen kræver tilføjelse af et lager, så det kan kræve nogle yderligere færdigheder.
ClusterControl
ClusterControl understøtter implementering, administration, overvågning og skalering til PostgreSQL.
Hver implementeret PostgreSQL forekomst konfigureres automatisk ved hjælp af ClusterControls brugervenlige peg-og-klik-grænseflade.
Du kan administrere sikkerhedskopier, køre forespørgsler og udføre avanceret overvågning af alle master og slaver; alt sammen med automatiseret failover, hvis noget går galt.
Automatiseringsfunktionerne i ClusterControl lader dig nemt opsætte et PostgreSQL-replikeringsmiljø, hvor du kan tilføje nye replikeringsslaver fra bunden eller bruge dem, der allerede er konfigureret.
Det giver dig også mulighed for at promovere mestre og genopbygge slaver.
Der er to versioner: Community Edition eller Enterprise Edition.
Funktioner
- Sikkerhedskopiering
- Overvågning og advarsel
- Implementering og skalering
- Opgraderinger og patching
- Sikkerhed og overholdelse
- Driftsrapportering
- Konfigurationsstyring
- Automatisk gendannelse og reparation
- Performancestyring
- Automatiske præstationsrådgivere
Installation
Til installationen kan du bruge den automatiske, manuelle eller offline installation.
I dette eksempel vil vi bruge den automatiske installation.
Du skal downloade følgende script og køre det med root-rettigheder på ClusterControl-serveren:
$ wget http://www.severalnines.com/downloads/cmon/install-cc
$ chmod +x install-cc
$ sudo ./install-cc
Derefter skal du udfylde oplysningerne, såsom adgangskoder eller konfiguration, og det er gjort.
Konfiguration
Når installationen er færdig, bør du være i stand til at åbne ClusterControl UI på webbrowseren ved at bruge værtsnavnet eller IP-adressen på din server, f.eks.:http://192.168.100.191/clustercontrol/
Her kan du udføre adskillige opgaver som implementering, import, overvågning og endnu mere.
Når du har din PostgreSQL -klynge importeret eller implementeret af ClusterControl, kan du administrere den fra en komplet, venlig webgrænseflade.
Den kører på en server, så du kan bruge den overalt. Al software installeres af ClusterControl, så du behøver ikke at foretage nogen installation manuelt.
Administrator
Adminer er et komplet databasestyringsværktøj skrevet i PHP.
Den består af en enkelt fil, der er klar til at blive implementeret på målserveren.
Adminer er tilgængelig for MySQL, MariaDB, PostgreSQL, SQLite, MS SQL, Oracle, Firebird, SimpleDB, Elasticsearch og MongoDB. Den nuværende version er 4.7, og den blev udgivet i november.
Funktioner
- Opret forbindelse til en databaseserver med brugernavn og adgangskode
- Vælg en eksisterende database, eller opret en ny
- Liste felter, indekser, fremmednøgler og triggere for en tabel
- Skift navn, motor, sortering, auto_increment og kommentar til tabellen
- Rediger navn, type, sortering, kommentar og standardværdier for kolonner
- Tilføj og slip tabeller og kolonner
- Opret, rediger, slip og søg efter indekser inklusive fuldtekst
- Opret, rediger, slip og link lister med fremmednøgler
- Opret, rediger, slip og vælg fra visninger
- Opret, rediger, slip og kald lagrede procedurer og funktioner
- Opret, rediger og slip triggere
- List data i tabeller med søge-, aggregerings-, sorterings- og begrænsningsresultater
- Indsæt nye poster, opdater og slet de eksisterende
- Understøtter alle datatyper, blobs gennem filoverførsel
- Udfør enhver SQL-kommando fra et tekstfelt eller en fil
- Eksporter tabelstruktur, data, visninger, rutiner, databaser til SQL eller CSV
- Udskriv databaseskema forbundet med fremmednøgler
- Vis processer og dræb dem
- Vis brugere og rettigheder, og skift dem
- Vis variabler med links til dokumentation
- Administrer begivenheder og tabelpartitioner
- PostgreSQL
- Skemaer, sekvenser, brugertyper
- Omfattende tilpasningsmuligheder
Installation
Det kører på en webserver, så først skal du installere Apache2, php, php-pdo og php-pgsql-pakker.
$ sudo apt install apache2 php php-pdo php-pgsql
Vi skal downloade PHP-filen fra Adminer-websiden:
$ wget https://github.com/vrana/adminer/releases/download/v4.7.1/adminer-4.7.1.php
Og vi skal flytte PHP-filen til vores apache-dokumentrod:
$ sudo mv adminer-4.7.1.php /var/www/html/adminer.php
Hvis du derefter installerer det på din lokale maskine, skal du åbne URL'en http://localhost/adminer.php i din webbrowser.
Konfiguration
For at begynde at bruge værktøjet skal du logge ind på din database.
Efter login kan du se følgende webside.
Installationen er virkelig nem, fordi du kun behøver at lægge PHP-filen i dokumentroden på din webserver, men grænsefladen ser lidt gammeldags ud.
Det er en webapplikation, så du kan kun få adgang til den overalt ved at bruge en webbrowser.
SQL Workbench/J
SQL Workbench/J er et gratis, DBMS-uafhængigt SQL-forespørgselsværktøj på tværs af platforme.
Det er skrevet i Java og bør køre på ethvert operativsystem, der leverer et Java Runtime Environment.
Dens hovedfokus er på at køre SQL scripts og eksport/import funktioner. Grafisk opbygning af forespørgsler eller mere avancerede DBA-opgaver er ikke i fokus og er ikke planlagt.
Funktioner
- Rediger, indsæt og slet data direkte i forespørgselsresultatet
- Kraftfuld eksportkommando til at skrive tekstfiler, XML, HTML eller SQL.
- Alle brugertabeller kan eksporteres til en mappe med en enkelt kommando. Eksportfiler kan komprimeres "on-the-fly".
- Kraftfuld import af tekst, XML og regneark. Et sæt filer kan importeres fra en mappe med en enkelt kommando. Fremmednøglebegrænsninger detekteres for at indsætte dataene i den rigtige rækkefølge
- Sammenlign to databaseskemaer for forskelle. XML-outputtet kan transformeres til de relevante SQL ALTER-sætninger ved hjælp af XSLT
- Sammenlign dataene fra to databaser, og generer de nødvendige SQL-sætninger for at migrere den ene til den anden.
- Understøtter kørsel af SQL-scripts i batch-tilstand
- Understøtter kørsel i konsoltilstand
- Søg efter tekst i procedure, visning og andre kilder ved hjælp af en SQL-kommando eller en GUI
- Søg efter data på tværs af alle kolonner i alle tabeller ved hjælp af en SQL-kommando eller en GUI
- Omformatering af SQL-sætninger
- Vælg rækker fra relaterede tabeller i henhold til deres fremmednøgledefinitioner
- Værktøjstip til INSERT-sætninger for at vise den tilsvarende værdi eller kolonne
- Kopiér data direkte mellem til databaseservere ved hjælp af en SQL-kommando eller en GUI
- Makroer til ofte brugte SQL-sætninger
- Variabelsubstitution i SQL-sætninger, inklusive smart prompt for værdier
- Autofuldførelse for tabeller og kolonner i SQL-sætninger
- Vis databaseobjekter og deres definitioner
- Vis tabelkilde
- Vis visning, procedure og udløserkildekode
- Vis begrænsninger for fremmednøgle mellem tabeller
- Fuld understøttelse af BLOB-data i forespørgselsresultater, SQL-sætninger, eksport og import.
Installation
Den er skrevet på Java, så du skal bruge denne software for at køre den.
Først skal du kontrollere, om du har Java installeret på dit system:
$ java --version
Derefter skal du downloade SQL Workbench-pakken:
$ wget https://www.sql-workbench.eu/Workbench-Build124.zip
$ unzip -d sqlworkbench Workbench-Build124.zip
For at køre det, skal du udføre jar-filen med navnet sqlworkbench.jar ved hjælp af java-kommandoen med jar-flaget:
$ java -jar sqlworkbench/sqlworkbench.jar
Konfiguration
For at oprette forbindelse til din PostgreSQL-database skal du downloade JDBC-driveren:
$ wget https://jdbc.postgresql.org/download/postgresql-42.2.5.jar
$ mv postgresql-42.2.5.jar sqlworkbench/
Og konfigurer driveren i din SQL Workbench. For dette skal du gå til Filer -> Administrer drivere -> Vælg PostgreSQL og vælg driveren.
Gå derefter til Filer -> Tilslut vinduet, og udfyld forbindelsesprofiloplysningerne.
Når forbindelsen er afsluttet, kan du administrere din database ved hjælp af den.
Installationen er nem, men du skal downloade driveren og konfigurere den manuelt. Desuden er grænsefladen ikke for venlig.
DBeaver
DBeaver er gratis og open source universelt databaseværktøj til udviklere og databaseadministratorer.
Understøtter alle populære databaser:MySQL, PostgreSQL, MariaDB, SQLite, Oracle, DB2, SQL Server, Sybase, MS Access, Teradata, Firebird, Derby osv.
Brugervenlighed er hovedmålet med dette projekt, programmets brugergrænseflade er omhyggeligt designet og implementeret. Den er baseret på en opensource-ramme og tillader skrivning af forskellige udvidelser (plugins). Det understøtter enhver database med en JDBC-driver. Der er to versioner:Community Edition og Enterprise Edition.
Funktioner
- Forbindelsesadministrator
- Metadatabrowser
- SQL Editor
- Data viewer/editor
- Data-/metadatasøgning
- Sammenligning af databasestruktur
- Dataoverførsel (eksport/import)
- ER-diagrammer
- Forespørgselsadministrator
- Projekter
- Ekstra visninger
- Chaufføradministrator
- Understøttede relationsdatabaser
- Understøttede NoSQL-databaser
- Understøttede operativsystemer
- PostgreSQL
- Forklar udførelsesplan
- Kilde til lagrede procedurer
- Viser DDL
- Sekvenser
Installation
Først skal du downloade pakken og installere den:
$ wget https://dbeaver.io/files/dbeaver-ce_latest_amd64.deb
$ dpkg -i dbeaver-ce_latest_amd64.deb
Og så skal du bare køre følgende kommando for at åbne programmet:
$ dbeaver
Konfiguration
Når du kører programmet for første gang, skal du konfigurere din databaseforbindelse.
Så du skal vælge PostgreSQL og udfylde oplysningerne.
Derefter skal du downloade driverfilerne ved at vælge Test forbindelse. Du bør modtage følgende besked efter testen.
Når du er færdig med konfigurationen, kan du administrere din database ved at bruge DBeaver-applikationen.
Installationen er i bund og grund et stykke kage, og grænsefladen ser venlig og intuitiv ud.
Navicat
Navicat til PostgreSQL er et letanvendeligt grafisk værktøj til PostgreSQL-databaseudvikling.
Dette værktøj passer til alle, fra begyndere til seniorer, og passer til alle opgaver fra simple forespørgsler til udvikling. Opret forbindelse til lokale/fjerne PostgreSQL-servere og er kompatibel med cloud-databaser som Amazon Redshift, Amazon Aurora, Amazon RDS, Google Cloud, Microsoft Azure, Alibaba Cloud, Tencent Cloud og Huawei Cloud og alle PostgreSQL-databaseobjekter. Det er en betalt applikation, men du kan bruge prøveversionen til at teste den.
Funktioner
- Understøtter PostgreSQL 7.3 eller nyere og Cloud-tjenester som blandt andet AWS, Google Cloud eller Microsoft Azure.
- Sikker forbindelse:SSH/HTTP/SSL
- Navicat Cloud
- Data Viewer og Editor
- SQL-behandling
- Datamodellering
- Import/eksport
- Datamanipulation
- Sikkerhedskopiering/gendannelse
- Automatisering
- Administrer bruger
- Serverovervågning
Installation
Først skal vi downloade Navicat-pakken og komprimere den.
$ wget http://download3.navicat.com/download/navicat121_pgsql_en_x64.tar.gz
$ tar zxvf navicat121_pgsql_en_x64.tar.gz
Derefter skal vi køre start_navicat-scriptet for at starte det.
$ cd navicat121_pgsql_en_x64
$ ./start_navicat
Dette vil bruge Wine til at køre Navicat-applikationen, og det kan bede dig om at installere noget påkrævet afhængighed under initialiseringen.
Konfiguration
Når du åbner applikationen, skal du oprette en ny forbindelse.
Gå til Forbindelse -> PostgreSQL og udfyld oplysningerne.
Herefter kan du begynde at bruge programmet til at administrere din database.
Softwaren kører over Wine på Linux, og prøveperioden er i 14 dage. Grænsefladen ser smuk og venlig ud.
Konklusion
I denne blog har vi gennemgået nogle af de mest almindelige GUI-værktøjer til PostgreSQL.
Uanset det faktum, at det ikke er obligatorisk at bruge et GUI-værktøj, kan det hjælpe dig med at lette nogle af de daglige DBA-opgaver ved at give dig en mere venlig måde at styre tingene på.
Disse værktøjer er ikke en erstatning for kommandolinjen (som DBA skal du mestre den), men de er yderst hjælpsomme, og du vil virkelig drage fordel af dem.