Zoeken op website

PostgreSQL en pgAdmin4 installeren in Ubuntu 20.04


Deze handleiding leidt u door de instructies voor het installeren van PostgreSQL 12 relationele en objectgeoriënteerde databasebeheersystemen en pgAdmin4, een veelgebruikte webgebaseerde PostgreSQL databaseserverbeheertool. We zullen laten zien hoe u de nieuwste versie van pgAdmin4, v4.23, installeert.

Vereisten:

  • Ubuntu 20.04 Serverinstallatie
  • Ubuntu 20.04 Desktop-installatie

Laten we beginnen…

PostgreSQL installeren in Ubuntu 20.04

Log in op uw Ubuntu-systeem en update de systeemsoftwarepakketten met behulp van de volgende apt-opdracht.

sudo apt update

Installeer nu de nieuwste versie van PostgreSQL vanuit de standaard Ubuntu-opslagplaatsen.

sudo apt install postgresql

Tijdens de installatie zal het installatieprogramma een nieuw PostgreSQL-cluster aanmaken (een verzameling databases die worden beheerd door een enkele serverinstantie), waardoor de database wordt geïnitialiseerd. De standaardgegevensmap is /var/lib/postgresql/12/main en de configuratiebestanden worden opgeslagen in de map /etc/postgresql/12/main.

Nadat PostgreSQL is geïnstalleerd, kunt u bevestigen dat de PostgreSQL-service actief is, actief is en is ingeschakeld onder systemd met behulp van de volgende systemctl-opdrachten:

sudo systemctl is-active postgresql
sudo systemctl is-enabled postgresql
sudo systemctl status postgresql

Controleer ook als volgt of de Postgresql-server gereed is om verbindingen van clients te accepteren:

sudo pg_isready

Database maken in PostgreSQL

Om een nieuwe database in PostgreSQL te maken, heeft u toegang nodig tot het PostgreSQL database shell (psql) programma. Schakel eerst over naar het postgres systeemgebruikersaccount en voer de psql opdracht als volgt uit:

sudo su - postgres
psql
postgres=# 

Maak nu een nieuwe database en een gebruiker aan met behulp van de volgende opdrachten.

postgres=# CREATE USER tecmint WITH PASSWORD 'securep@wd';
postgres=# CREATE DATABASE tecmintdb;
postgres=# GRANT ALL PRIVILEGES ON DATABASE tecmintdb to tecmint;
postgres=# \q

PostgreSQL-clientverificatie configureren

PostgreSQL gebruikt clientauthenticatie om te beslissen welke gebruikersaccounts verbinding kunnen maken met welke databases vanaf welke hosts en dit wordt beheerd door instellingen in het configuratiebestand voor clientauthenticatie, dat zich op Ubuntu bevindt op /etc/postgresql /12/main/pg_hba.conf.

Open dit bestand met uw favoriete teksteditor, zoals weergegeven.

sudo vim /etc/postgresql/12/main/pg_hba.conf

PostgreSQL gebruikt vele soorten clientauthenticatiemethoden, waaronder peer, ident, wachtwoord en md5 (lees de PostgreSQL 12-documentatie voor een gedetailleerde uitleg van elke methode).

md5 is het veiligst en wordt aanbevolen omdat de client hiervoor een dubbel MD5-gehasht wachtwoord moet opgeven voor authenticatie. Zorg er dus voor dat de onderstaande gegevens md5 als under-methode hebben:

host    all             all             127.0.0.1/32            md5
IPv6 local connections:
host    all             all             ::1/128                	md5

Nadat u wijzigingen heeft aangebracht in het configuratiebestand voor clientauthenticatie, moet u de PostgreSQL-service opnieuw starten.

sudo systemctl restart postgresql

PgAdmin4 installeren in Ubuntu

pgAdmin4 is niet beschikbaar in de Ubuntu-opslagplaatsen. We moeten het installeren vanuit de pgAdmin4 APT repository. Begin met het opzetten van de repository. Voeg de openbare sleutel voor de repository toe en maak het repositoryconfiguratiebestand.

 
curl https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo apt-key add
sudo sh -c 'echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list && apt update'

Installeer vervolgens pgAdmin4,

$sudo apt install pgadmin4

Met de bovenstaande opdracht worden een groot aantal vereiste pakketten geïnstalleerd, waaronder de Apache2 webserver om de pgadmin4-web-applicatie in webmodus te bedienen.

Zodra de installatie is voltooid, voert u het webinstallatiescript uit dat wordt meegeleverd met het binaire pakket pgdmin4, om het systeem zo te configureren dat het in de webmodus werkt. U wordt gevraagd een pgAdmin4 login-e-mailadres en wachtwoord aan te maken, zoals weergegeven in de onderstaande schermafbeelding.

Dit script configureert Apache2 voor de pgAdmin4 webapplicatie, waarbij de WSGI module wordt ingeschakeld en de pgAdmin applicatie wordt geconfigureerd te mounten op pgadmin4 op de webserver, zodat je er toegang toe hebt via:

http://SERVER_IP/pgadmin4

Het start ook de Apache2-service opnieuw om de recente wijzigingen toe te passen.

Vergeet niet om [email  te vervangen door uw e-mailadres en ook een sterk, veilig wachtwoord in te stellen:

sudo /usr/pgadmin4/bin/setup-web.sh

Toegang tot de pgAdmin4-webinterface

Om toegang te krijgen tot de webapplicatie-interface pgAdmin4 opent u een webbrowser en gebruikt u het volgende adres om te navigeren:

http://SERVER_IP/pgadmin4

Zodra de inlogpagina is geladen, voert u het e-mailadres en wachtwoord in dat u in de vorige sectie hebt aangemaakt tijdens het configureren van pgAdmin4 om in de webmodus te werken.

Na een succesvolle login komt u terecht in het dashboard van de pgAdmin4 webapplicatie. Om verbinding te maken met een server, klikt u op Nieuwe server toevoegen zoals gemarkeerd in de volgende schermafbeelding.

Voer vervolgens de verbinding in bij Algemene instellingen (Naam, Servergroep en een opmerking). Klik vervolgens op Verbindingen zoals gemarkeerd in de volgende schermafbeelding.

Voer vervolgens de hostnaam/het adres van de PostgreSQL-databaseserver en het poortnummer in (laat 5432 staan om de standaard te gebruiken), selecteer de Onderhoud-database (die postgres zou moeten zijn >), voer de gebruikersnaam en het wachtwoord van de database in.

Als de toegangsgegevens voor de database OK zijn en de configuratie van de server-client-authenticatie ook, dan zou pgAdmin4 succesvol verbinding moeten maken met de databaseserver.

Dat is alles! Zie de PostgreSQL 12-documentatie en pgAdmin 4-documentatie voor meer informatie. Vergeet niet om uw mening met ons te delen via het commentaar hieronder.