Restauro do registo com o modo de suspensão num disco Advanced Format pode causar um erro de 9004 no SQL Server 2008 R2 ou SQL Server 2012

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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 2987585
Importante
Nota Depois de aplicar a correcção ou service pack, tem de activar o sinalizador de rastreio 3057 para efectuar a correcção de trabalho.
Sintomas
Considere o seguinte cenário:
  • Ter o Microsoft SQL Server envio do registo ou cópia de segurança/restauro definido entre dois servidores.
  • A base de dados primária tem o respectivo ficheiro de registo de transacções (. ldf) armazenado num disco que tem "Bytes por Sector físico" definido como 512 bytes.
  • Que a transacção efectuar cópias de segurança do registo desta base de dados e, em seguida, tente restaurá-lo utilizando a opção modo de espera na base de dados secundária.
  • O ficheiro de registo de transacções de base de dados secundários (. ldf) está localizado num disco que tem "Bytes por Sector físico" Definir como 4.096 bytes.
Neste cenário, a operação de restauro falha e devolve a seguinte mensagem de erro:

Erro: 9004, classificação de gravidade: Estado de 16: 6.
Ocorreu um erro ao processar o registo de base de dados 'DatabaseName>'. Se possível, restaure a partir de cópia de segurança. Se uma cópia de segurança não estiver disponível, poderá ser necessário reconstruir o registo.

Depois deste erro ocorre, a base de dados secundária entra num estado suspeito.
Resolução

Actualização cumulativa

Este problema foi corrigido pela primeira vez na actualização cumulativa do SQL Server:

Actualização cumulativa 2 para o SQL Server 2014 SP1

Actualização cumulativa 7 para o SQL Server 2012 SP2

Acerca de actualizações cumulativas para o SQL Server

Cada nova actualização cumulativa para o SQL Server contém todas as correcções e segurança correcções que foram incluídas na anterior actualização cumulativa. Ver mais recentes actualizações cumulativas para o SQL Server:

Correcção para o SQL Server 2008 R2 SP2

Existe uma correção suportada pela Microsoft. No entanto, esta correção destina-se apenas a corrigir o problema descrito neste artigo. Aplique esta correcção apenas em sistemas que tenham este problema específico.

Se a correção está disponível para transferência, existe uma secção de "Transferência de Correção Disponível" na parte superior deste artigo da Base de Dados de Conhecimento. Se esta secção não for apresentado, submeta um pedido de suporte e serviço de cliente Microsoft para obter a correcção.

Nota Caso ocorram problemas adicionais ou se for necessária a resolução de problemas, poderá ter de criar um pedido de assistência separado. Os custos de normais do suporte serão aplicados a questões de suporte adicional e problemas incluídos nesta correção específica. Para uma lista completa dos números de telefone de suporte e serviço de cliente da Microsoft ou para criar um pedido de assistência separado, visite o seguinte site da Microsoft: Nota O formulário "Transferência de correcção disponível" apresenta os idiomas nos quais a correcção está disponível. Se não visualizar o seu idioma, é porque uma correcção não está disponível para esse idioma.

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

Para resolver este problema, utilize uma das seguintes soluções:
  • Mova o ficheiro de registo de transacções no destino para uma unidade que tenha "Bytes por Sector físico" definido como 512 bytes.

    Nota O ficheiro de modo de suspensão ainda pode estar localizado na unidade que tem "Bytes por Sector físico" Definir como 4096 bytes.
  • Restaure as cópias de segurança do registo sem utilizar a opção de suspensão. Em vez da opção de modo de suspensão, utilize a opção WITH NORECOVERY durante a operação de restauro.
Mais Informação
Pode utilizar o utilitário da linha de comandos Fsutil para determinar o valor de "Bytes por Sector físico". Se este parâmetro não estiver visível na saída, tem de aplicar a correcção especificada do KB982018.

Para verificar o tipo de unidade que tem, siga estes passos:
  1. Execute o seguinte comando numa linha de comandos elevada:
    Fsutil fsinfo ntfsinfo x:
    Nota Neste comando, <x></x> representa a unidade que está a verificar.
  2. Utilize os valores de "Bytes por Sector" e "Bytes por Sector físico" para determinar o tipo de unidade que tem. Para tal, utilize a seguinte tabela.
    Valor de "Bytes por Sector"Valor de "Bytes por Sector físico"Tipo de unidade
    409640964K nativo
    5124096Formato avançado (também conhecido como 512E)
    512512512 byte nativo

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 2987585 - Última Revisão: 08/20/2015 00:27:00 - Revisão: 2.0

Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2012 Service Pack 2, Microsoft SQL Server 2014 Service Pack 1

  • kbsurveynew kbexpertiseinter kbqfe kbfix kbhotfixserver kbautohotfix kbexpertiseadvanced kbmt KB2987585 KbMtpt
Comentários