Arquivo

Archive for the ‘Performance e Tuning’ Category

Dicas para um DBA Iniciante – Listando detalhes sobre conexões no SQL Server

E ai pessoal, tudo bem?

Hoje quero compartilhar um script muito interessante que necessitei utilizar em uma situação na qual precisava listar detalhes das conexões abertar com um servidor de banco de dados SQL Server e quais os erros que cada conexão estava recebendo.

Para conseguir essas informações utilizei a sessão system_health do extended events, lendo as informações disponíveis no RING BUFFER.

Declare @LanguageID int;

Select @LanguageID = lcid
From sys.syslanguages
Where name = @@Language;

WITH RingBufferXML
As (SELECT CAST(record as xml) AS RecordXML
FROM sys.dm_os_ring_buffers
WHERE ring_buffer_type= 'RING_BUFFER_CONNECTIVITY'),
RingBufferConnectivity
As (SELECT x.y.value('(/Record/@id)[1]', 'int') AS [RecordID],
x.y.value('(/Record/ConnectivityTraceRecord/RecordType)[1]', 'varchar(max)') AS RecordType,
x.y.value('(/Record/ConnectivityTraceRecord/RecordTime)[1]', 'datetime') AS RecordTime,
x.y.value('(/Record/ConnectivityTraceRecord/SniConsumerError)[1]', 'int') AS Error,
x.y.value('(/Record/ConnectivityTraceRecord/State)[1]', 'int') AS State,
x.y.value('(/Record/ConnectivityTraceRecord/Spid)[1]', 'int') AS SPID,
x.y.value('(/Record/ConnectivityTraceRecord/RemoteHost)[1]', 'varchar(max)') AS RemoteHost,
x.y.value('(/Record/ConnectivityTraceRecord/RemotePort)[1]', 'varchar(max)') AS RemotePort,
x.y.value('(/Record/ConnectivityTraceRecord/LocalHost)[1]', 'varchar(max)') AS LocalHost,
x.y.value('(/Record/ConnectivityTraceRecord/LoginTimersInMilliseconds/TotalTime)[1]', 'int') AS TotalTime,
x.y.value('(/Record/ConnectivityTraceRecord/LoginTimersInMilliseconds/EnqueueTime)[1]', 'int') AS EnqueueTime,
x.y.value('(/Record/ConnectivityTraceRecord/LoginTimersInMilliseconds/NetWritesTime)[1]', 'int') AS NetWritesTime,
x.y.value('(/Record/ConnectivityTraceRecord/LoginTimersInMilliseconds/NetReadsTime)[1]', 'int') AS NetReadsTime,
x.y.value('(/Record/ConnectivityTraceRecord/LoginTimersInMilliseconds/Ssl/TotalTime)[1]', 'int') AS SslTotalTime,
x.y.value('(/Record/ConnectivityTraceRecord/LoginTimersInMilliseconds/Sspi/TotalTime)[1]', 'int') AS SspiTotalTime,
x.y.value('(/Record/ConnectivityTraceRecord/LoginTimersInMilliseconds/TriggerAndResGovTime)[1]', 'int') AS TriggerAndResGovTime
FROM RingBufferXML
CROSS APPLY RecordXML.nodes('//Record') AS x(y))
SELECT RBC.*, m.text
FROM RingBufferConnectivity RBC
LEFT JOIN sys.messages M ON
RBC.Error = M.message_id AND M.language_id = @LanguageID
WHERE RBC.RecordType IN ('Error', 'LoginTimers')
ORDER BY RBC.RecordTime DESC;
 

Espero que gostem e não deixem de inscreverem-se no blog, no canal do youtube, no grupo de discussão SQLManiacs  e em nosso grupo no TELEGRAM.

Grande abraço a todos.

Anúncios

Highway to Hell – Azure SQL Datawarehouse – Criando tabelas

E ai pessoal, tudo bem?

No vídeo de hoje quero mostrar para vocês como podemos criar nossas tabelas no SQL Datawarehouse e também como alterar o tipo de distribuição de uma tabela já existente.

Espero que gostem e não deixem de inscreverem-se no blog, no canal do youtube, no grupo de discussão SQLManiacs  e em nosso grupo no TELEGRAM.

Grande abraço a todos.

Mesa Redonda – Bancos Relacionais X NoSQL

Fala pessoal, tudo bem?

Na próxima Sexta-Feira (11/01) participarei de uma mesa redonda online com vários profissionais de tecnologia e discutiremos sobre bancos de dados relacionais e NoSQL.

Para participar do evento é só fazer sua inscrição através do link https://www.meetup.com/pt-BR/dotnet-Sao-Paulo/events/257369325/

Espero todos vocês no evento e não deixem de inscreverem-se no blog, no canal do youtube, no grupo de discussão SQLManiacs  e em nosso grupo no TELEGRAM.

Grande abraço.

 

MASTERING YOUR SQL SERVER ENVIRONMENT – Quer tornar-se um especialista em 2019?

E ai pessoal, tudo bem?

Já estão abertas as inscrições para o treinamento MASTERING YOUR SQL SERVER ENVIRONMENT que ministro pela Vita Database Solutions!!!!

Montei esse treinamento com o intuito de formar um profissinal diferenciado, que consiga analisar e discutir detalhadamente como funcionam todos os componentes existentes no SQL Server e como garantir que os recursos de hardware (CPU, Memória e Disco) sejam utilizados da melhor maneira possível.

Com os tópicos discutidos neste treinamento você estará 100% apto a planejar e implementar uma solução de banco de dados utilizando o SQL Server além de também poder executar tarefas mais complexas, tais como resolução de problemas (troubleshooting) e otimização de desempenho em um ambiente OnPremisse.

Também preciso adiantar que TODO o material foi revisado e atualizado para refletir as novidades do SQL Server 2017 e também do SQL Server 2019, então venha preparado para uma discussão de SQL Server Internals no mais alto nível!!!!!

Se quiser saber mais detalhes sobre o treinamento é só acessar https://www.vitadbsolutions.com/mastring-your-sql-server-environmen

Não deixe de aproveitar essa oportunidade e mande logo um email para contato@vitadbsolutions.com para reservar a sua vaga.

Espero todos vocês no treinamento e não deixem de inscreverem-se no blog, no canal do youtube, no grupo de discussão SQLManiacs  e em nosso grupo no TELEGRAM.

Grande abraço.

Highway to Hell – Azure SQL Datawarehouse – O que é uma distribution?

E ai galera, tudo bem com vocês?

No vídeo de hoje quero discutir com vocês o que é uma distribution, quais os modelos disponíveis no SQLDW e qual a vantagem e desvantagens de cada uma delas.

Espero que gostem e não deixem de inscreverem-se no blog, no canal do youtube, no grupo de discussão SQLManiacs  e em nosso grupo no TELEGRAM.

Grande abraço a todos.

#NATALNERD – NerdZão #75 – SQL Maniacs

Fala galera, tudo bem?

Sei que está um pouco em cima da hora, mas  quero convidá-los para participar do meetup que o SQLManiacs realizará com a galera do NERDZÃO, no dia 21/11 a partir das 19hs, na unidade da FIAP que fica na Av. Lins de Vasconcelos, 1264.

Para participar é só acessar o link https://www.meetup.com/Nerdzao/events/255089597/ e fazer sua inscrição.

Espero que gostem e não deixem de inscreverem-se no blog, no canal do youtube, no grupo de discussão SQLManiacs  e em nosso grupo no TELEGRAM.

Grande abraço a todos.

Treinamento – Mastering Your SQL Server Environment

E ai pessoal, tudo bem?

Já estão abertas as inscrições para o treinamento MASTERING YOUR SQL SERVER ENVIRONMENT que ministro pela Vita Database Solutions!!!!

Montei esse treinamento com o intuito de formar um profissinal diferenciado, que consiga analisar e discutir detalhadamente como funcionam todos os componentes existentes no SQL Server e como garantir que os recursos de hardware (CPU, Memória e Disco) sejam utilizados da melhor maneira possível.

Com os tópicos discutidos neste treinamento você estará 100% apto a planejar e implementar uma solução de banco de dados utilizando o SQL Server além de também poder executar tarefas mais complexas, tais como resolução de problemas (troubleshooting) e otimização de desempenho em um ambiente OnPremisse.

Também preciso adiantar que TODO o material foi revisado e atualizado para refletir as novidades do SQL Server 2017 e também do SQL Server 2019, então venha preparado para uma discussão de SQL Server Internals no mais alto nível!!!!!

Se quiser saber mais detalhes sobre o treinamento é só acessar https://www.vitadbsolutions.com/mastring-your-sql-server-environmen

Não deixe de aproveitar o descontaço de final de ano e mande logo um email para contato@vitadbsolutions.com para reservar a sua vaga.

Espero todos vocês no treinamento e não deixem de inscreverem-se no blog, no canal do youtube, no grupo de discussão SQLManiacs  e em nosso grupo no TELEGRAM.

Grande abraço