Volver al blog
Enero 27, 2026Guías

Cómo instalar PostgreSQL en servidor Linux

Guía completa sobre instalación, configuración y seguridad del servidor de base de datos PostgreSQL en Ubuntu y CentOS.

Cómo instalar PostgreSQL en servidor Linux

PostgreSQL es un sistema de gestión de bases de datos relacionales de código abierto potente conocido por su confiabilidad, riqueza de funciones y cumplimiento de estándares. Esta guía le ayudará a instalar y configurar PostgreSQL en su servidor Hiddence Linux.

Instalación de PostgreSQL en Ubuntu/Debian

PostgreSQL está disponible en los repositorios predeterminados. Instale la última versión:

bash
sudo apt update
sudo apt install postgresql postgresql-contrib -y

# Iniciar y habilitar PostgreSQL
sudo systemctl start postgresql
sudo systemctl enable postgresql

# Verificar instalación
sudo systemctl status postgresql
psql --version

Instalación de PostgreSQL en RHEL / CentOS / AlmaLinux / Rocky Linux

Para distribuciones basadas en RHEL, primero debe agregar el repositorio PostgreSQL:

bash
# Instalar repositorio PostgreSQL
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm

# Para CentOS 8/Rocky Linux 8, use:
# sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm

# Instalar PostgreSQL
sudo dnf install -y postgresql15-server postgresql15

# Inicializar base de datos
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb

# Iniciar y habilitar PostgreSQL
sudo systemctl start postgresql-15
sudo systemctl enable postgresql-15

# Verificar instalación
sudo systemctl status postgresql-15
psql --version

Verificación de instalación

bash
# Verificar estado de PostgreSQL
sudo systemctl status postgresql

# Verificar versión de PostgreSQL
psql --version

# Conectarse a PostgreSQL (Ubuntu/Debian)
sudo -u postgres psql

# Conectarse a PostgreSQL (CentOS/RHEL)
sudo -u postgres psql -d postgres

Asegurar PostgreSQL

Establezca una contraseña para el usuario postgres:

bash
# Conectarse a PostgreSQL
sudo -u postgres psql

# Establecer contraseña para usuario postgres
ALTER USER postgres PASSWORD 'su_contraseña_fuerte';

# Salir de PostgreSQL
\q

Crear base de datos y usuario

bash
# Conectarse como usuario postgres
sudo -u postgres psql

# Crear base de datos
CREATE DATABASE myapp_db;

# Crear usuario
CREATE USER app_user WITH PASSWORD 'contraseña_fuerte';

# Otorgar privilegios
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO app_user;

# Salir
\q

Gestionar usuarios

bash
# Conectarse a PostgreSQL
sudo -u postgres psql

# Listar todos los usuarios
\du

# Crear nuevo usuario
CREATE USER newuser WITH PASSWORD 'contraseña';

# Otorgar privilegios
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO newuser;

# Revocar privilegios
REVOKE ALL PRIVILEGES ON DATABASE myapp_db FROM newuser;

# Eliminar usuario
DROP USER newuser;

Habilitar conexiones remotas

Para permitir conexiones remotas, edite los archivos de configuración de PostgreSQL:

bash
# Editar pg_hba.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/pg_hba.conf

# Editar pg_hba.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/pg_hba.conf

# Agregar línea:
host    all             all             0.0.0.0/0               md5

# Editar postgresql.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/postgresql.conf

# Editar postgresql.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/postgresql.conf

# Cambiar:
listen_addresses = '*'

# Reiniciar PostgreSQL
sudo systemctl restart postgresql

Comandos básicos de PostgreSQL

bash
# Conectarse a base de datos
psql -U app_user -d myapp_db

# Listar bases de datos
\l

# Conectarse a base de datos
\c database_name

# Listar tablas
\dt

# Describir tabla
\d table_name

# Ejecutar archivo SQL
psql -U app_user -d myapp_db -f script.sql

# Respaldar base de datos
pg_dump -U app_user myapp_db > backup.sql

# Restaurar base de datos
psql -U app_user -d myapp_db < backup.sql

Consejos útiles

  • Use siempre contraseñas fuertes para usuarios de base de datos
  • Limite el acceso remoto a direcciones IP específicas en pg_hba.conf
  • Haga respaldos regulares de sus bases de datos con pg_dump
  • Monitoree los registros de PostgreSQL: /var/log/postgresql/ (Ubuntu) o /var/lib/pgsql/15/data/log/ (CentOS)
  • Use agrupación de conexiones (pgBouncer) para aplicaciones con alto tráfico
  • Mantenga PostgreSQL actualizado a la última versión estable para parches de seguridad