KB4470821 - CORREÇÃO: DBCC CHECKDB em master banco de dados falha com o erro 2570 quando a Conformidade com Critérios Comuns está habilitada no SQL Server 2017

Aplica-se a
SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows

Sintomas

Considere o seguinte cenário:

  • Você habilita a opção CCC (Conformidade com Critérios Comuns) em sua instância do SQL Server 2017.
  • Você tenta fazer logon na instância do SQL Server usando um logon do SQL inexistente.
  • Faça logon na instância do SQL Server com uma conta de administrador.
  • Execute o comando DBCC CHECKDB no banco de dados master.

Neste cenário, você pode receber uma mensagem de erro semelhante à seguinte:

Msg 2570, Nível 16, Estado 2, Line LineNumber
Página (#:#), slot # na ID do objeto #, ID do índice #, ID da partição #, ID da unidade de alocação # (digite "Dados em linha"). O valor "nome" da coluna está fora do intervalo para o tipo de dados "nvarchar". Atualizar coluna para um valor legal.

Status

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

Resolução

Esse problema é corrigido na seguinte atualização cumulativa para o SQL Server:

Sobre atualizações cumulativas para o SQL Server:

Cada nova atualização cumulativa do SQL Server contém todos os hotfixes e todas as correções de segurança incluídas na atualização cumulativa anterior. Confira as atualizações cumulativas mais recentes para o SQL Server:

Solução alternativa

Para contornar esse problema, habilite o sinalizador de rastreamento (TF) 2566 que desabilita o DATA_PURITY marcar quando você executa o comando DBCC CHECKDB no banco de dados master. No entanto, isso não impede que as linhas inválidas sejam inseridas no banco de dados master. Ele apenas desabilita a marca durante DBCC CHECKDB.

Referências

Saiba mais sobre a terminologia que a Microsoft usa para descrever atualizações de software.