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.

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 --versionInstalando 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 --versionVerificando 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 postgresProtegendo 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
\qCriando 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
\qGerenciando 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 postgresqlComandos 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.sqlDicas Ú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