[MEU 50º LIVRO]: BANCOS DE DADOS E ACESS - CURSO COMPLETO - DO BÁSICO AO VBA - 1602 páginas

Páginas: 1602 | Autor: Júlio Battisti | 40% de Desconto e 70h de Vídeo Aulas de Bônus

Você está em: PrincipalArtigosSQL Server 2005 › Capítulo 07 : 09
Quer receber novidades e e-books gratuitos?
›››
« Lição anterior Curso Completo de SQL Server 2005 - Júlio Battisti Δ Página principal Curso Completo de SQL Server 2005 - Júlio Battisti ¤ Capítulos Curso Completo de SQL Server 2005 - Júlio Battisti Próxima lição »
SQL Server 2005 - CURSO COMPLETO
Autor: Júlio Battisti
Lição 119 - Capítulo 07 - Utilizando o Profiler

O Profiler é uma ferramenta que podemos utilizar para monitorar a atividade em uma ou mais instâncias de um servidor SQL Server. Entenda-se por atividades desde uma conexão efetuada pelo usuário até os comandos T-SQL executados através desta conexão.

Com a utilização do Profiler, o DBA pode, por exemplo, monitorar somente as tentativas de conexão sem sucesso ou somente as consultas que demoram mais do que um determinado tempo para executar. Com isso, o DBA pode detectar tentativas de acesso indevido, como no caso de sucessivas tentativas de logon sem sucesso, até consultas mal escritas, com erros de lógica no código T-SQL e que estejam demorando muito para executar. Enfim, é uma ferramenta em que o DBA pode ter um acompanhamento do que está sendo executado em uma ou mais instâncias do servidor SQL Server.

Também temos a possibilidade de filtrar as atividades capturadas. Podemos especificar um filtro para que sejam exibidas apenas as consultas executadas em um determinado Banco de Dados, por exemplo. A atividade capturada pode ser salva em um arquivo ou em uma tabela de um Banco de Dados, para análise posterior ou em tempo real. Você pode fazer com que os dados sejam capturados e enviados para uma tabela, e desenvolver consultas que façam pesquisas nesta tabela.

O conjunto de eventos e ações capturadas definem o que chamamos de um “Trace”. Podemos criar um Trace novo, onde vamos definir quais os eventos queremos acompanhar, ou podemos utilizar alguns modelos de Trace que são fornecidos junto com o SQL Server. A seguir descrevemos os principais modelos de Trace já existentes. Estes modelos de Trace encontram-se na seguinte pasta:

C:\Arquivos de programas\Microsoft SQL Server\90\Tools\Profiler\Templates\Microsoft SQL Server\90

Os templates que eram disponibilizados com o SQL Server 2000, estão disponíveis em: C:\Arquivos de programas\Microsoft SQL Server\90\Tools\Profiler\Templates\Microsoft SQL Server\80. Os templates de Trace do SQL Server 7.0 estão disponíveis na pasta: C:\Arquivos de programas\Microsoft SQL Server\90\Tools\Profiler\Templates\Microsoft SQL Server\70

Para os caminhos indicados anteriormente, considerei que o SQL Server 2005 foi instalado no drive C: A seguir a descição dos principais modelos de Trace disponíveis.

  • SP_Counts.tdf: Monitora o número de Stored Procedures que foram executados. Os resultados são agrupados pelo nome do Stored Procedure e informa quantas vezes cada um foi executado.
  • Standard.tdf: Captura informações sobre conexões (login e logout), execução de Stored Procedures e a execução de comandos SQL em batch, na ordem em que os comandos vão sendo executados.
  • TSQL.tdf: Coleta informações sobre todos os comandos T-SQL que foram enviados para o servidor SQL Server e a data e hora em que o comando foi enviado.
  • TSQL_Duration.tdf: Coleta o comando T-SQL e o tempo de duração para a execução dos comandos.
  • TSQL_Grouped.tdf: Coleta informações semelhantes às coletadas pelo modelo TSQL.tdf, porém agrupa as informações pelo nome do usuário que enviou o comando.
  • TSQL_Replay.tdf: Fornece uma série de informações detalhadas sobre os comandos que foram executados no servidor e permite que os comandos sejam reexecutados no servidor.
  • TSQL_SPs.tdf: Informa o Stored Procedure que foi executado, além de informar os comandos que foram executados dentro do Stored Procedure. Exibe os comandos na ordem em que foram executados.
  • Tuning.tdf: Coleta dados sobre a execução de Stored Procedures e a execução de comandos em batch.

Depois que capturamos uma série de comandos enviados para uma instância do SQL Server, podemos enviar novamente estes comandos para a execução. Na prática, os mesmos comandos são executados novamente, na ordem em que foram capturados. Este procedimento é útil para testar alterações que foram feitas no Banco de Dados, para melhorar o desempenho. Ao executarmos novamente os mesmos comandos, podemos observar se o tempo de execução melhorou após as alterações efetuadas.

De uma maneira geral, devemos utilizar o Profiler para as seguintes tarefas:

  • Monitorar o desempenho de uma instância do SQL Server.
  • Depurar a execução de comandos T-SQL e Stored Procedures.
  • Identificar consultas que estejam com problemas de desempenho, isto é, com um tempo de execução muito elevado, muito acima do esperado.
  • Testar a execução de comandos T-SQL e Stored Procedures durante a fase de desenvolvimento de uma aplicação, de tal forma que possamos conferir se estes estão executando de acordo com o esperado.
  • Testar hipóteses. Podemos capturar as atividades normais em um servidor de produção e executar esta atividade contra um servidor de teste, no qual fizemos algumas alterações. Com isso podemos verificar se as alterações efetuadas produzirão os efeitos desejados. Em caso afirmativo, podemos implementar as alterações no servidor de produção. Ninguém é maluco o suficiente para fazer testes no servidor de produção (embora eu conheça muita gente que trabalha exatamente desta maneira, ou seja, sem planejar).
  • Fazer auditoria de segurança nas atividades de uma instância do servidor SQL Server. Com isso o administrador pode acompanhar, por exemplo, tentativas de acesso indevido ao servidor.

Vamos a um exemplo prático.

Exemplo: Vamos utilizar o Profiler para fazer o acompanhamento das atividades da instância SERVIDOR\SQL2005. Utilizaremos o modelo Standard.TDF. Nosso exemplo será constituído dos seguintes procedimentos:

  • Procedimento 1: Abrir o Profiler e criar um novo Trace baseado no modelo Standard.TDF.
  • Procedimento 2: Gerar atividades na instância SERVIDOR\SQL2005. Iremos gerar atividades utilizando o SQL Server Management Studio.
  • Procedimento 3: Voltar ao Profiler, parar a captura e observar a atividade capturada. Depois salvaremos esta atividade em uma tabela chamada TraceEx1, no Banco de Dados Exemplo1 (banco de dados este criado no Capítulo 4). Esta tabela será criada pelo próprio Profiler, na hora de salvar a atividade capturada.

Então, mãos à obra.

  • Procedimento 1: Para abrir o Profiler e criar um novo Trace baseado no modelo Standard.tdf, siga os passos indicados a seguir:

1. Abra o Profiler (Iniciar -> Programas -> Microsoft SQL Server 2005 -> Profiler). Surge a janela do Profiler, indicada na Figura 7.43.

Curso Completo de SQL Server 2005 - Júlio Battisti
Figura 7.43 A janela principal do Profiler.

2. Para criar um novo Trace, selecione o comando File -> New -> Trace, ou pressione Ctrl+N.

3. Surge uma janela perguntando qual instância do servidor SQL Server, queremos monitorar. Na lista SQL Server selecione SERVIDOR\SQL2005. Para autenticação certifique-se de que a opção Windows authentication esteja selecionada. Dê um clique em Connect,  para efetuar a conexão.

Surge a janela Trace Properties. Nesta janela podemos definir qual o modelo de Trace que será utilizado e personalizar algumas características do Trace, conforme indicado na Figura 7.44.

Curso Completo de SQL Server 2005 - Júlio Battisti
Figura 7.44 Configurando as propriedades do Trace.

4. A guia General já vem selecionada, por padrão. No campo Trace name digite: Trace de teste.

5. Observe que no campo Trace SQL Server já aparece SERVIDOR\SQL2005. Na lista Template name, certifique-se de que esteja selecionado o modelo Standard (default).

A guia Events Selection: Nesta guia podemos definir quais os eventos que devem ser registrados no Trace. Os eventos que aparecem nesta guia são ligados ao modelo selecionado. Para cada modelo de trace temos um conjunto diferente de eventos a serem monitorados e capturados pelo Profiler. Nesta guia podemos adicionar ou excluir eventos, para personalizar o Trace de acordo com nossas necessidades. Observe que os eventos estão divididos em uma série de categorias: Cursors, Databases, Errors and Warnings, etc. Dentro de cada categoria temos uma série de eventos, que podem ser adicionados ao Trace marcando o evento, ou removidos, simplesmente desmarcando o evento. Para cada evento que você seleciona, você pode marcar uma ou mais colunas, para definir quais informações serão capturadas para cada evento. Não vamos alterar nada nesta guia.

6. Dê um clique no botão Run para iniciar a captura de eventos pelo Profiler.

Sua janela deve estar conforme indicado na Figura 7.45

Curso Completo de SQL Server 2005 - Júlio Battisti
Figura 7.45 - A captura foi iniciada.

Agora vamos gerar atividades na instãncia SERVIDOR\SQL2005, para que sejam capturados eventos no Profiler.

7. Minimize o Profiler e vamos para o próximo procedimento.

  • Procedimento 2: Gerar atividades na instância SERVIDOR\SQL2005. Iremos gerar atividades utilizando o Enterprise Manager e a janela de execução de comandos T-SQL. Faremos algumas tentativas de logon com a senha incorreta, para gerar um evento de falha de logon.

1. SQL Server Management Studio.

2. Navegue até a instância SERVIDOR\SQL2005, e depois, até o Banco de Dados Northwind. Clique com o botão direito do mouse na instância e, no menu de opções que é exibido clique em New Query. Será aberta a janela de execução de comandos T-SQL

3. Execute os seguintes comandos:

USE NorthWind

SELECT * FROM DBO.ORDERS

4. Restaure o Profiler e observe que uma série de eventos já foram capturados, conforme indicado na Figura 7.46.

Curso Completo de SQL Server 2005 - Júlio Battisti
Figura 7.46 O Profiler capturando atividades na instância SERVIDOR\SQL2005.

5. Observe que na figura aparece em destaque, o comando executado quando abrimos a tabela Orders: SELECT * FROM Orders.

6. Minimize o Profiler.

7. Feche o SQL Server Management Studio.

  • Procedimento 3: Voltar ao Profiler, parar a captura e observar a atividade capturada. Depois salvaremos esta atividade em uma tabela chamada TraceEx1, no Banco de Dados Exemplo2. Esta tabela será criada pelo próprio Profiler, na hora de salvar a atividade capturada.

1. Restaure o Profiler.

2. Para parar a captura selecione o comando File -> Stop Trace.

3. No meu caso foram capturadas 8261 eventos, sendo que o último evento é justamente a parada do Trace: TraceStop, conforme indicado na Figura 7.47.

Curso Completo de SQL Server 2005 - Júlio Battisti
Figura 7.47 O evento de parada do Trace: Trace Stop.

Poderíamos reiniciar o Trace, utilizando o comando File -> RunTrace.

Poderíamos localizar um evento específico utilizando o comando Edit -> Find.

Para descartar todos os eventos capturados utilizamos o comando Edit -> Clear Trace Window.

Podemos gerar um Script com todos os comandos capturados. Este Script pode ser gerado para a versão SQL Server 2002 ou SQL Server 2005. Para isso utilizamos os comandos File -> Export -> Script Trace Definition -> For SQL Server 2005... ou File -> Export -> Script Trace Definition -> For SQL Server 2000..., respectivamente.

4. Agora vamos salvar o Trace em uma tabela do Banco de Dados Exemplo1, criado no Capítulo 3.

5. Selecione o comando File -> Save As -> Trace Table.

6. Surge uma janela solicitando o nome da instância e o tipo de autenticação. Na lista SQL Server, selecione SERVIDOR\SQL2005, e marque Windows authentication.

7. Dê um clique no botão Connect para conectar com a instância selecionada.

8. Na janela Destination Table, que é exibida, devemos selecionar o nome do Banco de Dados e o nome da tabela onde serão salvos os dados capturados.

9. Na lista Database selecione Exemplo1.

10.   No campo Table, digite TraceEx1, conforme indicado na Figura 7.48.

Curso Completo de SQL Server 2005 - Júlio Battisti
Figura 7.48 Salvando os eventos capturados.

11.   Dê um clique no botão OK e pronto. A tabela TraceEx1 será criada no Banco de Dados Exemplo1, da instância SERVIDOR\SQL2005 e os dados capturados pelo Profiler serão gravados nesta tabela.

12.   Você estará de volta ao Profiler. Feche-o.

Você pode abrir o SQL Server Management Studio e acessar a tabela TraceEx1 criada anteriormente. Na Figura 7.49 podemos ver os dados que foram salvos nesta tabela.

Curso Completo de SQL Server 2005 - Júlio Battisti
Figura 7.49 A tabela TraceEx1.

« Lição anterior Curso Completo de SQL Server 2005 - Júlio Battisti Δ Página principal Curso Completo de SQL Server 2005 - Júlio Battisti ¤ Capítulos Curso Completo de SQL Server 2005 - Júlio Battisti Próxima lição »

Best Sellers de Excel do Julio Battisti

Todos com Vídeo Aulas, E-books e Planilhas de Bônus!

Aprenda com Júlio Battisti:
Excel 2010 Básico em 140 Lições - Através de Exemplos Práticos - Passo a Passo

 Aprenda com Júlio Battisti: Excel 2010 Básico em 140 Lições - Através de Exemplos Práticos

 

Autor: Júlio Battisti | Páginas: 540 | Editora: Instituto Alpha

 

[Livro]: Aprenda com Júlio Battisti: Excel 2010 Básico em 140 Lições - Através de Exemplos Práticos

Aprenda com Júlio Battisti: Excel 2010 Avançado, Análise de Dados, Tabelas Dinâmicas, Funções Avançadas, Macros e Programação VBA - Passo a Passo

Livro: Aprenda com Júlio Battisti: Excel 2010 Avançado, Análise de Dados, Tabelas Dinâmicas, Funções Avançadas, Macros e Programação VBA - Passo a Passo

 

Autor: Júlio Battisti | Páginas: 952 | Editora: Instituto Alpha

 

Livro: Aprenda com Júlio Battisti: Excel 2010 Avançado, Análise de Dados, Tabelas Dinâmicas, Funções Avançadas, Macros e Programação VBA - Passo a Passo

Aprenda com Júlio Battisti: Macros e Programação VBA no Excel 2010 Através de Exemplos Práticos e Úteis - Passo a Passo

 

[LIVRO]: Aprenda com Júlio Battisti: Macros e Programação VBA no Excel 2010 Através de Exemplos Práticos e Úteis - Passo a Passo

 

Autor: Júlio Battisti | Páginas: 1124 | Editora: Instituto Alpha

 

[LIVRO]: Aprenda com Júlio Battisti: Macros e Programação VBA no Excel 2010 Através de Exemplos Práticos e Úteis - Passo a Passo

Aprenda com Júlio Battisti: Excel 2010 - Curso Completo - Do Básico ao Avançado, Incluindo Macros e Programação VBA - Através de Exemplos Práticos

 

[A BÍBLIA DO EXCEL]: Aprenda com Júlio Battisti: Excel 2010 - Curso Completo - Do Básico ao Avançado, Incluindo Macros e Programação VBA - Através de Exemplos Práticos Passo a Passo

 

Autor: Júlio Battisti | Páginas: 1338 | Editora: Instituto Alpha

 

[A BÍBLIA DO EXCEL]: Aprenda com Júlio Battisti: Excel 2010 - Curso Completo - Do Básico ao Avançado, Incluindo Macros e Programação VBA - Através de Exemplos Práticos Passo a Passo

Todos os livros com dezenas de horas de vídeo aulas de bônus, preço especial (alguns com 50% de desconto). Aproveite. São poucas unidades de cada livro e por tempo limitado.

Dúvidas?

Utilize a área de comentários a seguir.

Me ajude a divulgar este conteúdo gratuito!

Use a área de comentários a seguir, diga o que achou desta lição, o que está achando do curso.
Compartilhe no Facebook, no Google+, Twitter e Pinterest.

Indique para seus amigos. Quanto mais comentários forem feitos, mais lições serão publicadas.

Quer receber novidades e e-books gratuitos?
›››

Novidades e E-books grátis

Fique por dentro das novidades, lançamento de livros, cursos, e-books e vídeo-aulas, e receba ofertas de e-books e vídeo-aulas gratuitas para download.



Institucional

  • Quem somos
  • Garantia de Entrega
  • Formas de Pagamento
  • Contato
  • O Autor
  • Endereço

  • Júlio Battisti Livros e Cursos Ltda
  • CNPJ: 08.916.484/0001-25
  • Rua Vereador Ivo Cláudio Weigel, 537 Universitário
  • Santa Cruz do Sul/RS
  • CEP 96816-208
  • Todos os direitos reservados, Júlio Battisti 2001-2017 ®

    [LIVRO]: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2010 - PASSO-A-PASSO

    APRENDA COM JULIO BATTISTI - 1124 PÁGINAS: CLIQUE AQUI