Skip to content
cccskills
FreePublished on GitHub

postgres-dba

Diagnóstico e tuning de PostgreSQL — EXPLAIN ANALYZE, índice, VACUUM, bloat, lock, replicação, WAL, PITR e particionamento. Use quando o usuário disser "postgres", "query lenta", "índice", "EXPLAIN", "vacuum", "lock", "deadlock", "replicação", "conexões", "banco lento".

The English summary is being prepared. Showing the original description.

Works withPostgreSQL
See how to install

Files included (1)

  • SKILL.md3.3 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

PostgreSQL DBA

Você diagnostica banco. Toda alteração de schema em produção é potencialmente destrutiva — trate como tal.

Portão de segurança

SELECT, EXPLAIN, \d, pg_stat_* rodam livres. CREATE INDEX, ALTER, VACUUM FULL, REINDEX exigem confirmação. DROP, TRUNCATE, DELETE sem WHERE são destrutivos.

VACUUM FULL e REINDEX travam a tabela. ALTER TABLE em tabela grande pode travar por minutos. Em produção, sempre a variante CONCURRENTLY e sempre em janela.

Query lenta

-- 1. quem consome
SELECT query, calls, mean_exec_time, total_exec_time
FROM pg_stat_statements ORDER BY total_exec_time DESC LIMIT 20;

-- 2. o plano real
EXPLAIN (ANALYZE, BUFFERS) SELECT ...;

EXPLAIN sozinho mostra o plano estimado. ANALYZE executa e mostra o real. A diferença entre rows estimado e real é o que denuncia estatística desatualizada.

No planoSignifica
Seq Scan em tabela grandefalta índice, ou o índice não serve
estimado ≪ realestatística velha → ANALYZE tabela
Nested Loop com muitas linhasfalta índice no lado interno
Sort com diskwork_mem baixo
Filter removendo muita linhaíndice parcial ajudaria

Índice

-- em produção, SEMPRE concurrently
CREATE INDEX CONCURRENTLY idx_x ON t (col);

-- índices nunca usados
SELECT relname, indexrelname, idx_scan FROM pg_stat_user_indexes
WHERE idx_scan = 0 ORDER BY pg_relation_size(indexrelid) DESC;

Índice não usado custa em toda escrita. Antes de remover, confirme que a estatística cobre um ciclo completo — relatório mensal não aparece em 7 dias.

Bloat e VACUUM

SELECT relname, n_dead_tup, last_autovacuum
FROM pg_stat_user_tables ORDER BY n_dead_tup DESC LIMIT 20;

Autovacuum não dá conta: ajuste autovacuum_vacuum_scale_factor na tabela. VACUUM FULL é último recurso — trava.

Lock

SELECT blocked.pid, blocked.query, blocking.pid, blocking.query
FROM pg_stat_activity blocked
JOIN pg_stat_activity blocking ON blocking.pid = ANY(pg_blocking_pids(blocked.pid))
WHERE cardinality(pg_blocking_pids(blocked.pid)) > 0;

Conexões

SELECT count(*), state FROM pg_stat_activity GROUP BY state;
SHOW max_connections;

Muitas idle in transaction: bug de aplicação que não faz commit. Aumentar max_connections não resolve — use pooler (PgBouncer) e corrija a app.

Anti-padrões

  • CREATE INDEX sem CONCURRENTLY em produção
  • max_connections alto em vez de pooler
  • Backup nunca testado com restore
  • VACUUM FULL em horário de pico
  • DELETE em massa sem lote — inflaciona WAL e trava

Limites

  • Não roda DDL em produção sem confirmação e janela
  • Não faz DROP nem TRUNCATE — entrega o comando
  • Não altera parâmetro que exija restart sem avisar do downtime
  • psql ausente hoje: modo consultivo

Skills relacionadas

backup-dr · performance-engineer · observability · laravel-platform

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Accessibility auditing and remediation skill for Vue 3 + Reka UI. Use when reviewing components, verifying WCAG 2.1 AA, fixing ARIA issues, or validating keyboard navigation in Reka UI components.

The English summary is being prepared. Showing the original description.

pwdev-solucoes/pwdev-claude-marketplace3Updated Oct 15, 2026

Infraestrutura para IA — GPU, servidores MCP, gateway de LLM, pipeline de inferência, custo de token, cache semântico e observabilidade de modelo. Use quando o usuário disser "GPU", "MCP server", "LLM", "inferência", "modelo", "gateway de IA", "custo de token", "rate limit da API de IA", "self-host de modelo".

The English summary is being prepared. Showing the original description.

pwdev-solucoes/pwdev-claude-marketplace3Updated Oct 15, 2026

Escreve texto alternativo e descrição de imagem para peças de rede social. Use quando o usuário disser "alt text", "texto alternativo", "descrição da imagem", "acessibilidade da peça", "descrever para leitor de tela", ou automaticamente antes de qualquer publicação. Obrigatório em todas as peças — em carrossel, um por slide.

The English summary is being prepared. Showing the original description.

pwdev-solucoes/pwdev-claude-marketplace3Updated Oct 15, 2026

Organiza, compara e seleciona entre as variações geradas, e publica a grade de comparação como Artifact para aprovação do time. Use quando o usuário disser "qual dessas", "comparar as variações", "escolher a melhor", "mostrar as opções", "montar grade de aprovação", ou após qualquer lote de geração. Selecionar é trabalho, não detalhe.

The English summary is being prepared. Showing the original description.

pwdev-solucoes/pwdev-claude-marketplace3Updated Oct 15, 2026

Aumenta resolução e qualidade de imagem via Freepik/Magnific, ou orienta o processo manual quando não há chave. Use quando o usuário disser "upscale", "melhorar a resolução", "a imagem está pixelada", "Magnific", "Freepik", "aumentar a imagem", "imagem pequena demais". Gasta crédito — exige confirmação.

The English summary is being prepared. Showing the original description.

pwdev-solucoes/pwdev-claude-marketplace3Updated Oct 15, 2026

CI/CD e automação — GitHub Actions, Terraform, OpenTofu, Ansible, n8n. Use quando o usuário disser "pipeline", "CI/CD", "GitHub Actions", "workflow", "terraform", "ansible", "n8n", "automatizar", "deploy automático", "IaC".

The English summary is being prepared. Showing the original description.

pwdev-solucoes/pwdev-claude-marketplace3Updated Oct 15, 2026

See all skills by pwdev-solucoes

Report a problem with this skill