Erros

Erro 1205 no SQL Server: deadlock — o que significa e como resolver

26 de agosto de 2026 · 4 min de leitura

Mensagem completa: "Transaction (Process ID 52) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction." — Msg 1205, Level 13, State 51 (o número do Process ID varia a cada ocorrência).

O que aconteceu

Duas transações travaram recursos em ordem cruzada e nenhuma conseguia avançar. O Lock Monitor do SQL Server detecta esse ciclo automaticamente (a cada ~5 segundos) e mata uma das duas — a "vítima" — pra destravar a outra. Não é corrupção nem bug: é o mecanismo de resolução de deadlock funcionando como projetado.

Por que "Rerun the transaction" é literal

A transação vítima foi desfeita (rollback automático) antes de a mensagem chegar até você. A aplicação deve capturar o erro 1205 especificamente e tentar de novo — é o padrão esperado, não um workaround. Se a aplicação não trata isso, o usuário vê o erro estourar na tela sem entender por quê.

Causas mais comuns

  • Duas transações acessando as mesmas tabelas em ordem diferente.
  • Índices ausentes forçando scan em vez de seek dentro da transação.
  • Transações longas demais, aumentando a janela de exposição ao lock.
Guia completo: Deadlock no SQL Server — como detectar e prevenir →

O codeDB captura o gráfico de deadlock (quem segurava o quê, quem foi a vítima) automaticamente, sem precisar configurar Extended Events na mão.

Artigos relacionados

Monitore seu SQL Server enquanto aprende.

30 dias grátis para aplicar tudo que você aprendeu aqui no seu próprio ambiente.

Começar gratuitamente
codeDB

Monitoramento inteligente de SQL Server com agente local seguro e diagnósticos em tempo real.

Produto

RecursosPreçosComparativoscodeDB Lens (grátis)

© 2026 codeDB. Todos os direitos reservados.

Powered by codeDB

codeDB Informática Ltda — CNPJ 18.953.756/0001-10 — Florianópolis/SC