• Migração de MariaDB para MySQL 8.4.

    Migrar um banco de dados entre tecnologias que “parecem iguais” é onde muitos problemas começam. MariaDB e MySQL compartilham origem, mas não são 100% compatíveis — e isso fica claro quando tentamos migrar para versões mais recentes como o MySQL 8.4. Neste post, vou mostrar um laboratório completo, passando por: 1. Ambiente de origem (MariaDB)…

  • VACUUM e Autovacuum no PostgreSQL – Entendendo bloat na prática

    Muita gente que começa a trabalhar com PostgreSQL escuta falar de VACUUM o tempo todo.Mas no começo parece algo meio abstrato. Tabela cresce, autovacuum roda, dead tuples aparecem… e às vezes fica difícil entendero que realmente está acontecendo por trás. Então resolvi montar um laboratório simples para demonstrar na prática como o bloataparece e como…

  • Análise inicial de performance de queries no MySql Laboratório prático.

    Performance de banco de dados nem sempre está ligada apenas a hardware ou configuração do servidor.Muitas vezes o problema está em queries mal otimizadas ou em consultas que, mesmo rápidas, são executadas milhares de vezes por minuto. Neste pequeno laboratório vamos simular um cenário simples: Esse tipo de análise inicial costuma ser um dos primeiros…

  • MySQL Replication com GTID na prática: simulando failover e recuperação do ambiente

    Em ambientes críticos, indisponibilidade de banco de dados não é uma opção. Por isso, uma arquitetura com replicação e failover é essencial para garantir continuidade do serviço. Neste post vamos fazer um laboratório completo: Tudo isso com comandos reais e validações práticas. Arquitetura do laboratório Ambiente utilizado: Master original Replica Configuração inicial do GTID Em…

  • Buffer Pool no MySQL: como dimensionar corretamente (um caso real de análise de memória)

    Recentemente enfrentei uma situação interessante em um ambiente MySQL. O servidor possuía aproximadamente 296 GB de RAM, e o MySQL estava configurado com: Durante uma análise de infraestrutura surgiu a seguinte pergunta: “Esse servidor realmente precisa de toda essa memória ou podemos reduzir a RAM?” Esse tipo de questionamento é comum em ambientes grandes, principalmente…

  • Guia de Sobrevivência para DBA MySQL

    Seu dia mal começou e sobe aquela notificação classica no teans: “A aplicação está lenta”“Tá tudo travado”“O banco deve estar com problema” Você entra no servidor, conecta no MySQL e… dá branco, processos demais, locks, CPU subindo, usuário pressionando. Esse post é pra isso não acontecer mais. Esse é um guia de sobrevivência para incidentes…

  • Dicas de Backup Seguro com pgBackRest e PostgreSQL

    Recentemente precisei configurar um ambiente de backup e restore com pgBackRest no PostgreSQL 17 e resolvi documentar tudo do jeito que realmente acontece no dia a dia de um DBA. Sem pular etapa.Sem “isso é óbvio”.E principalmente: sem aquele backup que “parece que funciona”, mas ninguém nunca testou o restore. A ideia aqui não é…

  • PostgreSQL – Runbook Básico para Incidentes

    Olá, pessoal! Esse é meu primeiro artigo por aqui e resolvi começar falando de algo que todo DBA, cedo ou tarde, vai enfrentar: incidente em banco de dados. Quando a gente começa a trabalhar com PostgreSQL em produção, tudo parece até tranquilo… até o dia em que a aplicação fica lenta, o time começa a…