Category Archives: Denali

Dicas para a prova 71-642

Ola pessoal,

Como alguns de vocês devem ter visto a Microsoft liberou vouchers para as provas betas de SQL Server 2012 e como eu nao poderia ficar de fora dessa fiz o registro para as 4 provas (DEV e DBA). Hoje 29/03/2012 fiz a primeira prova que foi a 71-642 Administering Microsoft® SQL Server® 2012 Databases – BETA .

Antes de colocar as dicas de estudo para a prova, irei colocar meus pensamentos sobre a mesma.

Logo de cara nas primeiras perguntas pensei: Prova fácil demais.. Pobre coitado.. 🙂 O clima na sala foi ficando muito pesado ao longo da prova. Como voces podem ver ao longo do post.

Ah uma coisa que preciso dizer: DUMPERS seus dias estão acabando.

De longe essa prova está muito mais difícil do que a MCTS Admin de SQL Server 2008. Livros irão te ajudar? Sim, um pouco, porem agora experiencia esta sendo muito mais requisitado e isso porque agora mudou bruscamente o estilo de perguntas e então DBA se prepare para aprender código, é isso mesmo que você ouviu e também muitas perguntas sao constituídas de montar o fluxo de como tal funcionalidade é configurada, por isso não adianta só conhecer, você tem que saber como aplicar. Muitas perguntas sao constituídas de sintaxes e você deve verificar qual a correta (Cuidado com as pegadinhas). O segundo ponto mais importante é que esta sendo cobrada muita coisa de segurança e não só no que se diz respeito a Roles e permissões, pense em todos os âmbitos onde segurança pode ser  aplicada.

Bom o que eu mais percebi na prova como um todo foi isso. Vamos então ao que você deve focar os estudos.

  • XEvents: Aprenda como criar, o que ela pode fazer por você.
  • Auditoria: Como criar auditorias personalizadas em nível de servidor, base de dados
  • AlwaysON: Estude bastante, cai muitas questões.
  • DB e Server Roles: Entenda todas as roles de Servidor e Roles de base de dados, o que fazem e o que nao fazem.
  • Permissionamento
  • Custom Server Role: Como criar, suas facilidades.
  • TDE: Como criar (Scritps), backup/restore
  • Replicação: Passos para criação, melhores cenários.
  • Database Email: Segurança, onde aplicar.
  • Database Mirroring: Passos para criação, quais tipos de cenário podem ser aplicadas, migração.
  • I/O Affinity & Processor Affinity: O que são, seu comportamento, como configurar.
  • Criptografia & SSL: Como funciona, como configurar.
  • FileTable: passo a passo de como configurar.
  • Filestream: passo a passo de como configurar.
  • Contained Databases: Como configurar, tornando uma base contained
  • Migração: Passo a passo, side-by-side, In-Place, estrategias.
  • Cluster: migração de cluster, criação de cluster, troubleshooting.

Bom pessoal acho que pelo o que consigo me recordar esses foram os pontos fortes da prova. Amanha já tenho outra prova agendada a   71-465 MCITP DBA então já sabem que teremos mais um post sobre o assunto.

Abraços,
Marcos Freccia

[MCTS| MCITP| MCT SQL Server 2008]

SQL Server 2012 Custom Server Roles Parte 2

Ola pessoal,

No primeiro post vimos como criar uma custom server role e nesse próximo post vamos então testar essa nova funcionalidade. Sem mais delongas vamos mostrar o que pode ser feito.

 

Passo 1: Dentro da nossa Custom Server Role vamos criar algumas regras.

Abaixo todas as regras são do tipo “Deny”

regra1

regra2

regra3

Ou via T-SQL

USE master
GO
DENY CREATE ANY DATABASE TO [CustonServerRole]
GO
DENY SHUTDOWN TO [CustonServerRole]
GO
DENY VIEW ANY DATABASE TO [CustomServerRole]
GO
DENY VIEW ANY DEFINITION TO [CustomServerRole]

Vamos aos testes.

Teste 1: Shutdown

Shutdown

 

Teste 2: Criação de base de dados

CriacaoDatabase

 

Teste 3: Visualizar as bases de dados

VisualizarDatabase

Como podem ver quando estamos com o usuário ServerRoleUser não podemos visualizar nenhuma base e quando estamos com o usuário Administrator a visualização é possivel.

 

Entao pessoal, apenas um rápido post para mostrar o que é possível fazer com as novas Custom Server Roles.

 

Boa diversão!!

 

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

SQL Server 2012 File Table

Olá Pessoal,

Hoje vamos falar sobre uma nova feature presente no SQL Server 2012 chamada File Table. Vamos pegar a definição do BOL.

“The FileTable feature brings support for the Windows file namespace and compatibility with Windows applications to the file data stored in SQL Server. FileTable lets an application integrate its storage and data management components, and provides integrated SQL Server services – including full-text search and semantic search – over unstructured data and metadata.

In other words, you can store files and documents in special tables in SQL Server called FileTables, but access them from Windows applications as if they were stored in the file system, without making any changes to your client applications.”

Deixando de uma forma mais clara, o File Table nada mais é do que uma técnica nova para armazenamento de arquivos não estruturados diretamente no file system, quem trabalha com Sharepoint já conhece algo parecido com isso, a vantagem dessa nova funcionalidade é que podemos indexar documentos para acesso no file system assim como no SharePoint além é claro de uma serie de outros métodos que podem ser trabalhados.

Vamos conhecer como habilitar e trabalhar com File Table?

Read the rest of this entry

SQL Server 2012 Auditing Contained Databases

Ola pessoal,

No artigo passado mostrei como realizar um restore de uma contained database e para continuar mostrando um pouco mais dessa feature vamos mostrar também o que foi feito em níveis de auditoria nessa nova funcionalidade. Nesse post não vou me atentar a mostrar como funciona a auditoria no SQL Server, mas sim grupos de auditoria que foram inseridos para essa funcionalidade no SQL Server 2012.

Vamos então criar uma auditoria de servidor conforme a imagem abaixo.

HabilitandoAuditoria

Vale lembrar que para criar a auditoria de servidor, você ja deve ter criado a auditoria conforme é visualizado na imagem acima.

GruposAudit

Conforme a imagem acima esses dois novos grupos de auditoria foram inseridos no SQL Server 2012 juntamente com o recurso de contained databases. Vamos habilita-los e realizar alguns procedimentos afim de ter as informações auditadas. Nao esqueça que depois que voce confirmar a criação da auditoria voce deve habilitar a mesma.

Apenas para via de testes fiz dois logons na minha base de dados que é uma Contained Database e também fiz a troca da senha. Vamos analisar os resultados.

Para termos um melhor detalhamento das informaçoes auditadas segue a consulta abaixo.

SELECT DISTINCT OBJECT_NAME,STATEMENT,map.class_type_desc,ac.NAME,covering_parent_action_name
FROM fn_get_audit_file(‘C:\Audit\Audit-20120227-050809.sqlaudit’,NULL,NULL) AS aud
INNER JOIN sys.dm_audit_class_type_map AS map
ON aud.class_type = map.class_type
INNER JOIN sys.dm_audit_actions AS ac
ON aud.action_id = ac.action_id
WHERE covering_parent_action_name IS NOT NULL
ORDER BY name

e teremos o seguinte resultado.

ConsultaArquivoAudit

Conforme pode ser visualizado na figura acima temos uma conexao bem sucedida na base de dados ContainedDatabase onde o grupo que fez a auditoria foi o de SUCCESSFUL_DATABASE_AUTHENTICATION_GROUP, e na sequencia a mudança de senha do usuário ContainedDatabaseUser que atingiu dois grupos: LOGIN_CHANGE_PASSWORD_GROUP e USER_CHANGE_PASSWORD_GROUP.

Bom pessoal por hoje é isso, espero que tenham gostado desse post.

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

SQL Server 2012 Restore a Contained Database

Ola Pessoal,

Continuando a demonstrar o recurso do Contained Database presente no SQL Server 2012, vamos passar um overview de como realizar o restore de uma base de dados com esse recurso habilitado. Como mencionado no post anterior a grande jogada dessa nova feature é a facilidade de nao precisarmos mais trabalharmos com logins atrelados a usuários e sim trabalhar somente com usuários dentro do SQL Server.

Vamos demonstrar abaixo entao os passos para realizar o restore de uma contained database.

Read the rest of this entry

Denali: sys.dm_exec_describe_first_result_set

Pessoal,

Começando a segunda feira com um pouco de Denali, mostro a vocês aqui mais uma nova funcionalidade presente na versão CTP3. Como o proprio nome sugere foi criada uma nova DMF (Dynamic Management Function) chamada de sys.dm_exec_describe_first_result_set.

Essa DMF faz com que apartir da entrada de uma consulta ela me traga as colunas e as propriedades delas, entao aqui cabe da sua imaginação ter qualquer consulta e passar como um parametro para essa DMF que a mesma ira te retornar as propriedades. Lembrando que você pode passar sua consulta com joins normalmente.

Read the rest of this entry

SQL Server Denali: dm_db_log_space_usage

Ola Pessoal,

Como voces sabem na semana passada foi lançado a versão CTP 3 do SQL Server Denali. Para saber mais sugiro ler o post do Felipe Ferreira (Blog,Twitter). Entao a medida que eu for estudando sobre o Denali vou postando para vocês novas funções e possibilidades de analise de informações.
Nesse primeiro post vou mostrar algo que achei interessante. Você ja conhece o comando DBCC SQLPERF(LOGSPACE) onde te mostra o tamanho do log em MB e o espaço ja utilizado em % de todas as bases da instancia. No SQL Server Denali surgiu entao uma DMV chamada sys.dm_db_log_space_usage onde te mostra a mesma informação só que para a base que voce selecionou.

Vamos analisar essa DMV.

Campos: database_id, total_log_size_in_bytes, used_log_space_in_bytes, used_log_space_in_percent

Como voces podem ver, foi acrescentado um campo a mais nessa DMV e ao contrario do comando DBCC essa DMV traz o resultado em bytes e nao em MB.

Para deixar mais claro então o resultado obtido vamos executar a seguinte consulta.

select db_name(database_id) as DatabaseName, round((total_log_size_in_bytes /1024),0) / 1024 as TamanhoTotalMB,
round((used_log_space_in_bytes / 1024),0) 1024 as EspacoUtilizadoMB, round(used_log_space_in_percent,0) as PercentualUtilizado from sys.dm_db_log_space_usage

Abaixo então o resultado dessa nossa consulta.

Por hoje é isso, espero que tenham gostado.

Marcos Freccia
@SQLFreccia
MCTS SQL Server 2008