Estou tentando restaurar um banco de dados de um ambiente Prod (11.0.6020.0) para um servidor de ambiente inferior (11.0.3128.0). Percebo que o mais baixo tem um SP mais antigo, estamos trabalhando para corrigir isso agora. A restauração ainda deve funcionar, mas há meses, mas estou recebendo a seguinte mensagem de erro. Habilitamos recentemente este banco de dados para CDC, não estou especificando keep_cdc na restauração. Alguém já viu esse erro antes e sabe como resolver?
Msg 22841, nível 16, estado 1, procedimento sp_cdc_vupgrade, linha 320 [Linha inicial do lote 0] Não foi possível atualizar os metadados do banco de dados 'DBName' habilitado para Change Data Capture. A falha ocorreu ao executar a ação 'alter cdc.change_tables index change_tables_unique_idx with (drop_existing = on)'. O erro retornado foi 4922: 'linha 102, estado 9, ALTER TABLE ALTER COLUMN column_id falhou porque um ou mais objetos acessam esta coluna.'. Use a ação e o erro para determinar a causa da falha e reenvie a solicitação.
RESTORE DATABASE [DBName]
FROM DISK = @FileToRestore WITH
MOVE 'DBName' to 'W:\Data\DBName\DBName.mdf',
MOVE 'AmexDB_log' to 'W:\Logs\DBName\DBName_Log.ldf',
NOUNLOAD, REPLACE , FILE = 1, STATS = 10
GO
Conseguimos resolver o problema atualizando o ambiente inferior para o SP3. Feito isso, a restauração foi concluída sem erros.