How to Install and configuration PostgreSQL on Ubuntu Linux
Sommario:
- Prerequisiti
- Installa PostgreSQL su Ubuntu
- Ruoli e metodi di autenticazione PostgreSQL
- Creazione di PostgreSQL Ruolo e Database
- Abilitare l'accesso remoto al server PostgreSQL
- Conclusione
PostgreSQL o Postgres è un sistema open source di gestione di database relazionali per scopi generici. PostgreSQL ha molte caratteristiche avanzate che consentono di creare applicazioni web complesse.
In questo tutorial, ti mostreremo come installare PostgreSQL su Ubuntu 18.04 ed esploreremo i fondamenti dell'amministrazione di base del database.
Prerequisiti
Prima di continuare con questo tutorial, assicurati di aver effettuato l'accesso come utente con privilegi sudo.
Installa PostgreSQL su Ubuntu
Al momento della stesura di questo articolo, l'ultima versione di PostgreSQL disponibile nei repository ufficiali di Ubuntu è PostgreSQL versione 10.4.
Per installare PostgreSQL sul tuo server Ubuntu procedi nel seguente modo:
-
Installazione di PostgreSQL
Aggiorna l'indice del pacchetto locale e installa il server PostgreSQL insieme al pacchetto contrib PostgreSQL che fornisce diverse funzionalità aggiuntive per il database PostgreSQL:
sudo apt update
sudo apt install postgresql postgresql-contrib
Verifica PostgreSQL Installazione
Una volta completata l'installazione, il servizio PostgreSQL si avvierà automaticamente.
Per verificare l'installazione cercheremo di connettersi al server di database PostgreSQL utilizzando il
psql
e stampare la versione del server:sudo -u postgres psql -c "SELECT version();"
Ruoli e metodi di autenticazione PostgreSQL
autorizzazioni di accesso database tra PostgreSQL vengono gestiti con il concetto di ruoli. Un ruolo può rappresentare un utente del database o un gruppo di utenti del database.
PostgreSQL supporta più metodi di autenticazione. I più comunemente usati sono:
- Trust - Con questo metodo, il ruolo in grado di connettersi senza password, fino a quando i criteri definiti nel
pg_hba.conf
sono met.Password - Un ruolo può collegarsi fornendo una password. Le password possono essere memorizzate comescram-sha-256
md5
epassword
(testo in chiaro) Ident: questo metodo è supportato solo su connessioni TCP / IP. Funziona ottenendo il nome utente del sistema operativo del client, con una mappatura del nome utente facoltativa.Peer: identico a Ident, ma è supportato solo su connessioni locali.
L'autenticazione client PostgreSQL è definita nel file di configurazione denominato
pg_hba.conf
. Per impostazione predefinita per le connessioni locali, PostgreSQL è impostato per utilizzare il metodo di autenticazione peer.
L'utente
postgres
viene creato automaticamente quando si installa PostgreSQL. Questo utente è il superutente per l'istanza PostgreSQL ed è equivalente all'utente root di MySQL.
Per accedere al server PostgreSQL come utente postgres primo luogo è necessario passare a l'utente postgres e poi si può accedere a una PostgreSQL rapido utilizzando l'
psql
utility:
sudo su - postgres
psql
Da qui è possibile interagire con l'istanza PostgreSQL. Per uscire da tipo PostgreSQL shell:
\q
Puoi anche accedere al prompt di PostgreSQL senza cambiare utente usando il comando
sudo
:
sudo -u postgres psql
L'utente
postgres
viene in genere utilizzato solo dall'host locale e si consiglia di non impostare la password per questo utente.
Creazione di PostgreSQL Ruolo e Database
È possibile creare nuovi ruoli dalla riga di comando utilizzando il comando
createuser
. Solo i superutente e i ruoli con privilegio
CREATEROLE
possono creare nuovi ruoli.
Nel seguente esempio, creeremo un nuovo ruolo chiamato
john
un database chiamato
johndb
e garantiremo i privilegi sul database.
-
Creare un nuovo ruolo PostgreSQL
Il seguente comando creerà un nuovo ruolo chiamato john:
sudo su - postgres -c "createuser john"
Creare un nuovo database PostgreSQL
Creare un nuovo database denominato johndb utilizzando il
createdb
comando:sudo su - postgres -c "createdb johndb"
Concedi privilegi
Per concedere le autorizzazioni all'utente
john
sul database che abbiamo creato nel passaggio precedente, connettiti alla shell PostgreSQL:sudo -u postgres psql
ed esegui la seguente query:
grant all privileges on database johndb to john;
Abilitare l'accesso remoto al server PostgreSQL
Per impostazione predefinita, il server PostgreSQL è in ascolto solo sull'interfaccia locale
127.0.0.1
. Per abilitare l'accesso remoto al server PostgreSQL aprire il file di configurazione
postgresql.conf
e aggiungere
listen_addresses = '*'
nei
CONNECTIONS AND AUTHENTICATION
sezione.
sudo vim /etc/postgresql/10/main/postgresql.conf
/etc/postgresql/10/main/postgresql.conf
#------------------------------------------------------------------------------ # CONNECTIONS AND AUTHENTICATION #------------------------------------------------------------------------------ # - Connection Settings - listen_addresses = '*' # what IP address(es) to listen on;
salvare il file e riavviare il servizio PostgreSQL con:
sudo service postgresql restart
Verifica le modifiche con l'utilità
ss
:
ss -nlt | grep 5432
LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* LISTEN 0 128:5432:*
Come puoi vedere dall'output sopra il server PostgreSQL è in ascolto su tutte le interfacce (0.0.0.0).
L'ultimo passaggio è configurare il server per accettare le connessioni remote modificando il file
pg_hba.conf
.
Di seguito sono riportati alcuni esempi che mostrano diversi casi d'uso:
/etc/postgresql/10/main/pg_hba.conf
# TYPE DATABASE USER ADDRESS METHOD # The user jane will be able to access all databases from all locations using a md5 password host all jane 0.0.0.0/0 md5 # The user jane will be able to access only the janedb from all locations using a md5 password host janedb jane 0.0.0.0/0 md5 # The user jane will be able to access all databases from a trusted location (192.168.1.134) without a password host all jane 192.168.1.134 trust
Conclusione
Hai imparato come installare e configurare PostgreSQL sul tuo server Ubuntu 18.04.
È possibile consultare la Documentazione di PostgreSQL 10.4 per avere maggiori informazioni su questo argomento.
database postgresql ubuntuCome installare postgresql su centos 7

PostgreSQL o Postgres è un sistema open source di gestione di database relazionali per scopi generici. In questo tutorial ti mostreremo due diversi metodi su come installare PostgreSQL sul tuo computer CentOS 7.
Come installare PostgreSQL su CentOS 8

In questa guida, discuteremo come installare il server di database PostgreSQL su CentOS 8. Esploreremo anche le basi dell'amministrazione del database PostgreSQL.
Come installare PostgreSQL su debian 10

Questo tutorial ti guida attraverso le fasi di installazione del server di database PostgreSQL su Debian 10. PostgreSQL, spesso noto semplicemente come Postgres, è un sistema di gestione di database relazionale di oggetti per scopi generici open source.