Dica – Renomear base com mesmo nome, texto em caixas diferentes

O motivo de postar esse sapo é pelo mesmo motivo que a O'reilly publica seus livros com animais na capa

Olá,

Dica rápida de hoje.
Como renomear uma base para o mesmo nome com o texto em diferentes caixas (caixas baixas e altas).
Exemplo: alterar EssEnOme para EsseNome.O post leva em consideração também apenas instâncias com case insensitive.

Pra renomear bases de dados é muito comum utilizar a sp_renamedb por bons motivos:

  •  Procedure antiga já. Bem conhecida;
  • Sintaxe simples: EXEC SP_RENAMEDB ‘NomeBaseAtual’, ‘NovoNome’;
  • Antes de trocar o nome, faz algumas verificações (óbvias, mas necessárias);

Entretanto, a mesma tarefa pode ser executada com o comando ALTER DATABASE:

Mas o que acontece ao renomear uma base com o mesmo nome, com diferenças apenas nas fontes minúsculas e maiúsculas?

Ao usar a SP_RENAMEDB

Resulta na seguite mensagem:

The database ‘DB_aCesso’ already exists. Specify a unique database name.

O comando ALTER DATABASE vai funcionar tranquilo, e favorável:

Vale lembrar que tanto a sp quanto o comando ALTER DATABASE necessitam de lock exclusivo para efetuar a mudança no nome da base. Além de que comandos que alteram o nome da base exigem permissões de db_creator (na base), control server ou sysadmin.

[]’s
Fonte:

Second Shot 2015, exames online e surpresas no agendamento

two-headed-turtle_1842062i

Olá,

Inicialmente seria um post apenas sobre o Second Shot, mas acabou se estendendo e divido em três tópicos:

  • Second Shot
  • Exames Online
  • Surpresas no Agendamento

Vamos aos tópicos…

Second Shot

Second shot está de volta (já havia postado sobre isso em 2014) e isso é uma grande notícia pra quem está planejando tirar uma ou mais certificação, seja pra cumprir alguma resolução de ano novo, etapa de desenvolvimento profissional, etc.

Trata-se de uma promoção onde a Microsoft oferece um voucher, você marca seu exame normalmente, paga normalmente, e se, por um acaso do destino você não passar, você pode refazer a prova sem custo algum (é o que também chamam de free retake)! A ideia é você não precisar do voucher, mas se as coisas não darem certo… Só quem já precisou do Second Shot sabe o quanto é importante ter essa opção disponível…

O que é importante saber:

  • Você pode tirar um voucher de 5 de janeiro de 2015 a 31 de maio de 2015;
  • Se você reprovar em um exame e tiver usado o voucher, você tem até 30 dias pra remarcar a prova sem custo;
  • O voucher cobre todos os exames MCP. No caso de SQL Server, temos o MCSA e o MCSE, que são elegíveis para a promoção;
  • Exames MTA não contam (infelizmente);

Se informe mais aqui.

Exames Online

Com a saída da Prometric e a entrada da Person Vue como parceira da Microsoft, algumas boas novidades chegaram e uma delas é a realização de exames online. A lista dos exames elegíveis para serem feitos online podem ser encontrados aqui. No momento em que esse post é escrito, apenas os exames de MCSA SQL Server estão disponíveis para serem online. Os exames de MCSE não, infelizmente.

Está aí mais uma opção interessante para se certificar (literalmente).

Surpresas no Agendamento

Tendo dito que os exames também são marcados online, mas não todos, sugiro que preste atenção redobrada caso queira marcar seus exames o quanto antes. No meu caso, pretendo tirar a 70-464 e ela não está disponível pra ser feita online (diferente das provas MCSA de Data Platform)  e aí, não me resta outra alternativa a não ser marcar em um centro de treinamento, que agora é Person Vue. Aqui em Brasília, só tenho uma opção de local…Isso não é um sério problema, mas quando fui marcar o exame, fui surpreendido.*¹


 

 

 

Calendário disponível SQN

Esse é o calendário de dias disponíveis para marcação do exame. Na data em que este post foi publicado (06.01.2015), a print acima foi tirada e uma não tão boa notícia me é mostrada, pois pretendia fazer a prova neste mês: a data mais próxima disponível ocorre em 20 de Março. Porém, quando tentei marcar para o dia 20.03, não haviam horários disponíveis! Tive que selecionar a data 27.03 no lugar.

Dizem por aí que o ano começa só depois do carnaval mas não sabia que isso se aplicava até pra marcar um exame, rs.

Com isso, além da dica habitual de jamais em sua vida marcar o exame em PT-BR, recomendo que marque a prova com antecedência, para não ser surpreendido também com períodos distantes do que você pretendia e perder a promoção do Second Shot 🙂

 


E aí, vai marcar algum exame? Alguma informação para adicionar? Dúvidas, críticas? Fique à vontade para comentar.

 

Referências

*¹ – Atualizado devido a comentários.

EDIT 20/01/2015 –  O Bruno (@bruno_silvaba) (vide os comentários) mencionou sobre o calendário da Hepta estar melhor. Ótima dica! Quando publiquei este post, a Hepta não aparecia nos relacionados. E de fato o calendário está muito melhor! Pra quem é de Brasília, tá aí uma boa notícia. Ainda assim, pesquisar a disponibilidade dos centros de aplicação de prova ainda é um conselho válido dependendo da sua região.

 

Hepta

 

DMO’s de Índices: Testes, resets e rebuilds.

raizes, indices. A ideia era pra ser essa.

Era pra passar a ideia de raízes.

Olá,

Antes de iniciar o post, aviso que vou usar bastante o termo DMO (forma de agrupar os termos DMV e DMF). Clique aqui  e aqui  para ler mais sobre os termos.

DMO’s em geral (DMV’s e DMF’s) são coisas legais do SQL Server, que se tornaram disponíveis para uso público a partir do SQL Server 2005 e desde então tem facilitado bastante a obtenção de certas estatísticas relacionadas ao servidor SQL Server e/ou banco de dados em questão.

Existe uma classe de DMO’s extremamente útil que retorna informações relacionadas aos  índices:

Nome

Tipo

dm_db_index_operational_stats

SQL_INLINE_TABLE_VALUED_FUNCTION (DMF)

dm_db_index_physical_stats

SQL_INLINE_TABLE_VALUED_FUNCTION (DMF)

dm_db_index_usage_stats

VIEW (DMV)

Vou chamar todos os três de DMO neste post, embora pessoalmente goste de usar o termo DMV pra tudo (por conveniência), inclusive pra referenciar DMF. Não estou considerando DMO’s de Missing indexes, pois não são o tópico do momento.

O objetivo deste post é explicar o que cada DMO retorna como resultado entrando utilizando a prática pra fixar o conteúdo, demonstrando alguns detalhes do funcionamento de cada um destes itens que não são tão aparentes assim relativos à persistência destas informações, e que podem gerar entendimentos incorretos sobre as informações que ele retorna.

Desafio #1 – Data Compression Labs

Books

Oi,

Antes de começar o próximo post do Compression Labs, tenho um pequeno e humilde desafio pra quem se interessar a responder (e eu até poderia dizer que estou fazendo isso pra ganhar  tempo fazendo de fazer um post direito, mas estaria sendo estupidamente honesto)…Vamos utilizar o script do Compression Labs #1 adaptado para montar o cenário: vamos criar desta vez duas tabelas, sendo que uma delas vai levar compressão de página.

Data Compression Labs #1 – Tipagem inteligente e páginas zumbis

Open books

Olá,

Compressão no SQL Server é de longe uma das features Enterprise mais importantes do produto presentes desde o SQL Server 2008.

Quem já implantou, viu (inúmeras) vantagens e quem não implantou tem vontade ou interesse. Já quem não gosta…caso patológico. Brincadeira, não conheço quem não tenha gostado.

Quando digo compressão  me refiro ao termo em geral, e o SQL Server entrega várias tecnologias de compressão. Os principais são  Backup Compression (abordado em um post passado) e Data Compression.

Então vamos falar um pouco sobre Data Compression…

Impressões sobre o exame 70-465 – Design database solutions for SQL Server 2012

Imagem totalmente random para representar o post

Olá,

Gostei bastante da prova e cá estou aqui pra compartilhar alguns pontos sobre a mesma..

Coisas legais

  • Casos de estudo: Questões baseadas em casos de estudos são bem interessantes pois como você recebe um cenário as questões são melhor contextualizadas, diminuindo questões de dupla interpretação e calando um pouco nosso amigo “depende”. Melhor ainda quando alguns cenários já foram, em outros momentos, presenciados, seja na vida real ou lidos via blogs e livros, e isso ajuda (me ajudou) bastante na hora de diagnosticar o problema da questão.
  • Features: A prova cobra de modo pesado conhecimento em praticamente todas as ferramentas do produto. Você não precisa dominar cada uma: é suficiente saber apenas o que cada uma faz e o que não faz e isso será cobrado em várias questões (bem mais de 15, no meu sorteio). Algumas questões vem praticamente de graça (por exemplo, quando a questão pede “a melhor opção para criação de políticas” e marcar PBM é quase que automático, e esse tipo de situação ocorreu em diversas questões). O que eu lembro que cai na prova: audit, agent alert, policy based management, resource governor, activity monitor, maintenance plain (…), Profiler, Xtended Events, DTC…
  • Melhor escolha: Essas questões são bem legais, porque geralmente apresentam uma cilada com duas ou mais respostas certas. Por exemplo, se você precisar listar as 10 maiores ocorrências de WAITS da sua instância, você usaria uma DMV ou um DBCC? Pro primeiro, você ordenaria e limitava o resultado. No segundo, você precisaria jogar em uma tabela, variável, etc pra depois fazer o mesmo que você faria no primeiro caso. Por isso, geralmente eu digo e repito: se você tiver 10 opções e dentre elas tiver alguma DMV, considere-a com carinho.
  • Alta Disponibilidade VS Disaster Recovery: Muitas questões muito bem orquestradas no sentido de separar uma coisa da outra e outras muito bem feitas. Saber os tipos de backup e qual o papel de cada um em um disaster recovery é muito importante. Sabendo o que cada um faz, e o TEMPO relativo que cada um demora, algumas questões são praticamente de graça. Backup de log é coisa de bonita de  Deus sempre, mas nem sempre é a melhor opção em uma operação de risco (previamente agendada) onde alguma cagada acontece e a recuperação precisa ser rápida. Talvez um Database Snapshot cairia melhor neste cenário de DR, por exemplo…
  • Indexação: Cai bastante coisa atrelado com os estudos de caso. Não são questões fáceis então recomendo dar uma lida antes sobre o assunto.

Coisas que eu não gostei

  • Mais questão de Mirroring, menos de Always-On. A funcionalidade de Mirroring será descontinuada pela MS nas futuras versões, então, esperava que os exames também fizessem isso, de alguma forma.
  • Algo já pontuado pelo Luti, é sobre as questões que possuem mais de uma resposta correta mas não possuem limites (por exemplo, cinco opções, e você pode marcar todas, ou uma). Se tiverem 4 corretas, e eu marcar 3, perco a questão inteira ou ganho proporcional ao valor da questão? Seria legal a Microsoft indicar isso nas questões ou nas instruções do exame, pra dissipar incerteza que no meu caso me fez gastar um tempo extra nessas questões.

Próximo passo (pessoal)

Exame 70-464! Destinei um tempo maior de revisão pra essa prova, já desenvolvimento não é minha praia e confesso que não tenho boa experiência com esse segmento (depois da 70-433) além de não ser atualmente minha atuação. Espero ter êxito nessa prova e compartilhar algumas dicas sobre ela também.

Referências

Recomendo fortemente a leitura dos posts abaixo (em ordem):

  • Luti – http://luticm.blogspot.com.br/2012/04/impressoes-da-prova-70-465.html
  • Alex Rosa – http://alexrosadba.wordpress.com/2012/11/01/70-465-designing-database-solutions-for-sql-server-2012-pass/

Considero as leituras acima bastante importantes caso você vá realizar o exame.

 

Bons estudos!

[]’s

Diferenças entre Instância Padrão x Instância Nomeada

Olá,

Mais um fast-post (postagem rapidona, tradução livre) pra ilustrar um cenário bem comum para quem usa SQL Server eventualmente: o conceito de instâncias nomeadas e instâncias padrão (default). Peço que tenham paciência pois irei partir do começo, e quando digo “começo”, eu falo da parte de instalação do SQL Server.

O processo de instalação é relativamente simples (quer aprender como faz utilizando as melhores práticas?) e não será detalhado aqui. Recomendo este vídeo no MVA especialmente pois ilustra uma instalação completa.

A tela que define a configuração de sua instância é essa aqui:

Padrão ou nomeada?

Assumo que você já conhece o conceito de instância do SQL Server e por isso vamos abordar três tópicos:

  •  Instância padrão
  • Instância nomeada
  • SQL Server Express

Instância padrão

A lei suprema do universo é que, em determinada máquina, só pode ter uma e apenas uma (e apenas uma e apenas uma e apenas u…) instância padrão (Default Instance). Jamais, em hipótese alguma, você poderá ter mais de uma instância padrão na mesma máquina, mesmo se você instalar várias instâncias de versões do SQL Server diferentes.

Por exemplo, se você instalou uma instância padrão do SQL Server 2008 R2 em sua máquina, e deseja instalar uma instância do SQL Server 2012 pra testes, você não pode instalar uma instância padrão, a mesma PRECISA ser nomeada.

Depois de instalado, se o serviço do SQL Server estiver online (pode ser conferido no SQL Server Configuration Manager ou em services.msc do Windows), como logamos?

Assim:

Opções para logar em uma instância padrão:

  • (local) – Como ilustrado na imagem acima;
  • . – Também conhecido como ponto.  Puro unix-pattern 🙂
  • NOMEDASUAMAQUINA – A sua máquina só pode possuir uma instância padrão, logo,
  • MSSQLSERVER – Aponta também para a instância padrão. Note que no ato da instalação, quando se seleciona default, esse é o nome que aparece (Instância padrão) .

Instância nomeada

Enquanto você só pode ter uma instância padrão em uma máquina, poderá ter N instâncias nomeadas. Olha como é criada uma instância nomeada:

nomeada

E como logamos em uma instância nomeada?

Instância nomeada

Ou seja: NomeDaMaquina\NomeInstancia

E o que tem haver o SQL Server Express?

É o campeão em frustar recém-chegados ao SQL Server 🙂

O motivo é a edição EXPRESS, que é bastante baixada seja por desenvolvedores ou para quem está pegando o jeito com o SQL Server, obrigatoriamente é nomeada.

E como logar? Usando um dos  nomes abaixo:

  • NomeDaSuaMaquina\SQLEXPRESS;
  • .\SQLEXPRESS

Porque achei interessante mencionar o SQL Express? Porque um amigo meu topou com essa dificuldade e talvez outra pessoa também tope.

E qual a diferença entre instâncias padrão e nomeada?

Basicamente configurações de conectividade (leia-se: nome do servidor e porta).

Porta pode se tornar um fator problemático  (sem devido conhecimento) se você estiver conectando em uma instância nomeada e o SQL Server Browser não está habilitado nela. Mas isso é assunto pra outro post 🙂

Referência: http://technet.microsoft.com/en-us/library/ms165614(v=sql.90).aspx

 

[]’s

 

Impressões sobre o exame 70-463: Implementing a Data Warehouse with Microsoft SQL Server 2012

Nova seção de scripts!

Boa noite,

Fechando a trilogia MCSA, posto aqui minhas impressões sobre o assunto:

Opinião geral

Consegui aprovação no último exame da trilogia MCSA SQL Server 2012, que é a prova de “BI” , onde seus conhecimentos sobre ETL (principalmente) e Data Quality serão avaliados. A impressão que tive do exame, é que a MS testou um profissional que trabalha ostensivamente com SSIS, usando boa parte dos recursos disponíveis na ferramenta Data Tools. Um pouco de MDS  e DQS também, mas SSIS principalmente.

Sinceramente… Eu já li em vários lugares sobre a decisão da MS de incluir um exame de BI pra MCSA e na teoria é interessante, o profissional fica mais generalista no sentido de lidar com quase toda a plataforma SQL Server principalmente o BI da Microsoft que sofre um pouco de preconceito, mas….na prática, eu atualmente não mexo com SSIS e foi legal aprender uns truques novos (e reforçar uns velhos) mas, na boa, achei bola fora por parte da MS tirar o foco dos tios que trabalham com DEV e ADM, pra estudar como se depura um pacote, loga execuções ou configurar o DQS. O assunto é legal, mas definitivamente não devia ser obrigatório.

Opinião sobre o exame

Foram 79 questões, muitas delas cansativas pois falar de SSIS de modo textual. Teve uma quantidade boa de questões de clicar em interface, de arrastar a task correta pra criar um ETL, tais questões foram bem legais, e acredito que poderiam ter sido aplicado em maior quantidade.

Passei dificuldades por não fazer deploy de pacotes e nem logging ao longo da vida de ETL e sofri bastante com várias destas questões textuais.

Achei a prova difícil, pois o que sei de BI/ETL foi algum tempo trabalhando com o BIDS e um pouco de estudo. Inclusive passei por pouco =p

Pra material de estudo, usei o Training Kit (70-463) cobre muito bem a prova e o Introducing SQL Server 2012, a parte que fala  de DQS e de SSIS é sensacional. Esse livro me ajudou mais que o próprio Training, já que DQS é uma novidade do 2012  e tem um capítulo só pra isso e a parte de deploy de SSIS é bem explicada neste livro. Sem contar que o livro é Free, você pode conferi-lo aqui. Aliás, recomendo esse livro também pra 70-462 (cobre muito bem as novidades).

Sobre o exame

Falar um pouco sobre o que lembro (e posso passar por aqui):

Design and implement a data warehouse

As questões mais legais da prova e a única parte que fui bem, hehe:

A visão que a MS tem sobre BI é importante em várias questões de design;

Columnstore Index: Saber quantos você pode criar por tabela, suas restrições (no 2012!!!) e como criar da melhor forma (ocupando menos espaço…);

– Conceitos de Slow Changing Dimension voltando ao banco (estrutura) com SSIS (Tipos 1, 2 e 3)

– Conceito de FK na tabela Fato é cobrada em algumas questões;

Extract and transform data +  (Load Data)

Tasks que caem na prova (control e data flow): Fuzzy Lookup, Derived Column, Merge, Merge Join, Union All, Sort (atenção), Script Tasks e Expressions Tasks. Dê uma olhada que cai na certa.

– Paralelismo ao rodar pacote de carga se baseando em um modelo Snow Flake (essa questão é bem legal);

– Fluxos de erro e event handler são de importância extrema;

– Task de Container aqui vale ouro. Dê uma olhada no que ela realmente pode fazer em critérios de organização e seu uso + EventHandler;

– Surpresinha: Cai uma questão de MERGE no T-SQL. Cai também de tasks Merge, Merge ALL e Union ALL. Mas eu tô dizendo é sobre o MERGE em T-SQL mesmo.

Configure and deploy SSIS Solutions

A maioria das questões é drag in drop ou de múltipla resposta:

– Estude logging, com carinho. Todas as configurações, todas as formas possíveis de log. Inclusive usando SSIS catalog;

– O conceito de SSIS Catalog, variáveis e parâmetros é fundamental e isso é essencial pra passar na prova;

– Falando em SSIS Catalog, dê uma olhada nas views mais importantes;

– Saiba onde os pacotes .dtsx podem ser implantados (TODOS os meios de armazenamento, desde file system até SSISDB);

Build Data Quality Solutions

Parte surpresa da prova! Caiu muito sobre MDS, inclusive plugins de Excel, assim como caiu algumas questões sobre como configura-se o Data Quality Server e Client (saber os pré-requisitos é fundamental em várias questões). Saber sobre as roles do DQS é importante também.

—-

Conclusão + Offtopic

É isso. Feliz por ter passado no exame porque queria estudar ADM de novo e o ETL não tava deixando. Pensa na felicidade!  Agora, vou estudar o que gosto (e quero) e blogar um pouco mais que o normal (pois, finalmente, não estou focado em um exame em específico). Uma felicidade, também particular, foi de saber que o tempo dedicado aos estudos (e uns finais de semana com ssms) deu certo! Aprendi muita coisa desde que comecei a estudar pra certificações, e, de novo, recomendo que seu principal foco seja para aprendizado.

Next Step: MCSE, os dois exames (Design e Developing). Mas até lá, tenho outros objetivos. Tem uns livros de SQL Server aí no meio, além de muito estudo e laboratório (fora uns projetos meio doidos que eu tô tendo, talvez dê certo, só o futuro dirá). Enfim, me preparar por mais tempo o/

Impressões sobre o exame 70-462: Administering SQL Server 2012 Databases

Exame 70-462

Boa tarde!

Feliz por ter tido êxito no exame 70-462 da Microsoft, segundo capítulo da trilogia de certificações rumo ao MCSA. De cara devo dizer que foi uma prova, no mínimo, emocionante.

Preparação

Os estudos anteriores me ajudaram bastante (muito, mesmo), principalmente  do 70-432. A experiência do dia a dia foi fundamental pra acertar algumas questões, principalmente de backup. Estudei novamente me baseando no Training Kit (Material Oficial do exame) assim como o Prep-kit que vem junto pra revisão (que é bem legal). O guia de todo o momento foi novamente o Skills Measured.

Impressões Gerais

Setenta questões. SETENTA. Duas horas (fiz em inglês, o tempo então é maior que em pt-br). Faltando nove minutos consegui finalizar a prova.  Por isso disse que foi emocionante. Nem deu tempo de revisar praticamente. Achei a prova com uma dificuldade interessante (ela está um meio termo entre a 70-432 e 70-450, comparativamente falando, na minha opinião) .

Assuntos que caíram

  •  Bastante sobre Recovery Model e Backup/Restore. Saiba as limitações de cada um e as possibilidades de restauração. Foi o assunto mais recorrente no exame inteiro, inclusive quando se falava de migração (por consequência). Foram questões bem interessantes, embora discorde fortemente de duas delas que continham mais de uma resposta (uma que tinha mais de um modelo de recuperação).
  • Migração caiu em peso. Algumas perguntas sobre como adaptar uma base SQL Server 2005/2008 para 2012. Atenção para alguns termos caso não esteja habituado: Side-by-side e In-Place;
  • Alta Disponibilidade vai cair ao rodo. Leia (e pratique!) sobre Always On, Failover Cluster e saiba o que cada tipo de replicação faz, vantagens e desvantagens. As configurações das réplicas no Always On (preferência de backups, leitura…) marcam presença;
  • Entender um pouco de RAID (principalmente 0,1,5 e 10)  e como mensurar IO é algo que ajudará com certeza;
  • Outras tecnologias: Algumas questões sobre  SQL Azure, SSRS (uma envolvendo permissionamento) e duas de SSIS;
  • Atualização: Saber qual o melhor procedimento para atualizar nodes e instâncias em mirror garante algumas questões;
  • Contained Database: Algumas questões. Saber quais os modos de habilitar e como se autenticar foi o suficiente para estas questões;
  • Menor privilégio possível. GRANT, DENY e REVOKE. Umas três questões e todas elas tranquilas, mas com alguns peguinhas. Sabendo da prevalência do DENY, fica mais fácil… Server Roles cairam também, e algumas questões sobre Server Roles customizadas;

Tem muito mais coisas, porém algumas não me lembro e outras, de tão intuitivas, não posso dizer pra não quebrar o sigilo do exame (NDA).

E agora?

Vou estudar logo o Training Kit 70-463 (BI) e sofrer um pouquinho estudando algo que não uso atualmente 😀

Claro, é necessário conhecer mais sobre a suíte SQL Server no geral e nenhum conhecimento é perdido. Estranhamente estou animado Deve ser porque eu gosto do SSIS e na minha mente ingênua penso que maior parte da prova será sobre isso (rindo).

Em compensação, estou lendo um livro de Administração também, então, vai rolar uma concorrência aí.

Script – Informações de espaço em disco

Espaço em Disco

Olá,

O código a seguir tem a finalidade de capturar o espaço atual em disco. É uma mão na roda principalmente quando se usa o Central Management Servers pra disparar a mesma consulta para várias bases diferentes (possibilitando assim uma verificação rotineira mais rápida e prática).

Código

Saída:

Resultado

<Clique na imagem>