MSSQLSERVER_3168
Aplica-se: SQL Server
Detalhes
Atributo | Valor |
---|---|
Nome do produto | SQL Server |
ID do evento | 3168 |
Origem do Evento | MSSQLSERVER |
Componente | SQLEngine |
Nome simbólico | LDDB_SYSTEMWRONGVER |
Texto da mensagem | O backup do banco de dados do sistema no dispositivo %ls não pode ser restaurado porque foi criado por uma versão diferente (%ls) da versão deste servidor (%ls). |
Explicação
Não é possível restaurar um backup de um banco de dados do sistema (mestre, modelo ou msdb) em uma compilação de servidor diferente da compilação na qual o backup foi criado originalmente.
Observação
A instalação de uma atualização de manutenção, como atualização cumulativa ou service pack ou um GDR, altera o número de compilação do servidor. As compilações do servidor são sempre incrementais.
Possíveis causas:
O esquema de banco de dados para bancos de dados do sistema pode ser alterado entre compilações de servidor. Para garantir que uma alteração de esquema não cause inconsistências, a instrução RESTORE compara o número de compilação do servidor do arquivo de backup com o número de compilação do servidor no qual você está tentando restaurar o backup. Se as compilações forem diferentes, a instrução emitirá uma mensagem de erro "3168" e a operação de restauração será encerrada de forma anormal.
Alguns cenários em que esse problema pode ocorrer incluem o seguinte:
Você tenta restaurar um banco de dados do sistema no Servidor A a partir de um backup feito no Servidor B. Os servidores A e B estão em compilações de servidor diferentes. Por exemplo, o servidor A pode estar em uma compilação da versão original e o servidor B pode estar em uma compilação de service pack 1 (SP1).
Você tenta restaurar um banco de dados do sistema a partir de um backup feito no mesmo servidor. No entanto, o servidor estava executando uma compilação diferente quando o processo de backup foi executado. Ou seja, o servidor foi atualizado desde que o backup foi criado.
Ação do usuário
Para resolver o problema, siga estas etapas:
Observação
Para os procedimentos a seguir, o Servidor A é o servidor baseado no SQL Server de origem no qual o backup é feito e o Servidor B é o servidor baseado no SQL Server de destino para o qual você está tentando restaurar o backup:
Determine a versão do Servidor B (Versão B) usando a seguinte consulta:
SELECT @@VERSION;
Execute uma consulta semelhante à seguinte para determinar a versão do SQL Server que estava em execução quando o backup de origem foi feito (Versão A):
RESTORE headeronly FROM disk = 'c:\sqlbackups\masterdb.bak'
Revise os valores de
SoftwareVersionMajor
,SoftwareVersionMinor
e colunasSoftwareVersionBuild
para determinar a compilação do servidor de origem que foi usado quando o backup foi feito. Por exemplo, suponha que os valores sejam os seguintes:- Versão do softwarePrincipal: 15
- SoftwareVersionMinor: 0
- SoftwareVersionBuild: 4236 Nesse caso, a versão do SQL Server de origem quando o backup foi feito é 15.0.4236.
Use as tabelas de lista de versões completas do SQL Server ou a planilha de compilações do Excel para determinar a versão do SQL Server à qual a compilação corresponde. Por exemplo, 15.0.4236 é mapeado para SQL Server 2019 CU16+GDR (versão A).
Use uma das seguintes opções:
Se a Versão A for maior que a Versão B, use as informações que estão em Atualizações mais recentes e histórico de versões do SQL Server para atualizar o Servidor B para o mesmo build que a Versão A.
Se a versão A for menor que a versão B, remova temporariamente as atualizações posteriores usando as seguintes etapas:
No Painel de Controle, selecione Programas > , Programas e Recursos e, em seguida, selecione Exibir atualizações instaladas.
Localize a entrada que corresponde a cada um dos pacotes de atualização posteriores que correspondem à Versão B.
Pressione e segure (ou clique com o botão direito do mouse) na entrada e selecione Desinstalar.
Depois de verificar se a Versão B é igual à Versão A, repita a operação de restauração do banco de dados mestre no Servidor B.
(Recomendado) Atualize o Servidor B para a versão mais recente disponível e faça um novo backup dos bancos de dados do sistema.
Confira também
Limitações na restauração de bancos de dados do sistema (SQL Server)