Artigo: 917825 - Última revisão: sábado, 28 de Maio de 2011 - Revisão: 2.0

Como utilizar o utilitário Sqldumper exe para gerar um ficheiro de informação no SQL Server 2005

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Reduzir tudo

Sumário

O utilitário Sqldumper exe está incluído no Microsoft SQL Server 2005. Este artigo descreve como utilizar o utilitário Sqldumper exe para gerar um ficheiro de informação para o relato de erros do Watson ou para tarefas de depuração.

Mais Informação

Pode utilizar o utilitário Sqldumper exe para gerar um ficheiro de informação a pedido para qualquer aplicação do Microsoft Windows. Por exemplo, pode gerar um ficheiro de informação para depurar um problema de aplicação quando um computador que esteja a executar o SQL Server 2005 não está a responder a pedidos de utilizador. Um ficheiro de informação pode ser um ficheiro de mini-dump, um ficheiro de informação completa ou um ficheiro de informação filtrada.

No entanto, é possível utilizar o utilitário Sqldumper para fins gerais de depuração. Para mais informações sobre a depuração de uso geral, visite o seguinte Web site da Microsoft:
http://www.microsoft.com/whdc/DevTools/Debugging/default.mspx (http://www.microsoft.com/whdc/devtools/debugging/default.mspx)
Processo do SQL Server chama o utilitário Sqldumper internamente para gerar um ficheiro de informação quando o processo de experiências quaisquer excepções. SQL Server transmite sinalizadores para o utilitário Sqldumper. Pode utilizar sinalizadores de rastreio para alterar os sinalizadores de que o SQL Server passa para o utilitário no contexto de uma excepção ou no contexto de uma asserção. Estes sinalizadores de rastreio estão no intervalo de 2540 a 2559. Pode utilizar estes sinalizadores de rastreio para gerar a determinados tipos de ficheiros de informação.

Como obter um identificador de processo de aplicação do Microsoft Windows

Para gerar um ficheiro de informação utilizando o utilitário Sqldumper exe, tem de ter o identificador do processo da aplicação Windows para o qual pretende gerar um ficheiro de informação. Para obter o identificador do processo, siga estes passos:
  1. Prima CTRL + ALT + DELETE e, em seguida, clique em Gestor de tarefas.
  2. No Gestor de tarefas do Windows caixa de diálogo, faça clique sobre o Processos separador.
  3. Sobre o Vista menu, clique em Seleccionar colunas.
  4. No Seleccionar colunas caixa de diálogo, clique para seleccionar o PID (Process Identifier) caixa de verificação e, em seguida, clique em OK.
  5. Repare o identificador do processo da aplicação Windows para o qual pretende gerar um ficheiro de informação. Para a aplicação de servidor de SQL, repare o identificador do processo do processo de Sqlservr.exe.
  6. Fechar Gestor de tarefas.
Também pode obter o identificador do processo da aplicação do SQL Server que está em execução no computador utilizando o ficheiro de registo de erros do SQL Server. Por exemplo, a parte do ficheiro de registo do erro de SQL Server é semelhante ao seguinte:
2006-04-18 09:53:03.94 Servidor Microsoft SQL Server 2005 - 9.00.1399.06 (Intel x86)
14 De oct de 2005 00:33:37
Copyright (c) 1988-2005 Microsoft Corporation
Enterprise Edition no Windows NT 5. 2 (compilação 3790: Service Pack 1)

2006-04-18 09:53:03.94 Server (c) 2005 Microsoft Corporation.
2006-04-18 09:53:03.94 Servidor todos os direitos reservados.
2006-04-18 09:53:03.94 Server ID de processo do servidor é 3716.
O número que aparece após ID de processo do servidor é o identificador de processo para o processo de Sqlservr.exe.

Como executar o utilitário Sqldumper.

Execute o utilitário Sqldumper no contexto da pasta onde o SQL Server instalado originalmente o utilitário. Por predefinição, o caminho de instalação do utilitário Sqldumper é:
SQLServerInstallDrive: \Programas\Microsoft SQL Server\90\Shared\SQLDumper.exe
Nota SQLServerInstallDrive é um marcador de posição para a unidade onde instalou o SQL Server 2005.

Para gerar um ficheiro de informação utilizando o utilitário Sqldumper exe, siga estes passos:
  1. Abra a seguinte pasta:
    SQLServerInstallDrive: \Programas\Microsoft SQL Server\90\Shared
  2. Certifique-se de que o ficheiro de dbghelp. dll é nesta pasta.
  3. Clique em Iniciar, clique em Executar, tipo cmde, em seguida, clique em OK.
  4. Na linha de comandos, escreva o seguinte comando e, em seguida, prima ENTER:
    CD SQLServerInstallDrive: \Programas\Microsoft SQL Server\90\Shared
  5. Para gerar um tipo de ficheiro de informação específico, escreva o comando correspondente na linha de comandos e, em seguida, prima ENTER:
    • Ficheiro de informação completa
      Sqldumper ProcessID 0 0x01100
    • Ficheiro mini-dump
      Sqldumper ProcessID 0 0x0120
    • Ficheiro de mini-dump, que inclui memória referenciada indirectamente
      Sqldumper ProcessID 0 0x0120:40
    • Ficheiro de informação filtrada
      Sqldumper ProcessID 0 0x8100
    Nota ProcessID é um marcador de posição para o identificador de processo da aplicação Windows para o qual pretende gerar um ficheiro de informação.
Se o utilitário Sqldumper exe é executado com êxito, o utilitário gera um ficheiro de informação na pasta onde está instalado o utilitário.

O ficheiro de informação que o utilitário Sqldumper exe gera tem um padrão de nome de ficheiro semelhante à seguinte:
SQLDmprxxxx.mdmp
Este padrão, xxxx um número crescente de que é determinado com base em outros ficheiros que tenham um nome de ficheiro semelhantes na mesma pasta. Se já tiver ficheiros na pasta que têm nomes de ficheiro no padrão especificado, tem de comparar a data e a hora em que o ficheiro foi criado para identificar o ficheiro que pretende.

Obter informações adicionais e considerações

Quando o utilitário Sqldumper exe gera um ficheiro de informação para uma aplicação do Windows, o ficheiro de informação pode ser tão grande como a memória que a aplicação do Windows está actualmente a utilizar. Certifique-se de que está disponível na unidade a que o utilitário Sqldumper exe está a escrever o ficheiro de informação suficiente espaço em disco.

Pode especificar o directório onde pretende que o utilitário Sqldumper exe para escrever o ficheiro de informação. O directório já deve existir antes de executar o utilitário Sqldumper. Caso contrário, o utilitário Sqldumper falhará. Não utilize um caminho UNC como uma localização para o ficheiro de informação. Segue-se um exemplo de como especificar a localização do ficheiro de informações de estado do ficheiro mini-dump:
  1. Clique em Iniciar, clique em Executar, tipo cmde, em seguida, clique em OK.
  2. Na linha de comandos, escreva o seguinte comando e, em seguida, prima ENTER:
    CD SQLServerInstallDrive: \Programas\Microsoft SQL Server\90\Shared
  3. Escreva o seguinte comando na linha de comandos e, em seguida, prima ENTER:
    ProcessID Sqldumper 0 0x0120 0 MdumpPath
    Nota MdumpPath é um marcador de posição para o directório onde pretende que o utilitário Sqldumper exe para escrever o ficheiro de informação.
Se especificar um ficheiro de informação completa ou um ficheiro de informação filtrada para ser gerado, o utilitário Sqldumper exe pode demorar vários minutos para gerar o ficheiro de informação. O tempo depende as seguintes variáveis:
  • A quantidade de memória que está actualmente a utilizar o utilitário Sqldumper.
  • A velocidade da unidade à qual o utilitário está a escrever o ficheiro de informação
Durante este tempo, o utilitário Sqldumper exe não processará comandos. Irá reparar que o servidor parou de responder. Além disso, poderá ocorrer uma activação pós-falha no cluster.

Para executar o utilitário Sqldumper exe, tem de iniciar sessão Windows utilizando um dos seguintes métodos:
  • Utilize uma conta que seja membro do grupo Administradores no computador.
  • Utilize a mesma conta de utilizador sob o qual o serviço SQL Server está em execução.
Para o utilitário Sqldumper exe trabalhar com êxito através do ambiente de trabalho remoto ou de serviços de Terminal, tem de iniciar ambiente de trabalho remoto ou serviços de Terminal no modo de consola. Por exemplo, para iniciar o ambiente de trabalho remoto no modo de consola, clique em Iniciar, clique em Executar, tipo mstsc /consolee, em seguida, clique em OK. Tenha em atenção que, se o servidor de destino executa o Windows 2000, o /Console opção silenciosamente é ignorada. Pode ligar ao servidor através do ambiente de trabalho remoto. Mas não estiver a utilizar a sessão da consola.
Se notar que não tiver sido gerado nenhum ficheiro de informação na pasta actual depois de executar o utilitário Sqldumper exe, reveja as informações que o utilitário gerou na linha de comandos para tentar determinar a possível causa da falha. Estas informações também são registadas no ficheiro Sqldumper_errorlog.log no directório actual. Seguem-se duas mensagens de erro possíveis e as respectivas causas:
Mensagem 1
OpenProcess falha 0x57 ? O parâmetro está incorrecto
Um inválido foi passado o ID de processo para o utilitário Sqldumper..
Mensagem 2
Valor inválido para o id do thread - erro de parâmetro de <invalid parameter=""> </invalid>
Um parâmetro inválido foi passado para o utilitário Sqldumper.

Se for gerada uma mensagem de erro semelhante à seguinte, pode ignorar esta mensagem:
Tipo de chamada de retorno desconhecido durante a mini cópia de informação 6
Tipo de chamada de retorno desconhecido durante a mini cópia de informação 7

Activações pós-falha do cluster e o utilitário Sqldumper.

Em cenários de activação pós-falha de cluster, o recurso de SQL Server DLL agora pode obter um ficheiro de informação antes da activação pós-falha ocorre. Quando a DLL de recursos do SQL Server determina que um recurso do SQL Server falhou, o recurso de SQL Server DLL utiliza o utilitário Sqldumper para obter um ficheiro de informação do processo do SQL Server. Para se certificar de que o utilitário Sqldumper exe gera com êxito o ficheiro de informação, tem de definir as seguintes três propriedades como pré-requisitos:
  • SqlDumperDumpTimeOut
    Um limite de tempo especificado pelo utilizador. O recurso que dll aguarda que o ficheiro de informação ser concluída antes da DLL do recurso pára o serviço SQL Server.
  • SqlDumperDumpPath
    A localização onde o utilitário Sqldumper exe gera o ficheiro de informação.
  • SqlDumperDumpFlags
    Sinalizadores que utiliza o utilitário Sqldumper.
Se qualquer uma das propriedades não estiver definida, o utilitário Sqldumper exe não é possível gerar o ficheiro de informação. Uma mensagem de aviso será registada no registo de eventos e no registo de cluster sempre que o recurso estiver online.

Para definir as propriedades de utilitário Sqldumper para cluster de activação pós-falha, siga estes passos:
  1. Clique em Iniciar, clique em Executar, tipo cmde, em seguida, clique em OK.
  2. Para cada propriedade, escreva o comando correspondente na linha de comandos e, em seguida, prima ENTER:
    • O SqlDumperDumpFlags propriedade
      Para definir o SqlDumperDumpFlags propriedade para um tipo específico de ficheiro de informação, escreva o comando correspondente na linha de comandos e, em seguida, prima ENTER:
      • Todos os ficheiro de informação completa de thread
        • Instância predefinida
          /priv "sql Server" SqlDumperDumpFlags o recurso de cluster = 0x01100
        • Instância nomeada
          /priv "sql Server (instance1)" SqlDumperDumpFlags o recurso de cluster = 0x01100
      • Todos os ficheiros de mini-dump de thread
        • Instância predefinida
          /priv "sql Server" SqlDumperDumpFlags o recurso de cluster = 0x0120
        • Instância nomeada
          /priv "sql Server (instance1)" SqlDumperDumpFlags o recurso de cluster = 0x0120
      • Filtrado todos os ficheiro de informação do thread
        • Instância predefinida
          /priv "sql Server" SqlDumperDumpFlags o recurso de cluster = 0x8100
        • Instância nomeada
          recurso de cluster "SQL Server(INSTANCE1)"/priv SqlDumperDumpFlags = 0x8100
    • OSqlDumperDumpPath propriedade
      /priv "sql Server" SqlDumperDumpPath o recurso de cluster = DirectoryPath
      Nota DirectoryPath é um marcador de posição para o directório em que o ficheiro de informação será gerado e deve ser especificado aspas ("").
    • O SqlDumperDumpTimeOut propriedade
      /priv "sql Server" SqlDumperDumpTimeOut o recurso de cluster = Tempo de espera
      Nota Tempo de espera é um marcador para o limite de tempo em milissegundos (ms).

      O tempo que leva o utilitário para gerar um ficheiro de informação de um processo de SQL Server depende da configuração de computador. Para um computador que tenha muita memória, a hora pode ser significativa. Para obter uma estimativa do tempo que o processo demora, utilize o utilitário Sqldumper exe para gerar manualmente um ficheiro de informação. Os valores válidos para o SqlDumperDumpTimeOut provêm de propriedade 10000 ms para MAXDWORD. MAXDWORD representa o valor mais elevado no intervalo do tipo de dados DWORD (4294967295).
Para verificar que as definições tiverem sido activadas, pode executar o seguinte comando:
cluster /priv do recurso "sql Server" "

Para remover as propriedades de utilitário Sqldumper para cluster de activação pós-falha, siga estes passos:
  1. Clique em Iniciar, clique em Executar, tipo cmde, em seguida, clique em OK.
  2. Para uma propriedade específica, escreva o comando correspondente na linha de comandos e, em seguida, prima ENTER:
    • O SqlDumperDumpFlags propriedade
      • Instância predefinida
        /usedefault de /priv:SqlDumperDumpFlags de "sql Server" recurso de cluster
      • Instância nomeada
        /usedefault de /priv:SqlDumperDumpFlags de "sql Server (instance1)" recurso de cluster
    • O SqlDumperDumpPath propriedade
      • Instância predefinida
        /usedefault de /priv:SqlDumperDumpPath de "sql Server" recurso de cluster
      • Instância nomeada
        recurso de cluster "SQL Server(INSTANCE1)"/priv:SqlDumperDumpPath /usedefault
    • O SqlDumperDumpTimeOutpropriedade
      • Instância predefinida
        /usedefault de /priv:SqlDumperDumpTimeOut de "sql Server" recurso de cluster
      • Instância nomeada
        recurso de cluster "SQL Server(INSTANCE1)"/priv:SqlDumperDumpTimeOut /usedefault
Palavras-chave: 
kbsql2005tool kbexpertiseadvanced kbhowto kbinfo kbmt KB917825 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 917825  (http://support.microsoft.com/kb/917825/en-us/ )