PostgreSQL è un sistema di gestione di database relazionali a oggetti (ORDBMS) gratuito e open source disponibile per varie piattaforme, tra cui Linux, Microsoft Windows e Mac OS X.
PostgreSQL è sviluppato dal PGDG (PostgreSQL Global Development Group) e rilasciato sotto la licenza PostgreSQL, un software gratuito e open source.
In questo post vedremo come installare PostgreSQL su CentOS 8 / Rocky Linux 8 / RHEL 8.
Installa PostgreSQL su CentOS 8 / Rocky Linux 8 / RHEL 8
Puoi ottenere i pacchetti PostgreSQL per CentOS 8 / Rocky Linux 8 / RHEL 8 in due modi.
- Repository PostgreSQL ufficiale (v14, 13, 12, 11, 10)
- Repository AppStream (v13,12,10, 9.6)
Installa PostgreSQL dal repository ufficiale di PostgreSQL
La community di PostgreSQL offre pacchetti PostgreSQL per CentOS 8 / Rocky Linux 8 / RHEL 8. I pacchetti forniti da PostgreSQL sono sempre aggiornati e supportati dalla community di PostgreSQL.
Aggiungi repository PostgreSQL
Innanzitutto, installa la configurazione del repository PostgreSQL sul tuo sistema, come mostrato di seguito.
dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
Installa PostgreSQL
Quindi, installa il server PostgreSQL usando dnf
comando menzionando la sua versione postgresql<VERSION>-server
. Per questa demo, sto installando PostgreSQL 14.
dnf -qy module disable postgresql dnf install -y postgresql14-server
Dopo aver installato PostgreSQL, inizializza il database prima di usarlo per la prima volta.
/usr/pgsql-14/bin/postgresql-14-setup initdb
Risultato:
Initializing database ... OK
I dati PostgreSQL si trovano in genere nella directory /var/lib/pgsql/14/data/.
Gestisci il servizio PostgreSQL
Per avviare il servizio PostgreSQL, esegui:
systemctl start postgresql-14
Per abilitare PostgreSQL all'avvio del sistema, esegui:
systemctl enable postgresql-14
Per controllare lo stato del servizio PostgreSQL, esegui:
systemctl status postgresql-14
Configura PostgreSQL Server
Per impostazione predefinita, PostgreSQL è in ascolto su localhost. Pertanto, solo le applicazioni in esecuzione sul server possono connettersi al server del database per impostazione predefinita e impedire alle applicazioni esterne di connettersi al database.
Modifica il file di configurazione per abilitare l'accesso al servizio database per le macchine esterne.
vi /var/lib/pgsql/14/data/postgresql.conf
Imposta listen_addresses su *.
listen_addresses = '*'
Riavvia il servizio PostgreSQL.
systemctl restart postgresql-14
Conferma l'ascolto di PostgreSQL sulla porta 5432 su tutte le interfacce di rete utilizzando il comando netstat.
netstat -antup | grep 5432
Risultato:
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 4156/postmaster tcp6 0 0 :::5432 :::* LISTEN 4156/postmaster
Installa PostgreSQL dal repository AppStream
PostgreSQL è ora disponibile per RHEL 8 da Application Stream di Red Hat (rhel-8-for-x86_64-appstream-rpms) e CentOS 8 dal repository AppStream. PostgreSQL 13, 12, 10 e 9.6 sono disponibili dal repository AppStream.dnf module list postgresql
Risultato:
Name Stream Profiles Summary postgresql 9.6 client, server [d] PostgreSQL server and client module postgresql 10 [d] client, server [d] PostgreSQL server and client module postgresql 12 client, server [d] PostgreSQL server and client module postgresql 13 client, server [d] PostgreSQL server and client module Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
Installa PostgreSQL
Installa PostgreSQL usando il dnf
comando. Puoi installare un'altra versione con postgresql:stream
nel comando dnf.
# PostgreSQL 10 dnf install -y @postgresql # PostgreSQL 13 dnf install -y @postgresql:13
Dopo aver installato PostgreSQL, inizializza il database prima di usarlo per la prima volta.
/usr/bin/postgresql-setup --initdb
Risultato:
* Initializing database in '/var/lib/pgsql/data' * Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log
I dati PostgreSQL si trovano in genere nella directory /var/lib/pgsql/data.
Gestisci il servizio PostgreSQL
Per avviare il servizio PostgreSQL, esegui:
systemctl start postgresql
Per abilitare PostgreSQL all'avvio del sistema, esegui:
systemctl enable postgresql
Per controllare lo stato del servizio PostgreSQL, esegui:
systemctl status postgresql
Configura PostgreSQL Server
Per impostazione predefinita, PostgreSQL è in ascolto su localhost. Pertanto, solo le applicazioni in esecuzione sul server possono connettersi al server del database per impostazione predefinita e impedire alle applicazioni esterne di connettersi al database.
Modifica il file di configurazione per abilitare l'accesso al servizio database per le macchine esterne.
vi /var/lib/pgsql/data/postgresql.conf
Imposta listen_addresses su *.
listen_addresses = '*'
Riavvia il servizio PostgreSQL.
systemctl restart postgresql
Conferma l'ascolto di PostgreSQL sulla porta 5432 su tutte le interfacce di rete utilizzando il comando netstat.
netstat -antup | grep 5432
Risultato:
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 4156/postmaster tcp6 0 0 :::5432 :::* LISTEN 4156/postmaster
Accedi al server PostgreSQL
Per accedere o lavorare con il database, accedi come utente postgres (utente Linux) ed esegui psql
comando.
su -l postgres
Accedi al database usando il comando psql.
$ psql
Risultato:
psql (13.5) Type "help" for help. postgres=#
Imposta la password per l'utente postgres (amministratore del database).
postgres=# \password
Conclusione
È tutto. Spero che tu abbia imparato a installare PostgreSQL su CentOS 8 / Rocky Linux 8 / RHEL 8.