Category Archives: Boas Praticas

Say goodbye to Service Packs!!

Did you hear the news?

Microsoft is changing its Service Model for SQL Server and the major difference is that Service Packs will be no longer released starting on SQL Server 2017. However, this doesn’t mean that you no longer will have new features and product enhancements, rather than they will release new features and so on in Cumulative Updates.

Why are they doing this for SQL Server 2017? Well, in my personal opinion I believe that with major product versions being released almost every year or two years, they want to be faster in terms of releasing new fixes, launching new features and so on. Read the rest of this entry

Agora tenho uma página no Facebook

Olá pessoal,

Recentemente criei uma página deste meu blog no Facebook para compartilhar assuntos relacionados a banco de dados SQL Server e também BI já que ultimamente tenho entrado um pouco nesse mundo.

Lá eu divulgo, postagens não apenas minhas, mas conteúdos que eu acho interessante e que não necessariamente criaria um post em especifico. Então, se você tem facebook e me segue por aqui, te recomendo a seguir também a minha página!

Então peço que curtam a minha página, isso me motiva mais e mais a continuar postando vários assuntos relacionados ao SQL Server.

https://www.facebook.com/frecciablog/

image

Abraços e até logo!

Marcos Freccia
Data Platform MVP

O Falso Full Recovery Model

Olá pessoal,

Sempre temos aquela percepção de que realizando a mudança do recovery model para FULL a base automaticamente estará nesse recovery model, o que não é verdade.

Para comprovar esse fato, podemos visualizar nas imagens abaixo.

 

image

Como você pode ver isso nos levaria a crer que a base está no recovery model FULL, porém isso é o que chamamos de PSEUDO-FULL, acreditamos que a base está, mas a informação esta errada. Para comprovar precisamos realizar a seguinte consulta.

image

Como você pode ver, não possuímos um backup base para criarmos o nosso backup-chain ou a cadeia de backups. Para realmente estar em Full Recovery Model precisamos realizar o primeiro backup full.

image

Realizando um backup Full nos asseguramos que nossa base de dados está em Full Recovery Model e possuímos um backup como base para iniciar nossa cadeia de backups.

É importante estar ligado nessa informação, pois o PSEUDO-FULL pode nos levar a problemas com o Transaction Log File estourar o espaço em disco.

Espero que tenham gostado dessa informação!

 

Marcos Freccia
SQL Server MVP

Procurando por não sysadmin job owners

Olá pessoal,

Na semana passada tive uma demanda para retornar uma lista de Jobs onde os owners não estavam na role sysadmin, podendo trazer assim algum risco para a execução do mesmo. Para não passar de job a job procurando pela informação, criei um script bastante simples para resolver esse problema. Espero que gostem!

select Name,SUSER_SNAME(owner_sid) as JobOwner
from msdb.dbo.sysjobs
where enabled = 1
and IS_SRVROLEMEMBER(‘sysadmin’,SUSER_SNAME(owner_sid)) <> 1

O resultado retornado é este logo abaixo. Assim, vocês podem analisar de uma maneira facil e rápida, se devemos trocar o Job Owner do job em questão ou não.

image

 

Espero que tenham gostado.

Marcos Freccia
SQL Server MVP

SQL Server 2012 SP2 Liberado. Sempre há um porém.

Olá pessoal,

Ontem a Microsoft liberou para download o Service Pack 2 do SQL Server 2012, onde aqui você pode encontrar a lista de bugs corrigidos.

Existem inumeras vantagens de sempre manter o SQL Server no ultimo Service Pack lançado para aquele produto, porém existe um pequeno problema (que pode se tornar grande) no SQL Server 2012 e também encontrado no SQL Server 2014 é que o Rebuild Online de um indice clustered rodando em paralelo pode causar corrompimento dos dados. Segundo a Microsoft esse comportamento não é tão facil de acontecer, mas caso aconteça, você pode sim ter um grande problema.

Apenas passam por esse problema o SQL Server 2012 e SQL Server 2014 Enterprise Editions, ja que os mesmos possibilitam o rebuild de índice online.

O que é importante lembrar é que o Service Pack 2 liberado ontem, não contempla a correção deste problema, sendo que o mesmo será corrigido posteriormente.

O proprio link acima, mostra um possivel workaround que seria setar o MAXDOP = 1 na instancia, ou setar o MAXDOP = 1 apenas na rotina de desfragmentação de indices.

 

Caso alguem ja tenha passado por esse problema, é sempre bom se atentar ao workaround enquanto a solução definitiva não é liberada.

 

Até mais,
Marcos Freccia
SQL Server MVP

SQL Server Connect Item – Central Management Server

Olá Pessoal,

Estou um bom tempo afastado do blog, mas é por uma boa causa. Essa semana passei por um pequeno problema com o Central Management Server (CMS). Para que administra muitos servidores de SQL Server, sabe o quanto essa feature ajuda em nosso dia-a-dia.

Realizando uma consulta utilizando o CMS vi que um servidor estava dentro de um pasta errada, no mesmo momento realizei a remoção da mesma, porem ai é que vem o problema. Se você já esta com a query aberta naquela pasta onde o servidor excluido estava o SQL Server ainda considera o mesmo se você realizar uma nova consulta. Um workaround seria fechar a query e abri-la novamente e só assim o SQL Server passará a considerar a lista atual de servidores. Read the rest of this entry

Connect Item para melhorias em mensagens de erro

Olá Pessoal,

Isso já estava me dando uma dor de cabeça grande e de uma vez por todas decidi abrir um connect de sugestão para o SQL Server. Não sei se muitos sofrem com esse mesmo problema e com isso peço a opinião de todos aqui é referente a mensagem de erro logada no errolog do SQL Server quando o serviço do SQL Engine é reiniciado ou justamente para de funcionar.

Atualmente a mensagem de erro logada é essa abaixo.

SQL Server is terminating in response to a ‘stop’ request from Service Control Manager. This is an informational message only. No user action is required.

Read the rest of this entry

E quando você nao tem Policy Based Management

Olá Pessoal,

O post de hoje é algo bem simples, mas que pode ser bastante pratico no dia-a-dia. Todos aqui sabemos que o Policy Based Management foi criado a partir do SQL Server 2008 para suprir uma grande necessidade de automatização que precisamos na vida de um DBA. Mas o que vocês devem se perguntar é quando não temos essa ferramenta para nos ajudar, o que devemos fazer para ter a mesma facilidade?

Read the rest of this entry

Pequenos tutoriais em SQL Server

Olá Pessoal,

Criei mais três pequenos videos ensinando a fazer algumas operações no SQL Server e também no Integration Services. A ideia dos videos são ensinar aqueles que estão iniciando na carreira de banco de dados como simples tarefas podem ser automatizadas.

Espero que gostem!!!

Criando backups com o SQL Server

Criando um sinônimo no SQL Server

Utilizando o For Each Loop Container

Abraços,
Marcos Freccia
[MTA|MCTS|MCITP|MCT SQL Server 2008]

Fórum MSDN SQL Server – O que, como e porque. Meus pensamentos

Olá pessoal,

Hoje resolvi fazer um post um pouco diferente e principalmente para abordar um ponto que notado a muito tempo nos fóruns de SQL Server no MSDN. Com esse post acredito que muitos ficaram ofendidos, ou não concordaram com o meu ponto de vista mas sempre lembrando e já deixando a salva para o disclaimer: Tudo o que você ver e/ou ler neste blog é de inteira responsabilidade do autor e não expõe a visão da Microsoft Corporation.

Read the rest of this entry