Loading Now

O que 15 anos trabalhando com SQL Server me ensinaram sobre Cluster, Always On e Log Shipping

Se você trabalha com banco de dados em produção, uma coisa fica clara muito rápido:

banco de dados não pode parar.

Não é teoria.
Não é slide de arquitetura.
É o telefone tocando 03:17 da manhã.

E foi exatamente assim que eu aprendi, na prática — e muitas vezes da forma mais dolorosa possível — como montar uma estratégia real de High Availability (HA) e Disaster Recovery (DR) usando:

  • Failover Cluster
  • Always On Availability Groups
  • Log Shipping

Hoje muita gente fala dessas tecnologias como se fossem opções isoladas.
Mas a realidade é outra.

Elas são camadas.

E só fazem sentido quando usadas juntas.


A primeira grande lição: HA não é DR

Uma das primeiras coisas que aprendi — e que quase ninguém explica direito — é que Alta Disponibilidade não é Disaster Recovery.

Parece óbvio… até o dia em que o datacenter inteiro cai.

Já vi ambientes com:

  • Cluster
  • Storage redundante
  • SAN replicada
  • Always On configurado

E mesmo assim tudo caiu junto.

Porque tudo estava no mesmo lugar físico.

Alta disponibilidade resolve:

  • falha de hardware
  • falha de sistema operacional
  • falha de instância SQL

Mas não resolve desastre.

E desastre acontece mais do que as pessoas imaginam:

  • queda de energia em datacenter
  • falha de storage
  • erro humano
  • corrupção de dados
  • ransomware

Foi aí que comecei a entender a diferença real entre HA e DR.

HA mantém o sistema rodando.
DR garante que você consiga voltar.


Cluster: a primeira camada de proteção

Durante muito tempo o Failover Cluster Instance (FCI) foi a principal estratégia de alta disponibilidade em SQL Server.

A ideia é simples:

vários servidores → mesma instância SQL → storage compartilhado.

Quando o node ativo morre, outro assume.

Na teoria parece perfeito.

Na prática… existem algumas pegadinhas.

A primeira vez que implementei cluster eu achei que estava protegido contra tudo.

Até o dia em que o problema não foi no servidor.

Foi no storage.

E adivinha?

Cluster não salva você disso.

Se o storage morre, todos os nodes morrem juntos.

Mas mesmo assim o cluster continua sendo extremamente importante.

Ele resolve um dos problemas mais comuns em produção:

falha de hardware.

E isso acontece muito.

Fonte queimada.
Firmware bugado.
Memória com erro.
Kernel panic.

Cluster resolve isso automaticamente.

Sem intervenção humana.


Always On: quando o SQL Server ficou realmente inteligente

Quando o Always On Availability Groups apareceu, mudou completamente a forma como pensamos HA no SQL Server.

Diferente do cluster, o Always On trabalha no nível de banco de dados.

Ele usa o transaction log para replicar as mudanças para outras réplicas.

Isso trouxe algumas coisas que antes eram impossíveis:

  • réplicas para leitura
  • backups fora do primário
  • replicação entre datacenters
  • failover muito mais rápido

Mas também trouxe novos desafios.

Um deles é que Always On depende de Windows Server Failover Cluster (WSFC).

Ou seja…

Mesmo que você não use cluster para instância, o cluster ainda está lá.

E muita gente esquece disso.

Outro aprendizado importante:

Always On não é bala de prata.

Ele é incrível para alta disponibilidade.

Mas quando falamos de desastre real, ele ainda tem limitações.

Especialmente quando tudo está na mesma região.


Log Shipping: a tecnologia que muita gente subestima

Agora vem uma opinião que muita gente acha polêmica.

Log Shipping é uma das tecnologias mais subestimadas do SQL Server.

Sério.

Tem gente que acha que ele é “antigo” ou “ultrapassado”.

Mas a realidade em produção é outra.

Log Shipping tem algumas vantagens absurdas:

  • simples
  • extremamente confiável
  • fácil de recuperar
  • praticamente impossível de quebrar

Ele funciona copiando transaction logs para outro servidor e aplicando continuamente.

Nada mágico.

Nada complexo.

engenharia sólida.

E sabe qual é a melhor parte?

Ele é perfeito para Disaster Recovery.

Já vi ambientes com Always On quebrar completamente.

E sabe o que salvou?

Log Shipping.

Porque ele estava:

  • isolado
  • simples
  • independente

Às vezes a solução mais simples é a que salva o dia.


A arquitetura que eu realmente confio hoje

Depois de muitos anos apanhando em produção, a arquitetura que mais me deixou confortável é uma combinação das três tecnologias.

Algo assim:

Datacenter primário:

Cluster SQL
Node1
Node2

Always On Availability Group entre os nodes.

Datacenter secundário:

Servidor DR recebendo Log Shipping.

Isso cria três camadas de proteção.

Camada 1
Cluster
→ falha de hardware

Camada 2
Always On
→ failover rápido de banco

Camada 3
Log Shipping
→ desastre completo

Essa arquitetura cobre praticamente todos os cenários:

servidor morreu
cluster resolve

instância travou
Always On resolve

datacenter morreu
Log Shipping salva

Depois que você vive alguns incidentes reais… começa a pensar diferente.


O erro mais comum que vejo em arquiteturas de HA

O maior erro que vejo em empresas é complexidade demais sem estratégia.

Arquiteturas gigantescas…

Mas ninguém testou failover.

Ninguém testou DR.

Ninguém sabe quanto tempo leva para recuperar.

HA e DR não são sobre tecnologia.

São sobre:

  • RTO
  • RPO
  • processos
  • testes

Já participei de ambiente com milhões investidos em infraestrutura…

Que demorou 6 horas para voltar.

Porque ninguém tinha testado o plano.


A verdade que ninguém conta sobre trabalhar com banco crítico

Trabalhar com banco de dados crítico muda a forma como você vê arquitetura.

Você aprende algumas coisas rápido:

simplicidade é poderosa
monitoramento é vital
testar é obrigatório

E principalmente…

backup e log shipping salvam mais ambientes do que qualquer tecnologia moderna.

Cluster e Always On são incríveis.

Mas se você não tiver uma estratégia sólida de DR, está sempre correndo risco.


Se você quer dominar Log Shipping de verdade

Depois de anos trabalhando com SQL Server em ambientes críticos, percebi que muita gente conhece Log Shipping só superficialmente.

Mas quando você entende ele profundamente, percebe o poder que ele tem.

Por isso eu criei um curso focado 100% em Log Shipping no SQL Server, mostrando exatamente como implementar cenários reais de Disaster Recovery.

No curso eu mostro:

  • arquitetura real de DR
  • configuração completa
  • automação
  • troubleshooting
  • cenários de falha

Se você trabalha com SQL Server em produção, recomendo dar uma olhada:

https://www.udemy.com/course/logshippingsqlserver/?couponCode=6482D52BC79D427E3A12

Porque no final das contas…

quando o telefone tocar 03:17 da manhã

você vai querer saber exatamente como recuperar seu ambiente.

Share this content:

Sandro Servino is a senior IT professional with over 30 years of experience in technology, having worked as a Developer, Project Manager (acting as a Requirements Analyst and Scrum Master), Professor, IT Infrastructure Team Coordinator, IT Manager, and Database Administrator. He has been working with Database technologies since 1996 and has been vendor-certified since the early years of his career. Throughout his professional journey, he has combined deep technical expertise with leadership, education, and consulting experience in mission-critical environments. Sandro has trained more than 20,000 students in database technologies, helping professionals build strong foundations and advance their careers in data platforms and database administration. He has delivered corporate training programs for multiple companies and served as a university professor teaching Database and Data Administration for over five years. For many years, he worked as an independent consultant specializing in SQL Server, providing strategic and technical support for complex database environments. He has extensive experience in troubleshooting and resolving critical issues in SQL Server production environments, including performance tuning, high availability, disaster recovery, security, and infrastructure optimization. His academic background includes: Postgraduate Degree in School Education MBA in IT Governance Master’s Degree in Knowledge Management and Information Technology Currently, Sandro works as a Database Administrator for multinational companies in Europe, managing enterprise-level SQL Server environments and supporting large-scale, high-demand infrastructures. Areas of Expertise SQL Server (Administration, Performance, HA/DR, Troubleshooting) Azure SQL Databases MySQL Oracle PostgreSQL Power BI Data Analytics Data Warehouse Windows Server Oracle Linux Server Ubuntu Linux Server DBA Training and Mentorship Business Continuity and Disaster Recovery Strategies Courses and Training Programs Sandro delivers professional training programs focused on the formation of DBAs and Data/BI Analysts, covering: SQL Server and Azure SQL Databases MySQL Oracle PostgreSQL Power BI Data Analytics Data Warehouse Windows Server Oracle Linux Server Ubuntu Linux Server With a unique combination of technical depth, academic knowledge, real-world consulting experience, and international exposure, Sandro Servino brings practical, results-driven expertise to database professionals and organizations seeking reliability, performance, and resilience in their data platforms.

Post Comment