Vídeo do Luti #05 - Minha empresa não investe em mim
Canal no YouTube: https://www.youtube.com/channel/UCaDiCu2LF-PRkswTKrLSpow
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
SELECT CAST (power(CrazyIdeas, Curiosity) * (RealLifeExperience + MyMistakes)) / FreeTime) AS VARCHAR(MAX)) FROM MyBrain WITH (NOLOCK, INDEX('idx_Neuron')) WHERE ThingsIThinkIKnow in ('SQL Server', 'DB2', '.NET', 'Cloud')
segunda-feira, 31 de agosto de 2015
quinta-feira, 27 de agosto de 2015
Pesquisa sobre treinamentos da Sr. Nimbus
Depois
que voltei a dedicar 100% do meu tempo para a Nimbus, tenho trabalhado bastante
na revisão dos nossos treinamentos e nos modelos que podemos oferecer para
vocês. E nunca é simples, pois são pedidos diversos e é impossível conciliar
tudo. Algumas vezes os mais inesperados treinamentos agradam o público,
enquanto outros que parecem prometer, acabam com pouca demanda.
Uma
curiosidade… Você sabia que na história do treinamento Mastering SQL Server
(antigo Internals), o pior público foi em uma turma noturna em São Paulo? Mesmo
já tendo recebido diversos pedidos de treinamento no período da noite, o interesse sempre é maior quando integral.
São essas
experiências que acabam por moldar o que oferecemos na Nimbus, e pode ser que
haja uma oportunidade de melhor atendê-los, então gostaríamos de saber um pouco
mais de vocês através de uma rápida pesquisa (1
a 5 minutos).
Link
para a pesquisa: https://pt.surveymonkey.com/r/9FXLQ3F
*** A cada 50 respostas sortearemos um treinamento
on-demand no dia 15 de Setembro de 2015 (nome e e-mail necessário para o
sorteio) ***
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
quarta-feira, 26 de agosto de 2015
Vídeo 04 - Se sentindo um bosta
Vídeo do Luti #04 - Se sentindo um bosta.
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
SQL Server Administração e Monitoramento em São Paulo
Anunciei o treinamento de Administração e Monitoramento do SQL Server.
Este será realizado em Fevereiro de 2016, São Paulo, antes do Carnaval, e está CONFIRMADA.
Turma: http://www.srnimbus.com.br/calendario/sql22_fev2016_sp/
Ementa: http://www.srnimbus.com.br/sql22/
Passei as últimas semanas atualizando o material (estou ministrando o treinamento in-company) e gostei bastante do resultado. Dei a ele uma ênfase muito grande na parte de segurança avançada, backup/restore, corrupção de dados, xEvents e wait types.
Para conseguir passar tudo em 40 horas eu precisei remover os laboratórios e aumentei consideravelmente o número de demonstrações. Somente considerando os módulos 05 e 08, neste momento temos exatamente 30 demonstrações diferentes.
Como durante o curso explorarmos muitos detalhes do funcionamento do SQL Server, a combinação do SQL22 com o SQL23 (Mastering SQL Server) se tornou uma excelente pedida para DBAs SQL Server. Só não vou anunciar os 2 juntos porque depois de duas semanas em treinamento o cérebro da galera vai fritar…
PS: Se você tem problema com agenda e liberação da empresa, já emende suas férias com o treinamento!
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
Este será realizado em Fevereiro de 2016, São Paulo, antes do Carnaval, e está CONFIRMADA.
Turma: http://www.srnimbus.com.br/calendario/sql22_fev2016_sp/
Ementa: http://www.srnimbus.com.br/sql22/
Passei as últimas semanas atualizando o material (estou ministrando o treinamento in-company) e gostei bastante do resultado. Dei a ele uma ênfase muito grande na parte de segurança avançada, backup/restore, corrupção de dados, xEvents e wait types.
Para conseguir passar tudo em 40 horas eu precisei remover os laboratórios e aumentei consideravelmente o número de demonstrações. Somente considerando os módulos 05 e 08, neste momento temos exatamente 30 demonstrações diferentes.
Como durante o curso explorarmos muitos detalhes do funcionamento do SQL Server, a combinação do SQL22 com o SQL23 (Mastering SQL Server) se tornou uma excelente pedida para DBAs SQL Server. Só não vou anunciar os 2 juntos porque depois de duas semanas em treinamento o cérebro da galera vai fritar…
PS: Se você tem problema com agenda e liberação da empresa, já emende suas férias com o treinamento!
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
quarta-feira, 12 de agosto de 2015
Vídeo 03 - O que é um profissional sênior?
Vídeo do Luti 03 - O que é um profissional sênior?
Concorda? Discorda? Não deixe de colocar aqui ou no YouTube o seu comentário!
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
Concorda? Discorda? Não deixe de colocar aqui ou no YouTube o seu comentário!
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
Post connect - minidump apagando snapshot com DDL trigger e linked server
Murphy realmente é um canalha... Estou ministrando treinamentos de SQL Server para um cliente e ontem iríamos usar um database snapshot que se encaixa perfeitamente em um cenário. para validarmos nosso script, criamos um snapshot e depois fomos removê-lo antes do primeiro uso.
DROP DATABASE XYZSnap
...
Minidump e service down. Divertido não é?!
Nos minutos seguintes tudo em pé funcionando corretamente, encontramos registro no connect e hoje reproduzi com SQL Server 2012 e, com uma variação de comportamento, no 2014.
Abri um item no Connect (https://connect.microsoft.com/SQLServer/feedback/details/1658842), por favor votem se conseguir reproduzir (não em produção, ok?!).
Deixo o texto original que escrevi para referência...
==========================================================
I found this connect item that is exactly what I went thru yesterday in a customer: https://connect.microsoft.com/SQLServer/feedback/details/474486/sql-server-assertion-file-tmpilb-cpp-line-1306-failed-assertion-null-m-ptaskmain-sos-task-getcurrent-m-ptaskmain
When dropping a database snapshot, a DDL trigger uses a linked server to delete a record from a control table. Then a minidump is generated and the service crashes. The SQL Server version is 2008 R2 (SP2) - 10.50.4321.0 (X64).
Using my machine with some instances I could reproduce the problem configuring a linked server from SQL Server 2012 to 2014 and dropping a database snapshot. Here is the beginning of the SQLDumpXXXX.txt:
Computer type is Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz.
Bios Version is DELL - 2
8 X64 level 8664, 2 Mhz processor (s).
Windows NT 6.2 Build 9200 CSD .
Memory
MemoryLoad = 32%
Total Physical = 16278 MB
Available Physical = 11058 MB
Total Page File = 18746 MB
Available Page File = 12232 MB
Total Virtual = 134217727 MB
Available Virtual = 134200260 MB
**Dump thread - spid = 0, EC = 0x000000019943AB90
***Stack Dump being sent to C:\Program Files\Microsoft SQL Server\MSSQL11.INST2012\MSSQL\LOG\SQLDump0008.txt
* *******************************************************************************
*
* BEGIN STACK DUMP:
* 08/12/15 08:44:42 spid 48
*
* Location: tmpilb.cpp:1301
* Expression: NULL == m_pTaskMain || SOS_Task::GetCurrent() == m_pTaskMain
* SPID: 48
* Process ID: 5644
From SQL Server 2014 with a linked server to SQL Server 2012 the behavior is different. The connection is lost, a minidump is generated, but SQL Server doesn't goes down. The drawback of this is that now I can see an exclusive lock on the database, owned by resquest_session_id -2 (DTC is envolved) and request_owner_type EXCLUSIVE_TRANSACTION_WORKSPACE.
Process ID 52 attempted to unlock a resource it does not own: DATABASE: 20 . Retry the transaction, because this error may be caused by a timing condition. If the problem persists, contact the database administrator.
Msg 0, Level 20, State 0, Line 15
A severe error occurred on the current command. The results, if any, should be discarded.
***Stack Dump being sent to C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\LOG\SQLDump0010.txt
* *******************************************************************************
*
* BEGIN STACK DUMP:
* 08/12/15 09:37:56 spid 16
*
* Location: tmpilb.cpp:1301
* Expression: NULL == m_pTaskMain || SOS_Task::GetCurrent() == m_pTaskMain
* SPID: 16
* Process ID: 7840
In this machine I got the following SQL Server versions. Haven't tried with other builds.
Microsoft SQL Server 2014 - 12.0.2480.0 (X64)
Microsoft SQL Server 2012 - 11.0.5058.0 (X64)
The original connect item was closed as "as Not Reproducible", hopefully you will be able to reproduce this one.
/*
Control database on the server that the linked server points to.
*/
--DROP DATABASE ControlDB
CREATE DATABASE ControlDB
USE ControlDB
GO
-- DROP TABLE DatabaseList
CREATE TABLE DatabaseList
( ID INT IDENTITY NOT NULL
, Name VARCHAR(256) NOT NULL)
GO
USE master
GO
/*
Server where the triggers and linked server are configured.
Authentication is made using a specific security context (SQL Server authentication)
*/
USE master
GO
CREATE TRIGGER [ddl_trig_database]
ON ALL SERVER
FOR CREATE_DATABASE
AS
SET ANSI_PADDING ON
PRINT 'Database Created.'
DECLARE @name Varchar(255)
-- CommandText is wrong in the implementation
SELECT @name = EVENTDATA().value('(/EVENT_INSTANCE/TSQLCommand/CommandText)[1]','nvarchar(max)')
SET @name = replace(@name, 'Create Database ', '')
SET @name = RTRIM(ltrim(@name))
print @name
-- Effectively we don't need to insert nothing
insert into [LUTIXPS\INST2012].ControlDB.dbo.DatabaseList (Name) values (@name)
GO
-- DISABLE TRIGGER [ddl_trig_database] ON ALL SERVER
ENABLE TRIGGER [ddl_trig_database] ON ALL SERVER
GO
CREATE TRIGGER [ddl_trig_database_drop]
ON ALL SERVER
FOR DROP_DATABASE
AS
--PRINT 'Database Droped.'
DECLARE @name Varchar(255)
SELECT @name = EVENTDATA().value('(/EVENT_INSTANCE/TSQLCommand/CommandText)[1]','nvarchar(max)')
print @name + char(13)
SET @name = replace(@name, 'Drop Database ', '')
print @name
Delete [LUTIXPS\INST2012].ControlDB.dbo.DatabaseList WHERE Name = @name
GO
-- DISABLE TRIGGER [ddl_trig_database_drop] ON ALL SERVER
ENABLE TRIGGER [ddl_trig_database_drop] ON ALL SERVER
GO
-- DROP DATABASE Test
CREATE DATABASE Test
-- SELECT * FROM sys.master_files
CREATE DATABASE TestSnap
ON PRIMARY (NAME = 'Test', FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\Test_SNAP.mdf')
AS SNAPSHOT OF Test
DROP DATABASE testSnap
GO
==========================================================
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
DROP DATABASE XYZSnap
...
Minidump e service down. Divertido não é?!
Nos minutos seguintes tudo em pé funcionando corretamente, encontramos registro no connect e hoje reproduzi com SQL Server 2012 e, com uma variação de comportamento, no 2014.
Abri um item no Connect (https://connect.microsoft.com/SQLServer/feedback/details/1658842), por favor votem se conseguir reproduzir (não em produção, ok?!).
Deixo o texto original que escrevi para referência...
==========================================================
I found this connect item that is exactly what I went thru yesterday in a customer: https://connect.microsoft.com/SQLServer/feedback/details/474486/sql-server-assertion-file-tmpilb-cpp-line-1306-failed-assertion-null-m-ptaskmain-sos-task-getcurrent-m-ptaskmain
When dropping a database snapshot, a DDL trigger uses a linked server to delete a record from a control table. Then a minidump is generated and the service crashes. The SQL Server version is 2008 R2 (SP2) - 10.50.4321.0 (X64).
Using my machine with some instances I could reproduce the problem configuring a linked server from SQL Server 2012 to 2014 and dropping a database snapshot. Here is the beginning of the SQLDumpXXXX.txt:
Computer type is Intel(R) Core(TM) i7-2670QM CPU @ 2.20GHz.
Bios Version is DELL - 2
8 X64 level 8664, 2 Mhz processor (s).
Windows NT 6.2 Build 9200 CSD .
Memory
MemoryLoad = 32%
Total Physical = 16278 MB
Available Physical = 11058 MB
Total Page File = 18746 MB
Available Page File = 12232 MB
Total Virtual = 134217727 MB
Available Virtual = 134200260 MB
**Dump thread - spid = 0, EC = 0x000000019943AB90
***Stack Dump being sent to C:\Program Files\Microsoft SQL Server\MSSQL11.INST2012\MSSQL\LOG\SQLDump0008.txt
* *******************************************************************************
*
* BEGIN STACK DUMP:
* 08/12/15 08:44:42 spid 48
*
* Location: tmpilb.cpp:1301
* Expression: NULL == m_pTaskMain || SOS_Task::GetCurrent() == m_pTaskMain
* SPID: 48
* Process ID: 5644
From SQL Server 2014 with a linked server to SQL Server 2012 the behavior is different. The connection is lost, a minidump is generated, but SQL Server doesn't goes down. The drawback of this is that now I can see an exclusive lock on the database, owned by resquest_session_id -2 (DTC is envolved) and request_owner_type EXCLUSIVE_TRANSACTION_WORKSPACE.
Process ID 52 attempted to unlock a resource it does not own: DATABASE: 20 . Retry the transaction, because this error may be caused by a timing condition. If the problem persists, contact the database administrator.
Msg 0, Level 20, State 0, Line 15
A severe error occurred on the current command. The results, if any, should be discarded.
***Stack Dump being sent to C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\LOG\SQLDump0010.txt
* *******************************************************************************
*
* BEGIN STACK DUMP:
* 08/12/15 09:37:56 spid 16
*
* Location: tmpilb.cpp:1301
* Expression: NULL == m_pTaskMain || SOS_Task::GetCurrent() == m_pTaskMain
* SPID: 16
* Process ID: 7840
In this machine I got the following SQL Server versions. Haven't tried with other builds.
Microsoft SQL Server 2014 - 12.0.2480.0 (X64)
Microsoft SQL Server 2012 - 11.0.5058.0 (X64)
The original connect item was closed as "as Not Reproducible", hopefully you will be able to reproduce this one.
/*
Control database on the server that the linked server points to.
*/
--DROP DATABASE ControlDB
CREATE DATABASE ControlDB
USE ControlDB
GO
-- DROP TABLE DatabaseList
CREATE TABLE DatabaseList
( ID INT IDENTITY NOT NULL
, Name VARCHAR(256) NOT NULL)
GO
USE master
GO
/*
Server where the triggers and linked server are configured.
Authentication is made using a specific security context (SQL Server authentication)
*/
USE master
GO
CREATE TRIGGER [ddl_trig_database]
ON ALL SERVER
FOR CREATE_DATABASE
AS
SET ANSI_PADDING ON
PRINT 'Database Created.'
DECLARE @name Varchar(255)
-- CommandText is wrong in the implementation
SELECT @name = EVENTDATA().value('(/EVENT_INSTANCE/TSQLCommand/CommandText)[1]','nvarchar(max)')
SET @name = replace(@name, 'Create Database ', '')
SET @name = RTRIM(ltrim(@name))
print @name
-- Effectively we don't need to insert nothing
insert into [LUTIXPS\INST2012].ControlDB.dbo.DatabaseList (Name) values (@name)
GO
-- DISABLE TRIGGER [ddl_trig_database] ON ALL SERVER
ENABLE TRIGGER [ddl_trig_database] ON ALL SERVER
GO
CREATE TRIGGER [ddl_trig_database_drop]
ON ALL SERVER
FOR DROP_DATABASE
AS
--PRINT 'Database Droped.'
DECLARE @name Varchar(255)
SELECT @name = EVENTDATA().value('(/EVENT_INSTANCE/TSQLCommand/CommandText)[1]','nvarchar(max)')
print @name + char(13)
SET @name = replace(@name, 'Drop Database ', '')
print @name
Delete [LUTIXPS\INST2012].ControlDB.dbo.DatabaseList WHERE Name = @name
GO
-- DISABLE TRIGGER [ddl_trig_database_drop] ON ALL SERVER
ENABLE TRIGGER [ddl_trig_database_drop] ON ALL SERVER
GO
-- DROP DATABASE Test
CREATE DATABASE Test
-- SELECT * FROM sys.master_files
CREATE DATABASE TestSnap
ON PRIMARY (NAME = 'Test', FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\DATA\Test_SNAP.mdf')
AS SNAPSHOT OF Test
DROP DATABASE testSnap
GO
==========================================================
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
sexta-feira, 7 de agosto de 2015
Teaser - portal...
Trabalhando bastante no portal de treinamentos on-demand da Sr. Nimbus!
Novidades por vir...
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
Novidades por vir...
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
SQLSat 424 - ColumnStore Internals e PreCon
No dia 26 de Setembro estarei em São Paulo para mais um SQL Saturday! O SQLSat #424 vai acontecer na UNIP Tatuapé e novamente vai juntar grandes nomes da comunidade técnica de SQL Server deste país.
A grade foi publicada (http://www.sqlsaturday.com/424/Sessions/Schedule.aspx) e confesso que fiquei surpreso com a quantidade de assuntos interessantes. Espero que os palestrantes se preparem bastante e mandem muito bem, agradando ao público.
Estarei apresentando sobre Columnstore Internals (http://www.sqlsaturday.com/424/Sessions/Details.aspx?sid=38361), apareça por lá!
Aproveito para deixar uma dica sobre a precon do Kevin Boles, por R$ 300,00 você pode participar de um treinamento de um dia sobre tuning.
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
A grade foi publicada (http://www.sqlsaturday.com/424/Sessions/Schedule.aspx) e confesso que fiquei surpreso com a quantidade de assuntos interessantes. Espero que os palestrantes se preparem bastante e mandem muito bem, agradando ao público.
Estarei apresentando sobre Columnstore Internals (http://www.sqlsaturday.com/424/Sessions/Details.aspx?sid=38361), apareça por lá!
Aproveito para deixar uma dica sobre a precon do Kevin Boles, por R$ 300,00 você pode participar de um treinamento de um dia sobre tuning.
|
||||
|
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
segunda-feira, 3 de agosto de 2015
SQLServerDF - Material do encontro XXVI
Post rápido para publicar o material do último encontro do SQLServerDF.
Apresentando o DocumentDB
Para variar eu esqueci de tirar fotos da sessão, só tirei uma foto da recepção do pessoal, então quem tiver algum outro registro, por favor me envie.
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
Apresentando o DocumentDB
Para variar eu esqueci de tirar fotos da sessão, só tirei uma foto da recepção do pessoal, então quem tiver algum outro registro, por favor me envie.
Abraços
Luciano Caixeta Moreira - {Luti}
luciano.moreira@srnimbus.com.br
www.twitter.com/luticm
www.srnimbus.com.br
Assinar:
Postagens (Atom)