ID do artigo: 983500 - Última revisão: quarta-feira, 23 de junho de 2010 - Revisão: 2.0

Correcção: O processo de sincronização de função está atrasado quando um espelhamento failover automático ocorre 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.
Microsoft distribui correções do Microsoft SQL Server 2005 como um arquivo para download. Porque as correções são cumulativas, cada versão nova contém todos os hotfixes e todas as correções de segurança que foram incluídas com o anterior o SQL Server 2005 corrigir lançamento.
Expandir tudo | Recolher tudo

Sintomas

Considere este cenário. Configurar o espelhamento de banco de dados entre dois bancos de dados do Microsoft SQL Server 2005. Em seguida, ocorre o failover automático de espelhamento. Nesse cenário, você observa os seguintes problemas:
  • a sincronização de função se atrase.
  • É o status de ambos os bancos de dadosPrincipal.
Além disso, se você executar uma instrução DML no banco de dados principal original, você recebe a seguinte mensagem de erro:

Msg 0, o nível de 11, State 0, linha 0
um grave erro sobre o comando atual. Os resultados, se houver algum, deverão ser descartados.
Msg 0, o nível de 20, State 0, linha 0
um grave erro sobre o comando atual. Os resultados, se houver algum, deverão ser descartados.

Causa

Esse problema ocorre porque a tarefa de reinicialização do banco de dados que ocorre quando o failover está sendo processada falhar. Isso faz com que um atraso no processo de sincronização de função.

Resolução

Pela primeira vez, o a correção para esse problema foi disponibilizado em 10 da atualização cumulativa para SQL Server 2005 Service Pack 3. Para obter mais informações sobre esse pacote cumulativo de atualização, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
983329  (http://support.microsoft.com/kb/983329/LN/ ) 10 Para o SQL Server 2005 Service Pack 3 do pacote de atualização cumulativo
Observação:Porque as compilações são lançamento de correções cumulativas, cada nova contém todos os hotfixes e todas as correções de segurança que foram incluídas com o SQL Server 2005 anteriores corrigir o lançamento. A Microsoft recomenda que você considere a aplicação a versão mais recente de correção que contém esse hotfix. Para obter mais informações, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
960598  (http://support.microsoft.com/kb/960598/LN/ ) O SQL Server 2005 baseia-se que foram lançados após o lançamento do SQL Server 2005 Service Pack 3
Os hotfixes do Microsoft SQL Server 2005 de são criados para service packs do SQL Server específicos. Você deve aplicar um hotfix do SQL Server 2005 Service Pack 3 para uma instalação do SQL Server 2005 Service Pack 3. Por padrão, nenhum hotfix é fornecido em um SQL Server service pack está incluído no próximo do SQL Server service pack.

Essa correção não melhora a sincronização da função de desempenho. Esta correção de ajuda a localizar a obstrução no banco de dados reiniciar a tarefa, verificando o arquivo de log de erros do SQL Server.  

Para identificar obstruções na sincronização de função, execute a consulta a seguir na instância do objeto original:
select * from sys.dm_exec_requests 

where database_id = DB_ID('<mirrored database name>')
A identificação da sessão é exibida como bloqueado quando a sessão tenta obter um bloqueio LCK_M_X no banco de dados espelhado intermitentemente. O Bloqueador de cabeça corresponde à transação de usuário no banco de dados espelhado.

Para verificar se o processo de sincronização de função é concluído, localize o valor da coluna mirroring_role_sequence no banco de dados principal e no banco de dados espelho e, em seguida, verifique se o valor da coluna da nova instância da entidade do SQL Server é maior do que o valor da coluna relatado na instância de instanceserver do espelhamento do SQL Server. Se for esse o caso, o processo de sincronização de função está incompleto. 

Quando a função de sincronização for concluída, execute a consulta a seguir para certificar-se de que o processo de sincronização da função for bem-sucedido:
select database_id,mirroring_state_desc,mirroring_role_desc,mirroring_role_sequence from sys.database_mirroring
Observação:Se a função de sincronização for bem-sucedida, as seguintes condições forem verdadeiras:
  • Omirroring_role_sequencecoluna do banco de dados espelhado na instância principal do SQL Server e instância de espelhamento do SQL Server deve ter o mesmo valor.
  • Se executar a consulta na instância do objeto original, omirroring_role_desccoluna deve mostrar o que é a funçãoiMirrorpara o banco de dados espelhado.
  • Se executar a consulta na instância do objeto atual, além disso, a instância principal do SQL Server deve mostrar que omirroring_role_descvalor da coluna para a linha do banco de dados espelhado éPrincipal.

Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".

Referências

Para obter informações sobre o modelo de serviços incrementais para SQL Server, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
935897  (http://support.microsoft.com/kb/935897/ ) É de um modelo de serviços incrementais disponível da equipe do SQL Server para fornecer hotfixes para problemas relatados
Para obter mais informações sobre como obter o SQL Server 2005 Service Pack 3, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
913089  (http://support.microsoft.com/kb/913089/ ) Como obter o service pack mais recente do SQL Server 2005
Para obter mais informações sobre novos recursos e melhorias no SQL Server 2005 Service Pack 3, visite o seguinte site da Microsoft:
http://go.microsoft.com/fwlink/?LinkId=131442 (http://go.microsoft.com/fwlink/?LinkId=131442)
Para obter mais informações sobre o esquema de nomeação para atualizações do SQL Server, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
822499  (http://support.microsoft.com/kb/822499/ ) Pacotes de atualização do novo esquema para nomeação para o software do Microsoft SQL Server
Para obter mais informações sobre a terminologia da atualização de software, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
824684  (http://support.microsoft.com/kb/824684/ ) Descrição da terminologia padrão que é usada para descrever as atualizações de software

A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2005 Service Pack 3 nas seguintes plataformas
    • Microsoft SQL Server 2005 Standard Edition
    • Microsoft SQL Server 2005 Standard X64 Edition
    • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
    • Microsoft SQL Server 2005 Enterprise Edition
    • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
    • Microsoft SQL Server 2005 Enterprise X64 Edition
    • Microsoft SQL Server 2005 Developer Edition
    • Microsoft SQL Server 2005 Workgroup Edition
Palavras-chave: 
kbfix kbqfe kbexpertiseadvanced kbsurveynew kbmt KB983500 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 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: 983500  (http://support.microsoft.com/kb/983500/en-us/ )