Site específico incapaz de se conectar ao servidor MSSQL após a reinicialização

5

Eu tenho um problema muito chato no meu servidor Windows 2008 R2. Sempre que é reiniciado, seja planejado ou não, um site específico não pode se conectar ao servidor de banco de dados, uma instância do MSSQL Server 2008 R2 Express na mesma máquina. Isso dará o seguinte erro:

Cannot open database "SiteDb" requested by the login. The login failed.
Login failed for user 'SiteDbUser'.

Esse erro continuará, até que eu recicle manualmente o pool de aplicativos para esse site específico - uma simples reinicialização do site não parece resolver o problema. Assim que eu reciclar o pool de aplicativos, o site se conectará bem e continuará a fazê-lo até a próxima reinicialização. Agora, o estranho é que eu tenho outros sites rodando neste servidor, que parece não sofrer com esse problema - eles vão se conectar bem após uma reinicialização. Todos os meus sites têm usuários MSSQL diferentes, mas comparei os que trabalham com o que não está funcionando, e não consigo encontrar nenhuma diferença. Eu também tentei criar um novo usuário para o site problemático, mas isso não parece fazer diferença. Eu tentei especificar o nome da instância e "127.0.0.1" na seqüência de conexão, e ambos funcionam para os outros sites, mas nenhum deles faz uma diferença para o site problemático.

Eu tentei algumas outras coisas também, mas desde que eu tenho que reiniciar o servidor para testá-lo (ou pelo menos assim parece?), testar isso é um pouco "caro", porque o servidor está executando sites com um pouco de visitantes diários que é importante para o meu negócio.

Algum de vocês já experimentou algo assim? Eu apreciarei todas as ideias:)

    
por Kasper 03.05.2011 / 09:13

1 resposta

1

É possível que, na reinicialização, o IIS se torne disponível antes do banco de dados do SQL Server (ou seja, ele está em recuperação e não está disponível). Você tem muitos bancos de dados? Isso pode significar um tempo de inicialização mais longo.

Eu estou supondo isso por "Não é possível abrir o banco de dados" SiteDb "solicitado pelo login", o que significa que o login é bem-sucedido, mas não pode se conectar ao banco de dados especificado.

Idéias:

  • Você pode alterar os serviços do IIS para o início atrasado?
  • Definir um trabalho de inicialização que aguarde 30 segundos e emite iisreset
  • Adicionar nova lógica ao código da Web?
por 03.05.2011 / 09:22