1️⃣ postgresql.conf — Configuração Geral do Servidor
É o arquivo central de configuração do PostgreSQL.
Controla:
- Porta do servidor (
port) - Interfaces de rede (
listen_addresses) - Memória (
shared_buffers,work_mem,maintenance_work_mem) - Logs
- Autovacuum
- WAL (Write-Ahead Log)
- Replicação
- Parâmetros de performance
Exemplo:
port = 5432
listen_addresses = '*'
shared_buffers = 256MB
log_min_duration_statement = 1000
📌 Sempre que você quiser alterar o comportamento global do servidor, é aqui que você mexe.
2️⃣ pg_hba.conf — Controle de Acesso e Autenticação
HBA significa Host-Based Authentication.
Esse arquivo define:
- Quem pode conectar
- De qual IP
- Em qual banco
- Qual método de autenticação será usado
Estrutura típica:
TYPE DATABASE USER ADDRESS METHOD
host all all 192.168.1.0/24 md5
Métodos comuns:
-
trust→ Não exige senha (inseguro) -
md5→ Senha criptografada (legado) -
scram-sha-256→ Método moderno e recomendado -
peer→ Usa autenticação do sistema operacional
📌 Se o assunto é segurança e acesso, pense imediatamente em pg_hba.conf.
3️⃣ pg_ident.conf — Mapeamento de Usuários
Esse arquivo mapeia usuários do sistema operacional para usuários do PostgreSQL.
É usado junto com autenticação peer ou ident.
Exemplo conceitual:
mapa_nome usuario_linux usuario_postgres
Ele não controla IP nem senha — apenas identidade.
4️⃣ postgresql.auto.conf — Configuração via ALTER SYSTEM
Criado automaticamente quando você executa:
ALTER SYSTEM SET work_mem = '64MB';
O PostgreSQL grava o parâmetro nesse arquivo.
Características importantes:
- É gerenciado automaticamente
- Sobrescreve valores do
postgresql.conf - Não deve ser editado manualmente
5️⃣ .pgpass — Arquivo de Senhas do Cliente
Esse arquivo fica na máquina cliente, não no servidor.
Serve para armazenar credenciais e evitar digitar senha a cada conexão.
Formato:
hostname:port:database:username:password
⚠️ Precisa ter permissão 0600. Caso contrário, é ignorado por segurança.
6️⃣ Diretório de Dados (data/)
Dentro do diretório de dados ficam:
- Arquivos físicos das tabelas
- WAL (logs de transação)
- Catálogo do sistema
- Arquivos de controle interno
Nunca altere manualmente arquivos dentro desse diretório.
Resumo Estratégico
| Arquivo | Função Principal | Foco |
|---|---|---|
postgresql.conf |
Configuração geral | Performance e comportamento |
pg_hba.conf |
Controle de acesso | Segurança |
pg_ident.conf |
Mapeamento de usuários | Integração com SO |
postgresql.auto.conf |
Configuração automática | ALTER SYSTEM |
.pgpass |
Senha do cliente | Conexões automatizadas |
Top comments (0)