WINDOWS에서 CDC 지원 데이터베이스를 SQL Server 2016 또는 SQL Server 2017의 instance 연결할 때 오류 발생

이 문서는 CDC 지원 데이터베이스를 Windows의 SQL Server 2016 또는 SQL Server 2017의 instance 연결할 수 없는 문제를 resolve 데 도움이 됩니다.

원래 제품 버전: SQL Server 2008 이상 버전
원본 KB 번호: 3200464

증상

SQL Server 2014 또는 이전 버전에서 사용하도록 설정된 데이터베이스 Change Data Capture 를 분리하고 Windows instance SQL Server 2016 또는 SQL Server 2017에 연결합니다. 이 경우 시스템 프로시저를 실행할 때 다음 오류가 발생합니다 sp_cdc_enable_table .

명령

EXEC sys.sp_cdc_enable_table @source_schema='<schema name>',
@source_name='<source name>', @role_name='<role name>',  
@supports_net_changes=1, @allow_partition_switch=0;

오류 메시지

Msg 22832, 수준 16, 상태 1, 프로시저
sp_cdc_enable_table_internal, 줄 639 [일괄 처리 시작 줄 0]
테이블 [<스키마 이름>]을 나타내는 메타데이터를 업데이트할 수 없습니다. [<개체 이름>]은 변경 데이터 캡처에 사용할 수 있습니다. 'insert into [cdc] 명령을 실행할 때 오류가 발생했습니다. [captured_columns]'. 반환된 오류는 213: '열 이름 또는 제공된 값 수가 테이블 정의와 일치하지 않습니다.'입니다. 작업 및 오류를 사용하여 오류의 원인을 확인하고 요청을 다시 제출합니다.

해결 방법

이 문제를 resolve 하려면 사용하도록 설정된 Windows Change Data Capture 에서 SQL Server 2016 또는 SQL Server 2017의 instance 데이터베이스를 연결한 후 를 실행 sp_cdc_vupgrade 합니다.

자세한 내용은 데이터베이스 연결을 참조하세요.