跳到正文
cccskills
免费在 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".

中文简介正在准备中。当前显示原文说明。

集成工具PostgreSQL
查看安装方法

包含的文件(1)

  • SKILL.md3.3 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

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

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

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.

中文简介正在准备中。当前显示原文说明。

pwdev-solucoes/pwdev-claude-marketplace32026年10月15日 更新

ai-infra

免费

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".

中文简介正在准备中。当前显示原文说明。

pwdev-solucoes/pwdev-claude-marketplace32026年10月15日 更新

alt-text

免费

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.

中文简介正在准备中。当前显示原文说明。

pwdev-solucoes/pwdev-claude-marketplace32026年10月15日 更新

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.

中文简介正在准备中。当前显示原文说明。

pwdev-solucoes/pwdev-claude-marketplace32026年10月15日 更新

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.

中文简介正在准备中。当前显示原文说明。

pwdev-solucoes/pwdev-claude-marketplace32026年10月15日 更新

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".

中文简介正在准备中。当前显示原文说明。

pwdev-solucoes/pwdev-claude-marketplace32026年10月15日 更新

查看 pwdev-solucoes 的全部技能

报告此技能的问题