Sintomas

Quando você tenta se conectar a um banco de dados usando o objeto SqlConnection no Microsoft ADO.NET 2.0, uma falha de conexão pode ser relatada, mesmo que o servidor de banco de dados está realmente disponível. Esse problema é mais perceptível quando as seguintes condições forem verdadeiras:

  • O servidor de banco de dados não estiver disponível pelo menos um minuto.

  • O aplicativo cliente tentou se conectar ao servidor de banco de dados durante esse período.

Causa

Esse problema ocorre por causa do comportamento que ocorre quando as tentativas anteriores de conexão para o servidor que está executando o Microsoft SQL Server falharem. O pool de conexão do SqlClient internamente pode controlar o número de novas tentativas de conexão com o servidor. Esse processo destina-se a ocorrer por um curto período de tempo. Durante esse tempo, o pool de conexão relatórios automaticamente o último erro que ocorreu em vez de fazer uma conexão tentativa para o servidor. Depois que o período de tempo expirar, a próxima solicitação de conexão do aplicativo cliente obtém uma verdadeira conexão com o servidor que está executando o SQL Server. Observação: Às vezes, o período de tempo pode ficar muito grande. Esse problema depende de quanto tempo o servidor de banco de dados está disponível.

Resolução

Para resolver esse problema, baixe o arquivo apropriado para o seu computador:

Para um computador baseado em x86

o seguinte arquivo está disponível para download no Microsoft Download Center:http://download.microsoft.com/download/2/C/5/2C5BCDC9-3241-443A-9F96-4E0B0EDFA727/NDP20-KB916002-x86.exe

Para um computador baseado em x64

o seguinte arquivo está disponível para download no Microsoft Download Center:http://download.microsoft.com/download/D/3/9/D39C79DF-4158-45DF-9031-92C52AB0ED19/NDP20-KB916002-x64.exe

Para um computador baseado em Itanium

o seguinte arquivo está disponível para download no Microsoft Download Center: http://download.microsoft.com/download/0/0/3/00392DD3-5B4F-4D99-94E8-6827B8F8D7EF/NDP20-KB916002-IA64.exe Para obter mais informações sobre como baixar arquivos de suporte da Microsoft, clique no número abaixo para ler o artigo na Base de Conhecimento da Microsoft:

119591 Como obter arquivos de suporte da Microsoft pelos serviços onlineA Microsoft examinou esse arquivo em busca de vírus. A Microsoft usou o software de detecção de vírus mais recente que estava disponível na data em que o arquivo foi publicado. O arquivo está armazenado em servidores com segurança avançada que ajudam a evitar qualquer alteração não autorizada no arquivo.

Solução alternativa

Para contornar esse problema, use os métodos ClearPool ou ClearAllPools do objeto SqlConnection para redefinir o pool de conexão.

Status

A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".

Informações adicionais

Depois de aplicar esse hotfix, um pequeno atraso ainda pode ocorrer antes que o aplicativo cliente pode se conectar com êxito para o servidor de banco de dados quando o servidor de banco de dados recupera de uma paralisação. Normalmente, esse atraso não deve durar mais de 60 segundos, independentemente do quanto o SQL Server já foi disponível. Para obter mais informações, clique no número abaixo para ler o artigo na Base de Conhecimento da Microsoft:

824684 Descrição da terminologia padrão utilizada para descrever as atualizações de software da MicrosoftPara obter mais informações sobre a classe SqlConnection , visite o seguinte site da Microsoft Developer Network (MSDN):

http://msdn2.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection(VS.80).aspxEsse hotfix está incluído no pacote de hotfix como o hotfix no seguinte artigo da Base de Conhecimento Microsoft:

912151 corrigir: A conexão pode expirar antes da primeira tentativa para conectar-se ao servidor do parceiro de failover quando você tenta se conectar a um banco de dados do SQL Server 2005 espelhado usando um aplicativo baseado no ADO.NET 2.0

Corrigir 912731 : conectado ao ADO.NET um aplicativo usa o namespace System.Data.SqlClient, o aplicativo pode ter alto uso de CPU e pode parar de responder

Corrigir 912732 : um erro pode ocorrer quando você iniciar uma nova transação no ADO.NET 2.0 em uma conexão aberta para um banco de dados do SQL Server 2005

Corrigir 913177 : você receberá uma mensagem de erro quando um aplicativo conectado ADO.NET usa a classe SqlBulkCopy

Corrigir 913764 : mensagem de erro ao tentar executar uma consulta UNION ALL ou chamar o método DeriveParameters: "Erro fatal de conexão interna"

Corrigir 913765 : SqlException uma exceção pode ocorrer quando você chama um dos métodos Execute na instância da classe SqlCommand em um aplicativo ADO.NET 2.0

Corrigir 913766 : coluna de data e hora A que não contém nenhum dado incorretamente é representada por um campo de DateTime.MinValue quando um objeto DataSet do.NET Framework 2.0 é desserializado em um computador cliente

Precisa de mais ajuda?

Expanda suas habilidades

Explore o treinamento >

Obtenha novos recursos primeiro

Ingressar no Microsoft Insider >

Essas informações foram úteis?

Qual é o seu grau de satisfação com a qualidade do idioma?
O que afetou sua experiência?

Obrigado pelos seus comentários!

×