GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare il server PostgreSQL su RHEL 8 / CentOS 8

PostgreSQL è un sistema di gestione di database relazionale a oggetti opensource gratuito. L'obiettivo di questo tutorial è eseguire un'installazione e una configurazione di base del server PostgreSQL su server Linux RHEL 8 / CentOS 8.

In questo tutorial imparerai:

  • Come installare il server di database PostgreSQL su RHEL 8 / CentOS 8
  • Come avviare e abilitare il server di database PostgreSQL
  • Come accedere al database PostgreSQL da localhost e posizione remota
  • Come impostare la password per il postgres predefinito utente
  • Come abilitare PostgreSQL all'ascolto su tutte le reti
  • Come proteggere la connessione remota PostgreSQL con l'autenticazione della password MD5
  • Come aprire la porta del firewall PostgreSQL
  • Come stabilire una connessione remota al server PostgreSQL utilizzando psql cliente

Inizializzazione e accesso al database PostgreSQL su Red Hat Enterprise Linux 8

Requisiti e convenzioni software utilizzati

Requisiti software e convenzioni della riga di comando Linux
Categoria Requisiti, convenzioni o versione del software utilizzata
Sistema RHEL 8 / CentOS 8
Software PostgreSQL Server 10.5-1.el8
Altro Accesso privilegiato al tuo sistema Linux come root o tramite sudo comando.
Convenzioni # – richiede che i comandi linux dati vengano eseguiti con i privilegi di root direttamente come utente root o usando sudo comando
$ – richiede che i comandi linux dati vengano eseguiti come un normale utente non privilegiato

Istruzioni passo passo per l'installazione locale di PostgreSQL e l'accesso al database

  1. Installa il server PostreSQL. Esegui il seguente dnf comando per eseguire l'installazione di un pacchetto del server PostreSQL:
    # dnf install postgresql-server
    
  2. Inizializzazione database PostgreSQL:
    # postgresql-setup --initdb --unit postgresql
     * Initializing database in '/var/lib/pgsql/data'
     * Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log
    
  3. Avvia PostgreSQL e, facoltativamente, abilitalo per l'avvio dopo il riavvio.
    # systemctl start postgresql
    # systemctl enable postgresql
    

    A questo punto il server PostreSQL dovrebbe essere attivo e funzionante e in ascolto sulla porta localhost 5432 . Usa ss comando per confermare che questo è il caso:

    $ ss -nlt
    State  Recv-Q  Send-Q     Local Address:Port     Peer Address:Port  
    LISTEN 0       128              0.0.0.0:111           0.0.0.0:*     
    LISTEN 0       32         192.168.122.1:53            0.0.0.0:*     
    LISTEN 0       128              0.0.0.0:22            0.0.0.0:*     
    LISTEN 0       128            127.0.0.1:5432          0.0.0.0:*     
    LISTEN 0       128                 [::]:111              [::]:*     
    LISTEN 0       128                 [::]:22               [::]:*     
    LISTEN 0       128                [::1]:5432             [::]:*
    
  4. Accedi al database PostreSQL. Quando installi il database PostgreSQL sul tuo sistema RHEL 8 / CentOS 8, il programma di installazione creerà automaticamente anche un nuovo utente predefinito postgres .

    La password predefinita per postgres l'utente non è impostato, quindi è vuoto. Per accedere al database PostgreSQL prima esegui su comando come utente root per passare all'utente postres. Quindi, digita psql per accedere al database.

    NOTA
    Qualsiasi tentativo di accedere al database PostgreSQL come utente root risulterà in psql: FATAL: role "root" does not exist messaggio di errore.

    Esempio:

    # su - postgres
    $ psql
    psql (10.5)
    Type "help" for help.
    
    postgres=#
    
    NOTA
    Per uscire dalla shell del database PostreSQL, digitare \q oppure premi CTRL+d combinazione di tasti.

Accesso remoto al database PostgreSQL e connessione sicura

  1. Imposta la password per postgres utente. Per accedere da remoto al server PostreSQL, imposteremo prima la password per il postres utente:
    # su - postgres
    $ psql
    psql (10.5)
    Type "help" for help.
    
    postgres=# \password postgres
    Enter new password: 
    Enter it again: 
    postgres=# exit
    postgres-# \q
    
  2. Abilita il server PostgreSQL all'ascolto su tutte le reti disponibili.Modifica il file di configurazione principale /var/lib/pgsql/data/postgresql.conf :
    # nano /var/lib/pgsql/data/postgresql.conf
    

    Una volta pronto, aggiungi la seguente riga da qualche parte a CONNESSIONI E AUTENTICAZIONE sezione:

    listen_addresses = '*'
    
    AVVISO
    La configurazione precedente consentirà a PostreSQL di essere in ascolto su tutte le reti disponibili. Si consiglia di impostare regole più rigide per consentire l'accesso a PostgreSQL solo da reti selezionate.

    Usa ss comando per confermare che PostgreSQL è in ascolto su 0.0.0.0 rete:

    $ ss -nlt
    State  Recv-Q  Send-Q     Local Address:Port     Peer Address:Port  
    LISTEN 0       128              0.0.0.0:111           0.0.0.0:*     
    LISTEN 0       32         192.168.122.1:53            0.0.0.0:*     
    LISTEN 0       128              0.0.0.0:22            0.0.0.0:*     
    LISTEN 0       128            0.0.0.0:5432          0.0.0.0:*     
    LISTEN 0       128                 [::]:111              [::]:*     
    LISTEN 0       128                 [::]:22               [::]:*     
    LISTEN 0       128                [::]:5432             [::]:*
    
  3. Abilita l'autenticazione della password con crittografia MD5:
    # echo "host all all 0.0.0.0/0  md5" >> /var/lib/pgsql/data/pg_hba.conf
    
  4. Applica le modifiche alla configurazione di PostgreSQL:
    # systemctl restart postgresql
    
  5. Apri la porta del firewall 5432 per un traffico in entrata PostgreSQL remoto:
    # firewall-cmd --zone=public --permanent --add-service=postgresql
    # firewall-cmd --reload
    
  6. Connettiti al server del database PostgreSQL da una posizione remota. Prima installa psql Strumento client PostgreSQL sul tuo host remoto:
    RHEL/CENTOS
    # dnf install postgresql
    UBUNTU/DEBIAN
    # apt install postgresql-client
    

    Crea una connessione remota all'host, ad es. 192.168.1.151 come postgres utente e password utente come definito nel Passaggio 1 sopra :

    $ psql -h 192.168.1.151 -U postgres
    Password for user postgres: 
    psql (10.6 (Ubuntu 10.6-0ubuntu0.18.04.1), server 10.5)
    Type "help" for help.
    
    postgres=# 
    

Cent OS
  1. Come installare PostgreSQL su CentOS 7

  2. Come installare Puppet su CentOS 8 / RHEL 8

  3. Come installare PostgreSQL 10 su CentOS 6 / RHEL 6

  4. Come installare PostgreSQL su CentOS 7 / RHEL 7

  5. Come installare Puppet 6.x su CentOS 7 / RHEL 7

Come installare il server Redis su CentOS 8 / RHEL 8

Come installare Zabbix Server 4.x su CentOS 6 / RHEL 6

Come installare phpPgAdmin 5.6 su CentOS 7 / RHEL 7

Come installare Zabbix Server 5.0/4.0 su CentOS 7/RHEL 7

Come installare PostgreSQL Database Server CentOS 8

Come installare PostgreSQL su CentOS 6