SQL Saturday Joinville

É isso aí galera. Gostaria de convidá-los a participar de mais um evento da comunidade técnica de SQL SERVER: O SQLSATURDAY, vai ser o número 361 e este vai ocorrer em Joinville. Se você estiver por lá no dia 25/04/2015 não dei xe de comparecer no evento!

São 3 trilhas de palestras o dia todo de caras FERAS no SQL SERVER e alguns Noobs (eu…). Neste dia vou comparar superficialmente as arquiteturas de Oracle e SQL SERVER e apresentar algumas das principais ferramentas que usamos no Oracle. Vou mostrar a importância de conhecermos duas tecnologias de SGBDs para nosso desenvolvimento profissional.

Inscreva-se, é grátis! Graças aos patrocinadores!

Home page do evento: https://www.sqlsaturday.com/361/eventhome.aspx

ps: Não, não vou puxar a sardinha pro lado do SQL SERVER, quem me conhece sabe que eu jamais faria isso! 😉

 

sql-server-2014 oracle

Cycle do Error LOG

Já tentou ler aquele log de erros do SQL SERVER quando o mesmo está cheio? Péssimo né?

É uma boa prática implementar um job que realiza a “reciclagem” do log de erros. Simplesmente através do comando abaixo:

[sql]
exec master..sp_cycle_errorlog;
GO
[/sql]

Por que? Simples, seu log não fica tão cheio e fica mais facil de apagar os logs arquivados mais antigos para evitar potencial perda de espaço em disco – Sim, existem ataques que consistem em encher o log até estourar o espaço em disco.

Então, no seu ambiente, crie essa rotina, coloque este comando em um job para ser executado semanalmente ou diariamente, dependendo das suas configurações.

Executei o comando para reciclar o LOG de Erros….
errorlog_1

 

… E foi criado um novo Error log atual(Current):
errorlog_2

 

É isso pessoal, Happy SQLSERVING!

 

Backup dividido em vários arquivos ou Stripping de Backup

O procedimento de split ou stripping de Backup é particularmente interessante quando nos deparamos com dois problemas:

  • Depenho abaixo do esperado no momento de realização de backup de um banco por contenção de I/O;
  • Temos que disponibilizar o arquivo em algum caminho para cópia e um arquivo seria inviável pelo tamanho do mesmo.

Real World Case: Já passei por alguns casos onde este ajuste foi necessário, um cliente tinha uma base de cer

O único cuidado que devemos ter é: Você precisará de TODOS os arquivos gerados no backup para realizar o restore, tenha isso em mente.

Fazemos o split a partir do comando de backup, conforme abaixo:

[sql]

Backup database POMBO
to disk = ‘c:\emp\pombo_01.bak’,
disk = ‘c:\emp\pombo_02.bak’,
disk = ‘c:\emp\pombo_03.bak’
with stats=5, compression
,copy_only –use esta opção se você não quer estragar a sua política atual de Backup!
;

[/sql]

 

Ficaria algo como na figura abaixo:

backup_stripped

 

É isso pessoal, espero ter ajudado!

 

Instalando o Service Pack em um SQL SERVER em Cluster

Pessoal,

Boa tarde a todos. Neste video mostro como instalar um Service Pack no SQL SERVER quando o mesmo está clusterizado.
Este é um video adicional à serie onde apresentamos como criar um cluster virtual de SQL SERVER.

Espero que seja útil.

Abraços a todos!

Review curso: SQL SERVER Performance with nowait

Então pessoal, resolvi deixar o depoimento a respeito do curso de SQL SERVER Tuning que estou fazendo com a Sr. Nimbus.

Pra quem não sabe, a Sr Nimbus é A consultoria para treinamentos avançados de SQL SERVER no Brasil. Formada por alguns MVPs, possui cursos presenciais e online. Todos recomendadíssimos. A ideia dos cursos não é preparação para provas de certificação, para isso existem muitos CPLS – centros de treinamento parceiros Microsoft – a ideia é apresentar com detalhes o funcionamento dos mecanismos do SQL SERVER. Raro encontrar cursos nestes níveis para outras tecnologias.

O curso de Perf Tuning está sendo ministrado pelo MVP Fabiano Amorim e está em seu final, porém já é possível tirarmos algumas conclusões a respeito do curso:

  • Performance é um assunto complexo, nem se fossem 2 semanas daria tempo de falar tudo a respeito do assunto.
  • Se estiver fazendo esse curso, não olhe pro lado, você já perdeu a explicação sobre um operador do Relational Engine.
  • Este curso complementa o ( também indispensável) de Internals, ministrado pelo Luti.
  • Tive a sorte de estar em uma turma que tinha como aluno o Thiago Carlos Alencar – Que ministra cursos na Ká Solution e manda muito bem em Perf Tuning também.
  • Faça e refaça os exercícios e demos em casa, é a melhor maneira de aprender.
  • estude…

Enfim, é um curso essencial, necessário e que precisa ser feito por todo mundo que pretende conhecer um pouco mais sobre o otimizador de consultas do SQL SERVER. Vale o investimento.

Conclusão: Quanto mais estudamos tecnologia, mais vemos que precisamos estudar…

Abraços!

Marcelo

 

 

 

 

 

Acessando o SQL SERVER quando administradores estão travados…

Boa noite pessoal,

Recentemente passei um perrengue pois não conseguia acessar uma instância que nossa equipe administraria mas que não tinha acesso ainda pois tratava-se de um sistema legado.

Resumindo: Ninguém tinha ideia de qual era a senha do famoso e odiado ‘SA’. E ninguém do lado do cliente tinha acesso administrativo na instância em questão. As aplicações estavam funcionando (ainda e por sorte) em modo ‘piloto automático’.

Em comum acordo com o cliente, realizamos o seguinte procedimento:

1. Criamos um usuário local no Windows com privilégio de Administrador;
Screen Shot 2014-10-18 at 19.36.57

2. Acessamos o Windows a partir deste usuário;

3. Paramos a instância do SQL SERVER e de todos os outros serviços relacionados a esta;

4. Alteramos a configuração da instância para ser iniciada em modo SINGLE USER (-m);

 Screen Shot 2014-10-18 at 20.57.51

5. Alteramos a configuração de autenticação do serviço do SQL SERVER para o usuário criado no passo 1;

Screen Shot 2014-10-18 at 20.58.23

6. Conectamos à instância via SQLCMD e …

Screen Shot 2014-10-18 at 21.22.18

7. Adicionamos o usuário recém-criado como sysadmin da instância;

8. Saímos do SQLCMD, pois somos loucos por Windows, interface gráfica e SSMS! 🙂

9. Alteramos o serviço do SQL SERVER para Local System como estava anteriormente e retiramos o parâmetro -m da instância;

10. Reiniciamos o serviço do SQL SERVER e iniciamos os outros serviços relacionados a instância e …

Screen Shot 2014-10-18 at 21.25.49

11. Acessamos o SQL SERVER com sucesso a partir do SSMS com o nosso usuário recém-adicionado à role de SYSADMIN!

Screen Shot 2014-10-18 at 21.30.04

Ps:

  • Esta não é a melhor prática para se obter acesso à um SQL SERVER e fere vários protocolos e melhores práticas de segurança da informação – a melhor forma é ter a documentação do ambiente devidamente atualizada.
  • Tudo foi feito com consentimento do cliente, no caso, atual dono do sistema que herdou o servidor. Não tente fazer nada por ‘debaixo dos panos’, muito menos indisponibilizar suas bases de dados sem que ele fique sabendo!
  • No passo 7 utilizamos a procedure sp_addsrvrolemember para adicionarmos nosso LOGIN ao grupo de sysadmin pois realizamos este procedimento em um SQL SERVER 2008 R2. No entanto, este comando está marcado para entrar em desuso. O ideal é utilizar o ALTER SERVER ROLE (compatível com SQL SERVER 2012+).

É isso pessoal, espero que ajude vocês caso tenham algum problema e até a próxima!

UPDATE: Se nada disso funcionar, tente inicar o SQL SERVER a partir de um prompt de comando com o parametro -m”SQLCMD” e a partir de outro prompt tente executar o SQLCMD.

Fontes de referencia:

Abaixo o vídeo com o passo a passo realizado: