Voltar ao blog
Janeiro 27, 2026Guias

Como Instalar PostgreSQL em Servidor Linux

Guia completo sobre instalação, configuração e proteção do servidor de banco de dados PostgreSQL no Ubuntu e CentOS.

Como Instalar PostgreSQL em Servidor Linux

PostgreSQL é um poderoso sistema de gerenciamento de banco de dados relacional de código aberto conhecido por sua confiabilidade, riqueza de recursos e conformidade com padrões. Este guia ajudará você a instalar e configurar PostgreSQL no seu servidor Linux Hiddence.

Instalando PostgreSQL no Ubuntu/Debian

PostgreSQL está disponível nos repositórios padrão. Instale a versão mais recente:

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

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

# Verificar instalação
sudo systemctl status postgresql
psql --version

Instalando PostgreSQL no RHEL / CentOS / AlmaLinux / Rocky Linux

Para distribuições baseadas em RHEL, você precisa adicionar o repositório PostgreSQL primeiro:

bash
# Instalar repositório 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 banco de dados
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb

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

# Verificar instalação
sudo systemctl status postgresql-15
psql --version

Verificando Instalação

bash
# Verificar status do PostgreSQL
sudo systemctl status postgresql

# Verificar versão do PostgreSQL
psql --version

# Conectar ao PostgreSQL (Ubuntu/Debian)
sudo -u postgres psql

# Conectar ao PostgreSQL (CentOS/RHEL)
sudo -u postgres psql -d postgres

Protegendo PostgreSQL

Defina uma senha para o usuário postgres:

bash
# Conectar ao PostgreSQL
sudo -u postgres psql

# Definir senha para usuário postgres
ALTER USER postgres PASSWORD 'sua_senha_forte';

# Sair do PostgreSQL
\q

Criando Banco de Dados e Usuário

bash
# Conectar como usuário postgres
sudo -u postgres psql

# Criar banco de dados
CREATE DATABASE myapp_db;

# Criar usuário
CREATE USER app_user WITH PASSWORD 'senha_forte';

# Conceder privilégios
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO app_user;

# Sair
\q

Gerenciando Usuários

bash
# Conectar ao PostgreSQL
sudo -u postgres psql

# Listar todos os usuários
\du

# Criar novo usuário
CREATE USER newuser WITH PASSWORD 'senha';

# Conceder privilégios
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO newuser;

# Revogar privilégios
REVOKE ALL PRIVILEGES ON DATABASE myapp_db FROM newuser;

# Excluir usuário
DROP USER newuser;

Habilitando Conexões Remotas

Para permitir conexões remotas, edite os arquivos de configuração do 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

# Adicionar linha:
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

# Alterar:
listen_addresses = '*'

# Reiniciar PostgreSQL
sudo systemctl restart postgresql

Comandos Básicos do PostgreSQL

bash
# Conectar ao banco de dados
psql -U app_user -d myapp_db

# Listar bancos de dados
\l

# Conectar ao banco de dados
\c database_name

# Listar tabelas
\dt

# Descrever tabela
\d table_name

# Executar arquivo SQL
psql -U app_user -d myapp_db -f script.sql

# Fazer backup do banco de dados
pg_dump -U app_user myapp_db > backup.sql

# Restaurar banco de dados
psql -U app_user -d myapp_db < backup.sql

Dicas Úteis

  • Sempre use senhas fortes para usuários do banco de dados
  • Limite o acesso remoto a endereços IP específicos no pg_hba.conf
  • Faça backup regularmente dos seus bancos de dados usando pg_dump
  • Monitore os logs do PostgreSQL: /var/log/postgresql/ (Ubuntu) ou /var/lib/pgsql/15/data/log/ (CentOS)
  • Use pool de conexões (pgBouncer) para aplicações de alto tráfego
  • Mantenha o PostgreSQL atualizado para a versão estável mais recente para correções de segurança