SQLServer 启用库级别CDC功能

发布时间:2023-08-26 14:00

1.启用SQLServer 库级别CDC功能

USE 
GO
EXEC sys.sp_cdc_enable_db
GO

​2.如上执行完毕之后,会在数据库下的“系统表”中创建如下六个系统表:

dbo.systranschemas
cdc.change_tables
cdc.index_columns
cdc.captured_columns
cdc.lsn_time_mapping
cdc.ddl_history

3.验证SQLServer库级别CDC是否启用

#如下查询返回1表示已启用库级别的CDC功能

select  is_cdc_enabled  from sys.databases where name='';

4.启用SQLServer表级别CDC功能

EXEC sys.sp_cdc_enable_table
@source_schema =N'dbo',
@source_name = N'table_name',
@capture_instance = NULL,
@role_name = NULL,
@supports_net_changes = 0,
go

注意:
本步骤完成之后,会在database_name数据库下的“系统表”中创建一个名为"table_name_CT"的系统表,一个业务表对应一个此系统表。
5.验证SQLServer表级别是否启用

##如下查询语句的执行结果返回1表示该表已经开启表级别CDC

SELECT is_tracked_by_cdc FROM sys.tables WHERE name='';

6.建立数据同步使用的login
建立名为的login,请根据实际情况自行替换名称,下同。
7.为上一步建立的赋予权限
必须是源头该SQLServer数据库固定数据库角色db_owner的一个成员;必须有msdb role、必须有SQLAgentReaderRole

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号