GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar el servidor PostgreSQL en RHEL 8 / CentOS 8

PostgreSQL es un sistema de gestión de base de datos relacional de objetos de código abierto y gratuito. El objetivo de este tutorial es realizar una instalación y configuración básica del servidor PostgreSQL en el servidor RHEL 8 / CentOS 8 Linux.

En este tutorial aprenderás:

  • Cómo instalar el servidor de base de datos PostgreSQL en RHEL 8 / CentOS 8
  • Cómo iniciar y habilitar el servidor de base de datos PostgreSQL
  • Cómo acceder a la base de datos PostgreSQL desde un host local y una ubicación remota
  • Cómo configurar la contraseña para el postgres predeterminado usuario
  • Cómo habilitar PostgreSQL para escuchar en todas las redes
  • Cómo proteger la conexión remota de PostgreSQL con autenticación de contraseña MD5
  • Cómo abrir el puerto del cortafuegos de PostgreSQL
  • Cómo establecer una conexión remota al servidor PostgreSQL usando psql cliente

Inicializar y acceder a la base de datos PostgreSQL en Red Hat Enterprise Linux 8

Requisitos de software y convenciones utilizadas

Instalación local de PostgreSQL y acceso a la base de datos instrucciones paso a paso

  1. Instale el servidor PostreSQL. Ejecute el siguiente dnf comando para realizar una instalación del paquete del servidor PostreSQL:
    # dnf install postgresql-server
    
  2. Inicialice la base de datos PostgreSQL:
    # postgresql-setup --initdb --unit postgresql
     * Initializing database in '/var/lib/pgsql/data'
     * Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log
    
  3. Inicie PostgreSQL y, opcionalmente, habilítelo para que se inicie después de reiniciar.
    # systemctl start postgresql
    # systemctl enable postgresql
    

    En este punto, el servidor PostreSQL debería estar funcionando y escuchando en el puerto localhost 5432 . Usa ss comando para confirmar que este es el 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. Acceda a la base de datos de PostreSQL. Cuando instale la base de datos de PostgreSQL en su sistema RHEL 8 / CentOS 8, el instalador también creará automáticamente un nuevo usuario predeterminado postgres .

    La contraseña predeterminada para postgres el usuario no está configurado, por lo tanto, está vacío. Para acceder a la base de datos PostgreSQL primero ejecute su comando como usuario root para cambiar al usuario postres. Luego, escribe psql para iniciar sesión en la base de datos.

    NOTA
    Cualquier intento de acceder a la base de datos de PostgreSQL como usuario root resultará en psql: FATAL: role "root" does not exist mensaje de error.

    Ejemplo:

    # su - postgres
    $ psql
    psql (10.5)
    Type "help" for help.
    
    postgres=#
    
    NOTA
    Para salir del shell de la base de datos PostreSQL, escriba \q o presiona CTRL+d combinación de teclas.

Acceso remoto a base de datos PostgreSQL y conexión segura

  1. Establecer contraseña para postgres usuario. Para acceder al servidor PostreSQL de forma remota, primero estableceremos la contraseña para postres usuario:
    # su - postgres
    $ psql
    psql (10.5)
    Type "help" for help.
    
    postgres=# \password postgres
    Enter new password: 
    Enter it again: 
    postgres=# exit
    postgres-# \q
    
  2. Habilite el servidor PostgreSQL para escuchar en todas las redes disponibles. Edite el archivo de configuración principal /var/lib/pgsql/data/postgresql.conf :
    # nano /var/lib/pgsql/data/postgresql.conf
    

    Una vez que esté listo, agregue la siguiente línea en algún lugar de CONEXIONES Y AUTENTICACIÓN sección:

    listen_addresses = '*'
    
    ADVERTENCIA
    La configuración anterior permitirá que PostreSQL escuche en todas las redes disponibles. Se recomienda establecer reglas más estrictas para permitir el acceso a PostgreSQL solo desde las redes seleccionadas.

    Usa ss comando para confirmar que PostgreSQL está escuchando en 0.0.0.0 red:

    $ 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. Habilite la autenticación de contraseña cifrada MD5:
    # echo "host all all 0.0.0.0/0  md5" >> /var/lib/pgsql/data/pg_hba.conf
    
  4. Aplicar cambios de configuración de PostgreSQL:
    # systemctl restart postgresql
    
  5. Abrir el puerto del cortafuegos 5432 para un tráfico entrante de PostgreSQL remoto:
    # firewall-cmd --zone=public --permanent --add-service=postgresql
    # firewall-cmd --reload
    
  6. Conéctese al servidor de base de datos PostgreSQL desde una ubicación remota. Primero instale psql Herramienta de cliente PostgreSQL en su host remoto:
    RHEL/CENTOS
    # dnf install postgresql
    UBUNTU/DEBIAN
    # apt install postgresql-client
    

    Cree una conexión remota al host, por ejemplo. 192.168.1.151 como postgres usuario y contraseña de usuario como se define en el Paso 1 anterior :

    $ 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. Cómo instalar PostgreSQL en CentOS 7

  2. Cómo instalar Puppet en CentOS 8 / RHEL 8

  3. Cómo instalar PostgreSQL 10 en CentOS 6 / RHEL 6

  4. Cómo instalar PostgreSQL en CentOS 7 / RHEL 7

  5. Cómo instalar Puppet 6.x en CentOS 7 / RHEL 7

Cómo instalar el servidor Redis en CentOS 8 / RHEL 8

Cómo instalar Zabbix Server 4.x en CentOS 6 / RHEL 6

Cómo instalar phpPgAdmin 5.6 en CentOS 7 / RHEL 7

Cómo instalar el servidor Zabbix 5.0/4.0 en CentOS 7/RHEL 7

Cómo instalar el servidor de base de datos PostgreSQL CentOS 8

Cómo instalar PostgreSQL en CentOS 6

    Requisitos de software y convenciones de la línea de comandos de Linux
    Categoría Requisitos, convenciones o versión de software utilizada
    Sistema RHEL 8 / CentOS 8
    Software Servidor PostgreSQL 10.5-1.el8
    Otro Acceso privilegiado a su sistema Linux como root o a través de sudo comando.
    Convenciones # – requiere que los comandos de Linux dados se ejecuten con privilegios de root, ya sea directamente como usuario root o mediante el uso de sudo comando
    $ – requiere que los comandos de Linux dados se ejecuten como un usuario normal sin privilegios