CORREÇÃO: Não é possível habilitar ou desabilitar a captura de dados de alteração para um banco de dados depois de anexar no SQL Server de 2014 2016 ou 2017

Aplica-se a: SQL Server 2014 StandardSQL Server 2014 DeveloperSQL Server 2014 Enterprise Core Mais

Sintomas


Suponha que você anexar um banco de dados está habilitado para captura de dados de alteração no Microsoft SQL Server 2014 2016 ou 2017. Se houver transações a serem refeitas durante a inicialização do banco de dados, captura de dados de alteração pode ser executado em um estado inconsistente, ou seja, captura de dados de alteração estiver no estado desativado, mas ainda existem os objetos de captura de dados de alteração. Além disso, você pode encontrar as seguintes situações:

  • Quando você tentar desabilitar a captura de dados de alteração para este banco de dados usando o procedimento sp_cdc_disable_db armazenado, você recebe a seguinte mensagem de erro:

    O banco de dados que DatabaseName não está habilitado para captura de dados alterados. Certifique-se de que o contexto do banco de dados correto é definida e repita a operação. Para gerar um relatório sobre os bancos de dados habilitados para captura de dados alterados, consulte a coluna is_cdc_enabled no modo de exibição de catálogo sys. Databases.
  • Quando você tentar habilitar a captura de dados de alteração para este banco de dados usando o procedimento sp_cdc_enable_db armazenado, você recebe a seguinte mensagem de erro:

    Msg 22906, Level 16, estado 1, procedimento sp_cdc_enable_db_internal, linha LineNumber

    O banco de dados DatabaseName não pode ser ativado para a captura de dados alterados porque um usuário de banco de dados denominado UserName ou um esquema chamado SchemaName já existe no banco de dados atual. Esses objetos são necessárias exclusivamente por Change Data Capture. Descarte ou renomear o usuário ou o esquema e tente a operação novamente.

Resolução


Esse problema foi corrigido nas seguintes atualizações cumulativas para o SQL Server:

Atualização de cumulativo 8 para SQL Server 2016 SP1

Atualização cumulativa 4 para o SQL Server 2017

Atualização cumulativa 9 para o SQL Server 2014 SP2

Status


A Microsoft confirma que este é um problema em seus produtos listados na seção "Aplica-se a".

Referências


Saiba mais sobre a terminologia usada pela Microsoft para descrever as atualizações de software.