PROBLEMA: Um tempo limite ocorre quando um banco de dados é expandir automaticamente

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 traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 305635
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Sintomas
Você pode os seguintes sintomas no SQL Server:
  • Um banco de dados não expande automaticamente Embora você tenha a opção de crescimento automático .
  • O arquivo Errorlog não contém quaisquer mensagens que indicam que o banco de dados está cheio.
  • Computadores cliente que tentam modificar os dados neste banco de dados recebem uma mensagem "Tempo limite expirou" em sua transação do usuário.
  • SQL Profiler exibe um evento de "Atenção" em uma conexão e, se o computador estiver executando o SQL Server 7.0, SQL Profiler também exibe um erro "Exceção 822".
Observação : A mensagem "Tempo limite expirou" é uma mensagem genérica que você pode receber em outras situações.

Você pode perceber esses sintomas quando:
  • Você executar o SQL Profiler para um longo tempo, você capturar o evento de exceção e a coluna IntegerData e, em seguida, procure uma ocorrência do erro "Exceção 822".

    - Ou -
  • Você usar o -y822 parâmetro para iniciar o SQL Server. Depois que o banco de dados não expande automaticamente, você verifique o arquivo Errorlog para um despejo de pilha devido ao erro "Exceção 822".
Observação : O arquivo de banco de dados pode expandir automaticamente, mas o tempo limite ocorre quando o arquivo está sendo inicializado para uso, que deve ocorrer para o banco de dados ser útil.
Causa
Quando uma conexão emite uma instrução DML (Lanaguage de modificação de dados) que requer espaço adicional em um banco de dados, SQL Server tenta automaticamente expandir o banco de dados, se você tiver a opção de crescimento automático definida. O cliente que emitiu a declaração pode expirar enquanto o banco de dados está se expandindo, dependendo do valor de tempo limite de consulta que está configurado no lado do cliente. Vários aplicativos use um valor de tempo limite padrão de 30 segundos. Esse tempo limite termina a conexão de cliente e a expansão automática do banco de dados que ele solicitado.
Como Contornar
Para contornar esse comportamento, use um dos seguintes métodos:
  • Expanda o banco de dados manualmente. Para expandir o banco de dados manualmente, use a instrução ALTER DATABASE ou SQL Server Enterprise Manager.
  • Aumente o valor de tempo limite de consulta de cliente do aplicativo que solicita o DML para que o servidor tenha tempo para expandir o banco de dados. O DML solicita que o banco de dados para expandir.

    Por exemplo, se você estiver usando o SQL Query Analyzer, o valor de tempo limite de consulta padrão é 0 (infinito). Se você estiver usando o valor padrão, não tenham esse comportamento. Se você não estiver usando o valor padrão, aumente o valor de tempo limite de consulta.

    Para outros aplicativos (se eles são baseados na Web ou não), você pode fazer a alteração no aplicativo. Por exemplo, se você estiver usando o ADO, você pode alterar a propriedade CommandTimeout para o objeto de conexão ou comando .
  • Determine quanto tempo leva a expansão de banco de dados no servidor. Para determinar isso, execute a instrução ALTER DATABASE no SQL Query Analyzer e, em seguida, exiba a barra de status. Após determinar isso, defina o cliente valor de tempo limite para algo maior do que esse valor.
  • Não altere o valor de tempo limite do cliente. Continue a testar a expansão automática e veja quanto expansão completa no menor do que o valor de tempo limite do cliente. Defina a opção de crescimento automático para esse novo valor (menor).
Mais Informações
Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
315512INF: Considerações para crescimento automático e Autoshrink configuração
crescimento automático crescimento automático crescente de crescimento automático

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 305635 - Última Revisão: 12/06/2015 04:45:35 - Revisão: 3.3

Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 7.0 Standard Edition

  • kbnosurvey kbarchive kbmt kbprb KB305635 KbMtpt
Comentários