Como instalar PostgreSQL en Ubuntu 22.04

Hoy os traigo un tutorial donde voy a enseñaros a instalar un motor de bases de datos PostgreSQL sobre Ubuntu 22.04.

Requisitos

Para seguir este tutorial es necesario disponer de los siguientes requisitos:

  • Ubuntu 22.04.
  • Usuario con privilegios de sudo.
  • Conexión a Internet para descargar los paquetes a instalar.

Como siempre os dejaré el tutorial en 2 formatos, en video y en imágenes para que elijáis el método que prefiráis 😉

Videotutorial

Si te gusta este tipo de contenido te agradecería tu apoyo suscribiéndote al canal de Youtube para poder seguir creando contenido que seguro te será de mucha utilidad y te ayudará en tu día a día.

Tutorial paso a paso en imágenes

Instalación de PostgreSQL

El primer paso es actualizar nuestros repositorios.

sudo apt update

A continuación vamos a instalar PostgreSQL desde los repositorios oficiales de Ubuntu.

sudo apt install -y postgresql

Una vez tenemos instalado PostgreSQL con todas sus dependencias vamos a comprobar que el servicio del motor de base de datos se encuentra en ejecución.

systemctl status postgresql

Nota: por defecto en la instalación PostgreSQL se auto configura para que se inicie automáticamente con cada arranque del sistema.

Como podemos comprobar, en nuestro caso, se encuentra activo así que vamos bien 🙂

Conectar a PostgreSQL desde el propio servidor con el usuario administrador por defecto

Una vez hemos hecho la instalación vamos a acceder a nuestra instancia de PostgreSQL utilizando para ello el usuario administrador que trae por defecto.

Para acceder a PostgreSQL vamos a utilizar el cliente de consola psql que viene incluido en PostgreSQL y vamos a utilizar para logarnos el usuario administrador que trae por defecto. Este usuario no utiliza contraseña para su acceso sino que funciona por socket de Unix por lo que es necesario que utilicemos sudo a la hora de ejecutar el siguiente comando:

sudo -iu postgres psql

Una vez estamos dentro del cliente psql vamos a crear nuestra primera base de datos y un primer usuario que será el que utilizaremos a partir de ahora para trabajar con PostgreSQL.

Creación de una base de datos

Crear una base de datos en PostgreSQL es un muy sencillo simplemente tenemos que ejecutar lo siguiente:

postgres=# create database nombre_base_de_datos;

Crear usuarios en PostgreSQL

Lo siguiente que vamos a hacer es crear nuestro primer usuario y darle permisos sobre la base de datos que hemos creado en el paso anterior.

postgres=# create user usuario with encrypted password 'micontrasena';

Para darle permisos sobre una base de datos al usuario que acabamos de crear usaremos el siguiente comando.

Nota: Los permisos que podemos dar son los siguientes:

  • ALL: otorga todos los permisos sobre la base de datos.
  • ALTER: permite modificar tablas, secuencias, etc..
  • CREATE: permite crear tablas, secuencias, etc…
  • DROP: permite borrar tablas, secuencias, etc…
  • DELETE: permite eliminar tablas, secuencias, etc…
  • INSERT: permite insertar registros en tablas.
  • UPDATE: permite actualizar registros en tablas.
  • SELECT: permite consultar tablas, secuencias, etc…
postgres=# grant all privileges on database nombre_base_de_datos to nombre_usuario;

Nota: Si nos interesara que el usuario tenga privilegios de super usuario por algún motivo tendríamos que ejecutar el siguiente comando, aunque esto es opcional.

alter role nombre_usuario with superuser;

Activar el acceso por conexiones remotas

Si necesitamos acceder de forma remota a nuestro motor de PostgreSQL, algo muy común, tenemos que editar el siguiente fichero de configuración:

sudo nano /etc/postgresql/14/main/pg_hba.conf

Localizar la siguiente sección:

# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256
# IPv6 local connections:
host    all             all             ::1/128                 scram-sha-256

Añadir la siguiente directiva:

# Acceso remoto
host    all             all             all            scram-sha-256

Guardar este fichero de configuración y modificar este otro fichero:

sudo nano /etc/postgresql/14/main/postgresql.conf

Localizamos la siguiente línea:

# - Connection Settings -

#listen_addresses = 'localhost'         # what IP address(es) to listen on;

Des comentamos la línea quitando la # y cambiamos localhost por un *.

# - Connection Settings -

listen_addresses = '*'                 # what IP address(es) to listen on;

Guardamos el fichero y reiniciamos el servicio de postgreSQL para que se apliquen los cambios.

sudo systemctl restart postgresql

En el caso de tener activado el Firewall UFW de Ubuntu debemos añadir la siguiente regla.

sudo ufw allow postgresql

Y ya deberíamos de poder conectarnos de forma remota a nuestro PostgreSQL :).

Como siempre espero que os haya sido de utilidad.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.