.internal-skills/dba-specialist/SKILL.md
Especialista em Banco de Dados e Modelagem Física. Use para: - Modelar schema de banco - Otimizar queries e performance - Alta disponibilidade e replication - Backup e disaster recovery - Consultas SQL complexas
npx skillsauth add suportebahia/equipe-devs Equipe SBahia - DBA SpecialistInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
-- Query otimizada com CTEs
WITH ranked_orders AS (
SELECT
o.*,
c.name as customer_name,
ROW_NUMBER() OVER (PARTITION BY customer_id ORDER BY created_at DESC) as rn
FROM orders o
JOIN customers c ON c.id = o.customer_id
WHERE o.status = 'completed'
)
SELECT * FROM ranked_orders WHERE rn <= 5;
-- Window Functions
SELECT
department,
employee_name,
salary,
AVG(salary) OVER (PARTITION BY department) as dept_avg,
salary - AVG(salary) OVER (PARTITION BY department) as diff_from_avg
FROM employees;
-- Materialized View para analytics
CREATE MATERIALIZED VIEW monthly_sales AS
SELECT
DATE_TRUNC('month', created_at) as month,
SUM(total) as revenue,
COUNT(*) as order_count
FROM orders
GROUP BY DATE_TRUNC('month', created_at);
-- Composite index para queries específicas
CREATE INDEX idx_orders_customer_status
ON orders(customer_id, status)
WHERE status IN ('pending', 'completed');
-- Partial index
CREATE INDEX idx_active_users ON users(email)
WHERE deleted_at IS NULL;
-- Covering index (include)
CREATE INDEX idx_orders_covering
ON orders(customer_id, status)
INCLUDE (total, created_at);
// PROBLEM: N+1 queries
const orders = await prisma.order.findMany();
for (const order of orders) {
const customer = await prisma.customer.findUnique({
where: { id: order.customerId }
});
order.customer = customer;
}
// SOLUTION: Include
const orders = await prisma.order.findMany({
include: {
customer: true,
items: { include: { product: true } }
}
});
// SOLUTION: Select only needed fields
const orders = await prisma.order.findMany({
select: {
id: true,
status: true,
customer: { select: { name: true, email: true } }
}
});
# docker-compose.yml
services:
primary:
image: postgres:15
environment:
POSTGRES_PASSWORD: secret
volumes:
- primary_data:/var/lib/postgresql/data
replica1:
image: postgres:15
environment:
POSTGRES_PASSWORD: secret
command: >
postgres -c primary_conninfo='host=primary port=5432 user=replica password=secret'
depends_on:
- primary
volumes:
- replica1_data:/var/lib/postgresql/data
# Daily full backup
0 2 * * * pg_dump -Fc -f /backups/full_$(date +\%Y\%m\%d).dump
# WAL archival for point-in-time recovery
archive_command = 'wal-g wal-push %p'
# Restore command
pg_restore -d mydb /backups/full_20240115.dump
-- PostgreSQL
SELECT
query,
calls,
mean_exec_time,
total_exec_time,
rows
FROM pg_stat_statements
ORDER BY mean_exec_time DESC
LIMIT 10;
-- MySQL
SELECT * FROM performance_schema.events_statements_history
ORDER BY TIMER_WAIT DESC LIMIT 10;
// Prisma with connection pool
const prisma = new PrismaClient({
datasources: {
db: {
url: process.env.DATABASE_URL
}
},
log: ['query', 'error', 'warn'],
});
// Connection pool tuning (PostgreSQL)
-- postgresql.conf
max_connections = 100
shared_buffers = 256MB
effective_cache_size = 1GB
work_mem = 16MB
testing
Sistema de agentes IA para coordenação de projetos de desenvolvimento. Use este skill para iniciar qualquer projeto. Este skill orquestra automaticamente os agentes especializados conforme a necessidade: - Análise e planejamento de projetos - Coordenação de múltiplos agentes - Gestão de tasks e dependências
development
Orquestrador principal do ecossistema de agentes IA Equipe SBahia. Use para: - Coordenar projetos de desenvolvimento web - Alocar agentes especializados - Gerenciar workflow completo - Garantir padrões MVC e de mercado Agents disponíveis: leadership-tech, uxui-designer, frontend-developer, backend-controller, backend-model, dba-specialist, security-specialist, api-gateway-specialist, mobile-developer, data-engineer, elastic-engineer, machine-learning-engineer, testing-specialist, error-handling-specialist, product-owner, devops-engineer, solutions-engineer
testing
Skill para Designer UX/UI. Use para: - Criar experiência do usuário - Desenvolver interfaces visuais - Definir design system - Validar usabilidade
testing
Especialista em QA/Testes automatizados. Use para: - Criar estratégia de testes completa - Implementar testes unitários, integração e E2E - TDD/BDD quando aplicável - Coverage analysis - Testes de performance e carga