Partilhar via


Capturar um rastreamento no Assistente de Experimentação de Banco de Dados

Nota

Esta ferramenta foi desativada em 15 de dezembro de 2024. Paramos de dar suporte a essa ferramenta para quaisquer problemas que surgirem e não emitiremos nenhuma correção de bug ou atualizações adicionais.

Você pode usar o DEA (Assistente de Experimentação de Banco de Dados) para criar um arquivo de rastreamento com um log de eventos de servidor capturados. Um evento de servidor capturado é um evento que ocorre em um servidor específico durante um período de tempo específico. Uma captura de rastreamento deve ser executada uma vez por servidor.

Antes de iniciar uma captura de rastreamento, faça backup de todos os bancos de dados de destino.

O cache de consulta no SQL Server pode afetar os resultados da avaliação. Recomendamos reiniciar o SERVIÇO DO SQL Server (MSSQLSERVER) no aplicativo de serviços para melhorar a consistência dos resultados da avaliação.

Configurar uma captura de rastreamento

  1. No DEA, na barra de navegação à esquerda, selecione o ícone da câmera e, na página Todas as Capturas, selecione Nova Captura.

    Captura de tela de Criar uma captura no DEA.

  2. Na página Nova Página de Captura, em Detalhes da Captura, digite ou selecione as informações a seguir:

    • Nome da captura: insira um nome para o arquivo de rastreamento para sua captura.

    • Formato: especifique o formato (Rastreamento ou XEvents) para a captura.

    • Duração: selecione o período de tempo (em minutos) que deseja que a captura de rastreamento seja executada.

    • Local de Captura: selecione o caminho de destino para o arquivo de rastreamento.

      Nota

      O caminho do arquivo de rastreamento precisa estar no computador que está executando o SQL Server. Se o serviço do SQL Server não estiver definido para uma conta específica, o serviço poderá precisar de permissões de gravação na pasta especificada para que o arquivo de rastreamento seja gravado.

  3. Verifique se você tem feito um backup selecionando o Sim, eu fiz manualmente o backup... caixa de seleção.

  4. Em Capturar detalhes, insira ou selecione as seguintes informações:

    • Tipo de Servidor: especifique o tipo do SQL Server (SqlServer, do AzureSqlDb, AzureSqlManagedInstance).
    • nome do servidor: especifique o nome do servidor ou o endereço IP do SQL Server.
    • Tipo de Autenticação: para o tipo de autenticação, selecione Windows.
    • nome do banco de dados: insira um nome para um banco de dados no qual iniciar um rastreamento de banco de dados. Se você não especificar um banco de dados, o rastreamento será capturado em todos os bancos de dados no servidor.
  5. Selecione ou desmarque as caixas de seleção Criptografar conexão e Confiar no certificado do servidor conforme apropriado para seu cenário.

    captura de tela da página Nova Captura.

Iniciar a captura de rastreamento

  1. Depois de inserir ou selecionar as informações necessárias, selecione Iniciar para iniciar a captura de rastreamento.

    Se as informações inseridas forem válidas, o processo de captura de rastreamento é iniciado. Caso contrário, caixas de texto com entradas inválidas são realçadas em vermelho. Caso você encontre erros, corrija as entradas necessárias e selecione Iniciar novamente.

    Enquanto a captura de rastreamento está em execução, em Detalhes da captura, o status e o progresso do processo de captura de rastreamento são exibidos.

    Captura de tela do progresso da captura do Monitor.

  2. Quando a captura de rastreamento terminar de ser executada, o novo arquivo de rastreamento (.trc) será salvo no local de captura você especificou durante a configuração inicial.

    Captura de tela da captura de rastreamento concluída.

    O arquivo de rastreamento inclui resultados de rastreamento da atividade de um banco de dados do SQL Server. Os arquivos .trc foram projetados para fornecer mais informações sobre erros detectados e relatados pelo SQL Server.

Perguntas frequentes sobre a captura de rastreamento

A seguir estão algumas perguntas frequentes sobre a captura de traços no contexto da DEA.

Quais eventos são capturados quando executo uma captura de rastreamento em um banco de dados de produção?

A tabela a seguir lista os eventos e os dados de coluna correspondentes coletados pelo DEA para rastreamentos:

Nome do evento Dados de texto (1) Dados binários (2) ID do banco de dados (3) Nome do host (8) Nome do aplicativo (10) Nome de Usuário (11) SPID (12) Hora de Início (14) Hora de Término (15) Nome do banco de dados (35) Sequência de eventos (51) IsSystem (60)
RPC:Concluído (10) Não Sim Sim Sim Sim Sim Sim Sim Sim Sim Sim Sim
RPC:Iniciando (11) Não Sim Sim Sim Sim Sim Sim Sim Não Sim Sim Sim
parâmetro de saída RPC (100) Sim Não Sim Sim Sim Sim Sim Sim Não Sim Sim Sim
SQL:BatchCompleted (12) Sim Não Sim Sim Sim Sim Sim Sim Sim Sim Sim Sim
SQL:BatchStarting (13) Sim Não Sim Sim Sim Sim Sim Sim Não Sim Sim Sim
Logon de Auditoria (14) Sim Sim Sim Sim Sim Sim Sim Sim Não Sim Sim Sim
Desconexão de auditoria (15) Sim Não Sim Sim Sim Sim Sim Sim Sim Sim Sim Sim
ExistingConnection (17) Sim Sim Sim Sim Sim Sim Sim Sim Não Sim Sim Sim
CursorOpen (53) Sim Não Sim Sim Sim Sim Sim Sim Não Sim Sim Sim
CursorPrepare (70) Sim Não Sim Sim Sim Sim Sim Sim Não Sim Sim Sim
Preparar o SQL (71) Não Não Sim Sim Sim Sim Sim Sim Não Sim Sim Sim
sql preparado pelo Exec (72) Não Não Sim Sim Sim Sim Sim Sim Não Sim Sim Sim
CursorExecute (74) Sim Não Sim Sim Sim Sim Sim Sim Não Sim Sim Sim
CursorUnprepare (77) Sim Não Sim Sim Sim Sim Sim Sim Não Sim Sim Sim
CursorClose (78) Sim Não Sim Sim Sim Sim Sim Sim Não Sim Sim Sim

Há um impacto no desempenho no meu servidor de produção quando a captura de rastreamento está ocorrendo?

Sim, há um impacto mínimo no desempenho durante a coleta de dados. Em nossos testes, encontramos uma pressão de memória de cerca de 3%.

Que tipo de permissões são necessárias para capturar rastreamentos em um ambiente de produção?

O usuário do Windows que executa a operação de rastreamento no aplicativo DEA deve ter direitos de sysadmin no computador que está executando o SQL Server.

A conta de serviço usada no computador em que o SQL Server está em execução deve ter acesso de gravação ao caminho de arquivo de rastreamento especificado.

Posso capturar rastreamentos para todo o servidor ou apenas em um único banco de dados?

Você pode usar o DEA para capturar rastreamentos para todos os bancos de dados no servidor ou para um único banco de dados.

Tenho um servidor vinculado configurado no meu ambiente de produção. Essas consultas aparecem nos rastreamentos?

Se você estiver executando uma captura de rastreamento para todo o servidor, o rastreamento capturará todas as consultas, incluindo as consultas de servidor vinculado. Para executar uma captura de rastreamento para todo o servidor, deixe a caixa nome do Banco de Dados em Nova Captura vazia.

Recomendamos que você escolha um horário que melhor represente a totalidade da carga de trabalho. Dessa forma, a análise é executada em todas as consultas em sua carga de trabalho.

Qual é a importância de fazer um backup de banco de dados antes de iniciar uma captura de rastreamento?

Antes de iniciar uma captura de rastreamento, faça backup de todos os bancos de dados de destino. O rastreamento capturado no Destino 1 e no Destino 2 é reproduzido. Se o estado do banco de dados não for o mesmo, os resultados da experimentação serão distorcidos.

Posso coletar XEvents no lugar de rastreamentos e posso reproduzir XEvents?

Sim. O DEA dá suporte a XEvents. Baixe a versão mais recente do DEA e experimente.

Solucionar problemas de capturas de rastreamento

Se você vir um erro ao executar uma captura de rastreamento, confirme se:

  • O nome do computador que executa o SQL Server é válido. Para confirmar, tente se conectar ao computador que executa o SQL Server usando o SSMS (SQL Server Management Studio).

  • Sua configuração de firewall não bloqueia conexões com o computador que executa o SQL Server.

  • O usuário tem as permissões listadas nas Perguntas Frequentes do Replay.

  • O nome do rastreamento não segue a convenção padrão de rollover (Capture_1). Em vez disso, tente rastrear nomes como Capture_1A ou Capture1.

A seguir estão alguns erros possíveis que você pode ver e soluções para resolvê-los:

Possíveis erros Solução
Não foi possível iniciar o rastreamento no SQL Server de destino, verifique se você tem as permissões necessárias e se a conta do SQL Server tem acesso de gravação ao caminho especificado do arquivo de rastreamento, Código de Erro SQL (53) O usuário que executa a ferramenta DEA deve ter acesso ao computador que executa o SQL Server. O usuário deve receber a função sysadmin.
Não é possível iniciar o rastreamento no SQL Server de destino; verifique se você tem as permissões necessárias e se a conta do SQL Server tem acesso de gravação ao caminho especificado para o arquivo de rastreamento. Código de Erro SQL (19062) O caminho de rastreamento especificado pode não existir ou a pasta não tem permissões de gravação para a conta na qual os serviços do SQL Server estão em execução (por exemplo, SERVIÇO DE REDE). O caminho deve existir e deve ter as permissões necessárias para que o rastreamento seja iniciado.
Atualmente, um rastreamento DEA está em execução no servidor de destino. Um rastreamento ativo já está em execução no servidor de destino. Não é possível iniciar um novo rastreamento quando um rastreamento em todo o servidor já estiver em execução.
Não é possível abrir o banco de dados solicitado para capturar o traço. Esse erro pode ser causado por um nome de banco de dados incorreto. O banco de dados especificado não existe ou não é acessível ao usuário atual. Use o nome correto do banco de dados.

Se você vir outros erros rotulados como Código de Erro Sql , consulte os eventos e erros do Mecanismo de Banco de Dados para obter descrições detalhadas.