GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Instalación de Ubuntu 20.04 PostgreSQL

PostgreSQL es un sistema de gestión de bases de datos, similar a MySQL en muchos aspectos pero con algunas diferencias clave. Al igual que MySQL, comúnmente está alojado en Linux. En esta guía, le mostraremos cómo ejecutar un servidor PostgreSQL en Ubuntu 20.04 Focal Fossa, además de instalar la versión del cliente en caso de que solo necesite conectarse a una base de datos PostgreSQL externa.

En este tutorial aprenderás:

  • Cómo instalar PostgreSQL Client y conectarse a un servidor
  • Cómo instalar y configurar el servidor PostgreSQL

Ubuntu 20.04 PostgreSQL

Instalar cliente PostgreSQL

El Cliente PostgreSQL se puede utilizar para conectarse a una base de datos PostgreSQL externa. Utilice esta opción si ya tiene un servidor de base de datos en funcionamiento, pero necesita poder acceder de forma remota a la base de datos desde uno o más sistemas cliente.

  1. Para comenzar, instale el postgresql-client paquete abriendo una terminal e ingresando el siguiente comando:
    $ sudo apt install postgresql-client
    
  2. Cuando se completa la instalación del cliente PostgreSQL, puede usar el psql comando para conectarse a un servidor PostgreSQL remoto. Deberá especificar el nombre de host o la dirección IP del servidor remoto (que se muestra como postgre-server en el ejemplo a continuación) y el nombre de usuario (postgre-user a continuación) se está autenticando con:
    $ psql -h postgre-server -U postgre-user
    psql (12.2 (Ubuntu 12.2-1))
    SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
    Type "help" for help.
    

Eso es todo para la versión del cliente. En la siguiente sección, mostraremos cómo configurar un servidor PostgreSQL, que podrá aceptar conexiones de clientes entrantes.

Instalar servidor PostgreSQL

  1. Para comenzar a alojar su base de datos PostgreSQL, instale postgresql paquete en Ubuntu con el siguiente comando:
    $ sudo apt install postgresql
    
  2. Una vez que PostgreSQL Server haya terminado de instalarse, debería poder verlo escuchando conexiones entrantes en el puerto 5432 . Esta es una buena manera de confirmar que está funcionando como se esperaba.
    $ ss -nlt
    

    Servidor PostgreSQL escuchando en el puerto 5432

  3. De forma predeterminada, el servidor PostgreSQL se iniciará automáticamente cada vez que se inicie el sistema. Si desea cambiar este comportamiento, siempre puede modificarlo con este comando:
    $ sudo systemctl disable postgresql
    

    Para volver a habilitarlo, simplemente reemplace disable con enable .

  4. El servidor PostgreSQL solo escucha en la interfaz de loopback local 127.0.0.1 por defecto. Si planea tener uno o más clientes remotos conectados a su servidor de base de datos, deberá configurar PostgreSQL para escuchar en una interfaz de red diferente. Para realizar este cambio, abra el archivo de configuración de PostgreSQL usando nano o su editor de texto preferido:
    $ sudo nano /etc/postgresql/12/main/postgresql.conf
    
  5. En este archivo, agregue la siguiente línea en algún lugar debajo de la sección "CONEXIONES Y AUTENTICACIÓN". Esto le indicará a PostgreSQL que escuche en todas las interfaces de red las conexiones entrantes.
    listen_addresses = '*'
    

    Agregue esta línea al archivo de configuración de PostgreSQL para escuchar en todas las interfaces de red

  6. Guarde sus cambios y salga del archivo de configuración. Luego, reinicie el servidor PostgreSQL para que los cambios surtan efecto.
    $ sudo systemctl restart postgresql
    
  7. Ahora debería poder ver que PostgreSQL está escuchando en el socket 0.0.0.0:5432 . Puede confirmar esto ejecutando ss comando de nuevo:
    $ ss -nlt
    

    Confirmando que PostgreSQL ahora está escuchando conexiones de todas las interfaces en el puerto 5432

  8. A continuación, debe agregar la siguiente línea a su /etc/postgresql/12/main/pg_hba.conf archivo de configuración, que permitirá conexiones de clientes entrantes a todas las bases de datos y usuarios. El md5 La opción especifica que los usuarios deben autenticarse con una contraseña.
    host    all          all            0.0.0.0/0  md5
    

    Para agregar esta línea a su archivo con un solo comando, simplemente ejecute:

    $ sudo bash -c "echo host    all          all            0.0.0.0/0  md5 >> /etc/postgresql/12/main/pg_hba.conf" 
    
  9. Por último, si tiene habilitado el firewall UFW, puede abrir el puerto de escucha del servidor PostgreSQL 5432 a cualquier tráfico TCP entrante ejecutando el siguiente comando:
    $ sudo ufw allow from any to any port 5432 proto tcp
    Rule added
    Rule added (v6)
    

    Servidor PostgreSQL ejecutándose en Ubuntu 20.04 Focal Fossa

Conclusión

En este artículo, aprendimos cómo alojar un servidor PostgreSQL en Ubuntu 20.04 Focal Fossa Linux. También vimos cómo realizar una configuración inicial para que nuestra base de datos pudiera aceptar conexiones entrantes de cualquier fuente y cualquier usuario. Además de esto, también vimos cómo usar el paquete PostgreSQL Client para conectarse a un servidor PostgreSQL remoto.


Ubuntu
  1. Servidor de base de datos PostgreSQL

  2. ¿Instalación mínima del servidor?

  3. Cómo instalar un servidor PostgreSQL en Ubuntu 18.04

  4. GUI del servidor Ubuntu

  5. Logotipo del servidor Ubuntu

Instalación del servidor Samba en Ubuntu 14.10

Ubuntu 15.04 (Vivid Vervet) Tutorial de instalación de servidor mínimo

Instalación del servidor Samba en Ubuntu 15.10

Instalación del servidor Samba en Ubuntu 16.04 LTS

Cómo instalar PostgreSQL y pgAdmin4 en Ubuntu 20.04

Cómo instalar PostgreSQL en Ubuntu 16.04

    Requisitos de software y convenciones de la línea de comandos de Linux
    Categoría Requisitos, convenciones o versión de software utilizada
    Sistema Ubuntu 20.04 instalado o Ubuntu 20.04 Focal Fossa actualizado
    Software Servidor y cliente PostgreSQL
    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