Análise de bloqueio do SQL Server
Monitore o SQL Server e identifique a causa raiz de bloqueios
Visualize as causas de bloqueios do SQL Server
Os bloqueios do SQL Server correspondem a um comportamento normal que controla o acesso concomitante a dados. Algumas vezes, os bloqueios podem afetar o desempenho. As causas dos bloqueios nem sempre são fáceis de localizar e solucionar. O SQL Sentry® oferece visibilidade direta aos bloqueios do SQL Server. Ele captura e exibe dados do bloqueio, incluindo tipos de espera e recursos, hosts, bancos de dados e instruções executadas, com base em limites especificados. Você pode ver as cadeias de bloqueios em tempo real ou posteriormente.
Localize e resolva consultas que ocasionam bloqueios
O SQL Sentry torna a localização das causas de bloqueios do SQL Server rápida e fácil, acelerando o processo de solução de problemas O painel do SQL Sentry exibe as cadeias de bloqueios do SQL Server em uma visualização hierárquica codificada por cores, mostrando quais instruções estão em execução, concluídas ou bloqueadas. Também é possível interromper processos com bloqueios diretamente do SQL Sentry. Com acesso a dados de desempenho do histórico, você será capaz de ver as mudanças importantes no SQL Server ao longo do tempo, o que pode facilitar a solução de problemas de modo mais eficaz.
Fique por dentro com os relatórios do SQL Sentry.
Em vez de verificar manualmente os bloqueios no SQL Server, você pode usar o SQL Sentry para executar facilmente os relatórios de bloqueio de SQL necessários. O SQL Sentry está equipado com mais de 25 relatórios de desempenho pré-formatados para que você possa entender o desempenho do SQL Server em minutos. Com a ajuda desses relatórios, você pode estabelecer linhas de base, identificar gargalos e obter uma compreensão geral melhor do desempenho do SQL Sentry, tanto no momento quanto ao longo do tempo.
Obtenha alertas de bloqueio do SQL Server em tempo real
Monitorar o desempenho do SQL Server pode ser um processo demorado, mas o SQL Sentry foi projetado para torná-lo mais fácil com alertas integrados. O SQL Sentry foi equipado com recursos de alerta de bloqueios de SQL e alertas de deadlocks de SQL e pode enviar notificações com base em condições pré-configuradas para que você possa atacar os problemas na hora.
Identifique as principais causas raiz de bloqueios por meio da análise de tempos totais de espera
O SolarWinds® SQL Sentry foi projetado para coletar dados de bloqueios. Ele fornece um alto nível de visibilidade sobre a causa raiz do bloqueio e seu tempo de espera agregado. Isso permite que os administradores de banco de dados façam drill down dos principais dados de bloqueio e vejam seu impacto nos tempos de resposta do banco de dados. O software também pode revelar os principais elementos em espera, permitindo que os DBAs identifiquem rapidamente suas principais causas de bloqueio e usem esses dados para otimizar melhor as consultas que mais reduzem o bloqueio.
Saiba mais sobre o bloqueio no SQL Server
Você já se perguntou…
Bloqueios ocorrem quando dois ou mais processos precisam acessar o mesmo recurso ao mesmo tempo. Quando um processo solicita acesso a um recurso, ele recebe uma trava que força outros processos que precisam do mesmo recurso a esperarem até que o primeiro processo seja concluído. Na maioria dos casos, o segundo processo esperará o primeiro processo liberar a trava. A partir daí, tudo continua a funcionar normalmente. Em geral, esse processo demora alguns segundos.
No entanto, às vezes o primeiro processo pode levar mais tempo do que o esperado, fazendo com que o segundo processo (e potencialmente outros processos) fique preso atrás dele enquanto aguarda por esse recurso, o que poderia impactar o desempenho do aplicativo e a experiência do usuário final. A duração de uma consulta e o contexto da transação determinam quanto tempo duram as travas.
É importante observar que nem todo bloqueio do SQL Server é ruim. Na verdade, bloqueios são normais. Afinal, o SQL Server é um sistema de concorrência baseado em trava e seus recursos só podem ser acessados por um processo por vez. É claro que, eventualmente, processos concorrentes irão ocorrer. O problema reside nos bloqueios que demoram demais para se resolver e criam cadeias de bloqueios.
Além disso, nem todos os tipos de travas bloqueiam automaticamente todas as outras travas. Alguns tipos de travas são mais restritivas e, assim, mais sujeitas a bloquear outras travas. Alguns tipos de travas incluem:
- Travas exclusivas: Essas travas são atribuídas quando um processo precisa modificar dados. Elas garantes que dois processos não consigam alterar dados simultaneamente.
- Travas de esquemas: Travas de esquemas são dadas a processos que dependem de um esquema consistente durante as operações.
- Travas compartilhadas: Essas travas são atribuídas a operações de leitura. São menos restritivas que outros tipos de travas e, por isso, raramente resultam em bloqueios.
- Travas de atualização: Travas de atualização são concedidas a atualizações e geralmente são usadas para atualizações que ocorrem em várias etapas.
Alguns tipos de travas são mais compatíveis com outras. Por exemplo, as travas exclusivas não são compatíveis com nenhum outro tipo de trava e resultarão em um bloqueio se outro processo precisar do recurso; travas compartilhadas e de atualização podem estar no mesmo recurso ao mesmo tempo.
Bloqueios ocorrem quando dois ou mais processos precisam acessar o mesmo recurso ao mesmo tempo. Quando um processo solicita acesso a um recurso, ele recebe uma trava que força outros processos que precisam do mesmo recurso a esperarem até que o primeiro processo seja concluído. Na maioria dos casos, o segundo processo esperará o primeiro processo liberar a trava. A partir daí, tudo continua a funcionar normalmente. Em geral, esse processo demora alguns segundos.
No entanto, às vezes o primeiro processo pode levar mais tempo do que o esperado, fazendo com que o segundo processo (e potencialmente outros processos) fique preso atrás dele enquanto aguarda por esse recurso, o que poderia impactar o desempenho do aplicativo e a experiência do usuário final. A duração de uma consulta e o contexto da transação determinam quanto tempo duram as travas.
É importante observar que nem todo bloqueio do SQL Server é ruim. Na verdade, bloqueios são normais. Afinal, o SQL Server é um sistema de concorrência baseado em trava e seus recursos só podem ser acessados por um processo por vez. É claro que, eventualmente, processos concorrentes irão ocorrer. O problema reside nos bloqueios que demoram demais para se resolver e criam cadeias de bloqueios.
Além disso, nem todos os tipos de travas bloqueiam automaticamente todas as outras travas. Alguns tipos de travas são mais restritivas e, assim, mais sujeitas a bloquear outras travas. Alguns tipos de travas incluem:
- Travas exclusivas: Essas travas são atribuídas quando um processo precisa modificar dados. Elas garantes que dois processos não consigam alterar dados simultaneamente.
- Travas de esquemas: Travas de esquemas são dadas a processos que dependem de um esquema consistente durante as operações.
- Travas compartilhadas: Essas travas são atribuídas a operações de leitura. São menos restritivas que outros tipos de travas e, por isso, raramente resultam em bloqueios.
- Travas de atualização: Travas de atualização são concedidas a atualizações e geralmente são usadas para atualizações que ocorrem em várias etapas.
Alguns tipos de travas são mais compatíveis com outras. Por exemplo, as travas exclusivas não são compatíveis com nenhum outro tipo de trava e resultarão em um bloqueio se outro processo precisar do recurso; travas compartilhadas e de atualização podem estar no mesmo recurso ao mesmo tempo.
Comece já a análise de bloqueio do SQL Server
SolarWinds SQL Sentry
Analise causas raiz de bloqueios rapidamente
Tenha visibilidade em todo o domínio de dados
Acesse métricas de desempenho acionáveis
Saiba mais sobre nossos produtos mais conhecidos




