Arquivo

Archive for janeiro \31\UTC 2019

MVP Conf 2019 – QUERO TODOS LÁ!!!!!!

E ai pessoal, tudo bem?

Quero convidá-los para participar de um dos maiores eventos de tecnologia que ocorrerá em São Paulo esse ano de 2019, o MVPConf.

O evento ocorrerá nos dias 12 e 13 de abril e serão dois dias de muito conhecimento e networking com os maiores MVPs da América Latina.

Estou muito feliz em poder participar com um dos palestrantes desse time de feras e a minha sessão será sobre as novidades do SQL Server 2019 e dividirei o palco com outro excelente MVP, o Marcelo Adade.

Não perca essa oportunidade e acesse agora o site https://www.mvpconf.com.br/ para fazer a sua inscrição.

Espero todos você por lá 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

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.

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.