A Microsoft distribui as correções SP2 DO Microsoft SQL Server 2008 como um ficheiro transferível. Como as correções são cumulativas, cada nova versão contém todos os hotfixes e todas as correções de segurança que foram incluídas com o anterior lançamento de correção SP2 SP2 do SQL Server 2008.
Sintomas
Considere o seguinte cenário:
-
Faz-se um dos seguintes.
-
Instale a Atualização Cumulativa 2 para o Microsoft SQL Server 2008 Service Pack 2 (SP2) ou uma versão posterior do pacote de atualização cumulativa
-
Atualizar SQL Server 2008 para SQL Server 2008 Service Pack 3 (SP3)
-
Upgrade SQL Server 2008 R2 para SQL Server 2008 R2 Service Pack 1 (SP1) ou uma versão posterior do pacote de serviços
-
-
Cria um trabalho de Agente de Servidor SQL numa base de dados de utilizador e define o tipo de programação como Iniciar automaticamente quando o SqL Server Agent começa.
-
Reinicia o serviço SQL Server.
Neste cenário, o trabalho do Agente de Servidor SQL falha.
Causa
Este problema ocorre porque a base de dados do utilizador não está terminada a recuperar quando o trabalho começa. Depois de instalar a Atualização Cumulativa 2 para o SQL Server 2008 SP2 ou de atualizar o SQL Server 2008 para o SQL Server 2008 SP3 ou atualizar o SQL Server 2008 R2 para o SQL Server 2008 R2 SP1, o SqL Server Agent começa logo após as bases de dados do MSDB terminarem a recuperação.
Note O Agente do Servidor SQL deve começar depois de todas as bases de dados terem recuperado.Resolução
Sql Server 2008 R2 Service Pack 1
A correção para este problema foi lançada pela primeira vez na Atualização Cumulativa 9. Para obter mais informações sobre como obter este pacote de atualização cumulativa para o SQL Server 2008 R2 Service Pack 1, clique no seguinte número de artigo para ver o artigo na Base de Conhecimento da Microsoft:
2756574 Pacote de atualização cumulativo 9 para SQL Server 2008 R2 Service Pack 1Note Porque as construções são cumulativas, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança que foram incluídas com o anterior release de correção do SqL Server 2008 R2 Service Pack 1. Recomendamos que considere aplicar o mais recente lançamento de correção que contém este hotfix. Para mais informações, clique no número de artigo que se segue para ver o artigo na Base de Dados de Conhecimento Microsoft:
2567616 O SQL Server 2008 R2 constrói que foram lançados após o lançamento do SQL Server 2008 R2 Service Pack 1
Pacote de serviço SQL Server 2008 3
A correção para este problema foi lançada pela primeira vez na Cumulativa Update 7 para SQL Server 2008 Service Pack 3. Para obter mais informações sobre como obter este pacote de atualização cumulativa, clique no seguinte número de artigo para ver o artigo na Base de Conhecimento da Microsoft:
2738350 Pacote de atualização cumulativa 7 para SQL Server 2008 Service Pack 3Note Porque as construções são cumulativas, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança que foram incluídas com o anterior release de correção sql Server 2008 Service Pack 3. Recomendamos que considere aplicar o mais recente lançamento de correção que contém este hotfix. Para mais informações, clique no número de artigo que se segue para ver o artigo na Base de Dados de Conhecimento Microsoft:
2629969 O SQL Server 2008 constrói que foram lançados após o lançamento do SQL Server 2008 Service Pack 3
Atualização Cumulativa 8 para SQL Server 2008 Service Pack 2
A correção para este problema foi lançada pela primeira vez na Atualização Cumulativa 8 para SQL Server 2008 Service Pack 2. Para obter mais informações sobre como obter este pacote de atualização cumulativa para o SQL Server 2008 Service Pack 2, clique no seguinte número de artigo para ver o artigo na Base de Conhecimento da Microsoft:
2648096 Pacote de atualização cumulativo 8 para SQL Server 2008 Service Pack 2Note Porque as construções são cumulativas, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança que foram incluídas com o anterior release de correção sql Server 2008 Service Pack 2. Recomendamos que considere aplicar o mais recente lançamento de correção que contém este hotfix. Para mais informações, clique no número de artigo que se segue para ver o artigo na Base de Dados de Conhecimento Microsoft:
2402659 O SQL Server 2008 constrói que foram lançados após o lançamento do SQL Server 2008 Service Pack 2
Sql Server 2008 R2 Service Pack 2
A correção para este problema foi lançada pela primeira vez na Cumulativa Update 2 para SQL Server 2008 R2 Service Pack 2. Para obter mais informações sobre como obter este pacote de atualização cumulativa, clique no seguinte número de artigo para ver o artigo na Base de Conhecimento da Microsoft:
2740411 Pacote de atualização cumulativa 2 para SQL Server 2008 R2 Service Pack 2Note Porque as construções são cumulativas, cada nova versão de correção contém todos os hotfixes e todas as correções de segurança que foram incluídas com o anterior lançamento de correção de R2 do SQL Server 2008. Recomendamos que considere aplicar o mais recente lançamento de correção que contém este hotfix. Para mais informações, clique no número de artigo que se segue para ver o artigo na Base de Dados de Conhecimento Microsoft:
2730301 O SQL Server 2008 R2 constrói que foram lançados após o lançamento do SQL Server 2008 R2 Service Pack 2
Informações chave do registo
Importante Esta secção, método ou tarefa contém etapas que lhe dizem como modificar o registo. No entanto, poderão ocorrer problemas graves se modificar o registo de forma incorreta. Por conseguinte, certifique-se de que segue estes passos cuidadosamente. Para maior segurança, faça uma cópia de segurança do registo antes de o modificar. Deste modo, pode restaurar o registo se ocorrer um problema. Para mais informações sobre como fazer uma cópia de segurança e restaurar o registo, clique no número de artigo que se segue para ver o artigo na Base de Dados de Conhecimento Microsoft:
322756 Como fazer o back up e restaurar o registo no Windows Depois de aplicar este hotfix, tem primeiro de reiniciar o serviço SQL Server Agent para a instância afetada. Uma nova chave de registo RecoveryEdDatabasesForAgentStartup é criada quando o serviço reinicia. Esta chave de registo define se o SqL Server Agent espera que a recuperação das bases de dados do Utilizador seja concluída antes de iniciar o trabalho do Agente do Servidor SQL. Para que nós configuremos esta chave de registo para você, vá para a secção "Fix it for me". Se preferir configurar esta chave de registo, vá para a secção "Deixe-me consertá-la eu mesmo".
Corrigir automaticamente
Para configurar automaticamente esta tecla de registo, clique no botão Fix it ou link. Em seguida, clique em Executar na caixa de diálogo 'Descarregar ficheiro' e siga os passos no assistente 'Corrigir-o'.
Notas
-
Antes de executar esta solução Fix it, tem de instalar o hotfix que é descrito no artigo 2648096 da Microsoft Knowledge Base (KB). Em seguida, deve reiniciar o serviço de agente do servidor SQL para a instância afetada.
-
Este assistente pode estar apenas em inglês. No entanto, a correção automática também funciona para versões do Windows noutros idiomas.
-
Se não estiver no computador que tem o problema, guarde a solução Fix-lo para uma pen ou um CD e, em seguida, execute-a no computador que tem o problema.
Deixar-me corrigir o problema
Para configurar a chave de registo DoRsedDatabasesForAgentStartup, siga estes passos:
-
Clique em Iniciar,clique em Executar,escreva regedit na caixa Aberta e, em seguida, clique em OK.
-
Localize e, em seguida, clique na seguinte subchave do registo:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.instance\SQLServerAgent\
-
No painel De detalhes, clique à direita Para Recuperar Bases de DadosForAgentStartupe, em seguida, clique em Modificar.
-
Na caixa de dados Value, escreva ALL.
Nota O valor predefinido da entrada de registo Do RequerAgentStartup é MSDB. -
Saia do Editor de Registo.
Nota Se definir o valor da entrada de registo do Registo DeBasesForAgentStartup recuperada para um valor que não seja MSDB ou ALL, uma mensagem de aviso é registada no registo do Agente do Servidor SQL e o SqL Server Agent espera apenas pela base de dados MSDB.
O problema foi corrigido?
-
Verifique se o problema foi corrigido. Se o problema estiver corrigido, terminou esta secção. Se o problema não estiver corrigido, pode contactar o suporte.
-
Agradecemos o seu feedback. Para fornecer feedback ou para relatar quaisquer problemas com esta solução, por favor deixe um comentário sobre o blog "Fix it for me" ou envie-nos um e-mail.
Estado
A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".
Solução
Para contornar este problema, adicione um passo no trabalho do Agente do Servidor SQL que verifica se as bases de dados direcionadas estão online. Este passo deve ser o primeiro passo.
Nota Pode verificar o estado da base de dados consultando o estado da coluna na tabela do sistema sys.databases.