Este é um post disponível para assinantes MVPou para quem possui Créditos DevMedia. Clique aqui para saber mais!
artigo SQL Magazine 11 - Profiler Parte I – Criando uma trace para análise de performance de um servidor SQL Server
Artigo da Revista SQL Magazine -Edição 11.
Você não gostou da qualidade deste conteúdo?
(opcional) Você gostaria de comentar o que não lhe agradou?

Profiler Parte I – Criando uma trace para análise de performance de um servidor SQL Server
Os sistemas normalmente não nascem lentos, mas tendem a ficar mais lentos com o tempo. O aumento do número de usuários, a existência de mais processos concorrentes, o crescimento do volume de informação armazenada, a falta (ou excesso) de índices e, por fim, a má qualidade do código T-SQL são alguns fatores que ocasionam o aparecimento de gargalos e, consequentemente, queda de performance.
Antes de pensar que o problema "vem de fora" e cogitar em aumentar o poder de fogo do processador, discos ou memória, cabe uma análise mais detalhada dos processos ativos no servidor de banco de dados. Muitas vezes todo o problema pode ser resolvido com a adição de um índice ou filtro num comando update. Mas como saber exatamente onde está o problema?
O SQL Server 2000 possui um utilitário chamado Profiler, indicado para rastreamento dos eventos processados numa base SQL Server 2000. O Profiler é uma ferramenta de diagnóstico, ou seja, ela nos fornece material para análise. Vale destacar que ela não se propõe por si só a efetuar correções ou qualquer espécie de tuning.
Nota
Considere um evento como qualquer ação gerada pelo engine do banco. A abertura de uma conexão, a execução de um comando select, a abertura de um cursor e a execução de uma procedure são alguns exemplos.
O Profiler é uma ferramenda que consegue ser simples e ao mesmo tempo complexa, devido ao universo de possibilidades para monitoramento. Se quisermos monitorar queries, devemos selecionar um tipo de evento. Para efetuar uma análise de deadlocks, existe outra classe de eventos que deve ser selecionada. Nessa primeira etapa aprenderemos alguns aspectos básicos do funcionamento do Profiler, navegando por suas telas para criar uma trace.
Criando uma trace passo-a-passo
O Profiler é uma ferramenta utilizada para criar traces. Como analogia, considere uma trace criada pelo Profiler como uma “fotografia” dos comandos executados pelo SQL Server 2000 em um determinado intervalo de tempo. Para criar uma trace, selecione Profiler no sub-menu do SQL Server (ver Figura 1).
Figura1. Selecionando o Profiler no sub-menu do Microsoft SQL Server.
Na tela principal do Profiler, selecione File / New / Trace (ver Figura 2).
Figura 2. Criando um trace no Profiler.
O próximo passo será fornecer uma conta com privilégios de system administrator (=SysAdmin) para realizar a trace (ver Figura 3). SysAdmin é um papel especial, que configura autoridade máxima ao proprietário da conta. Um cuidado especial deve ser tomado com relação à performance: um monitoramento prolongado em servidores já sobrecarregados pode comprometer seu desempenho.
Figura 3. Tela de logon no servidor onde será realizado a trace.
Se você não tem acesso à conta sa e está em dúvida com relação aos privilégios de sua conta, abra uma sessão no Query Analyzer e execute o comando .. sp_HelpSrvRoleMember SysAdmin para verificação dos usuários que possuem privilégio SysAdmin. Você deverá encontrar o usuário informado anteriormente (ou grupo do Windows NT, no caso de logon com segurança integrada) na listagem do comando. A Figura 4 ilustra a execução desse comando.
Figura 4. Comando sp_HelpSrvRoleMember
| " |
Este é um post disponível para assinantes MVPou para quem possui Créditos DevMedia. Clique aqui para saber mais!
Paulo Ribeiro (psribeiro@hotmail.com) é Microsoft MCDBA e membro da equipe editorial da SQL Magazine. Atua como DBA sênior em SQL Server na Livraria e Papelaria Saraiva S/A.



