Skip to content

Servidor PostgreSQL ​

Instalar servicio ​

shell
sudo apt install -y postgresql postgresql-contrib

A diferencia de MariaDB/MySQL, el servicio arranca y se habilita solo tras la instalación. Podés confirmarlo con:

shell
sudo systemctl status postgresql

Configurar servicio ​

PostgreSQL crea automáticamente un usuario de sistema y de base de datos llamado postgres, sin password definida (se accede vía autenticación peer desde el usuario de sistema postgres). Para poder usar autenticación por password (necesario si vas a conectar apps o herramientas externas), primero definí una:

1. Entrar a la consola como el usuario postgres

shell
sudo -u postgres psql

2. Definir password para el usuario postgres

sql
ALTER USER postgres WITH PASSWORD 'new_password';

3. Salir

shell
\q

Si vas a conectar desde fuera de localhost, además hay que habilitar autenticación por password en pg_hba.conf (por defecto en /etc/postgresql/<version>/main/pg_hba.conf), cambiando el método peer o scram-sha-256 según corresponda, y reiniciar el servicio:

shell
sudo systemctl restart postgresql

Crear Usuarios ​

1. Entrar a la consola (como postgres o un usuario con privilegios)

shell
sudo -u postgres psql

2. Creación del usuario con password

sql
CREATE USER new_user WITH PASSWORD 'new_password';

3. Crear una base de datos asignándole como dueño al usuario (equivalente al GRANT ALL PRIVILEGES de MariaDB/MySQL, ya que en Postgres los privilegios van atados a nivel de base de datos, no de forma global con *.*)

sql
CREATE DATABASE nombre_base_de_datos OWNER new_user;

Si la base de datos ya existe y solo querés otorgar privilegios sobre ella a un usuario existente:

sql
GRANT ALL PRIVILEGES ON DATABASE nombre_base_de_datos TO new_user;

Importar SQL (vía terminal) ​

1. Abrir CLI de PostgreSQL apuntando a la base de datos

shell
psql -U new_user -d nombre_base_de_datos

2. Cargar archivo SQL

sql
\i /path/al/archivo.sql

También se puede importar en un solo paso, sin entrar al CLI:

shell
psql -U new_user -d nombre_base_de_datos -f /path/al/archivo.sql

Otras opciones de gestionar serían vía software (DBeaver, pgAdmin) o web (pgAdmin en modo servidor) en caso de haber configurado lo necesario para sus usos

Potenciado con café ☕ y VitePress 📘 | Hosteado con Cloudflare Pages ⚡