变更数据捕获(CDC)
操作场景
使用存储过程对指定数据库开启或关闭变更数据捕获功能。变更数据捕获可记录应用到所启用的表中的插入、更新和删除活动,同时采用易于使用的关系格式提供变更详细信息。
仅RDS for SQL Server企业版和RDS for SQL Server 2016及其以上版本的标准版支持变更数据捕获。
关于变更数据捕获的其他功能可参考官方文档。
前提条件
- 成功连接RDS for SQL Server实例。关于连接华为云关系型数据库实例,请参考连接实例。
- 执行此存储过程的必须是拥有[CREATE ANY DATABASE]权限的用户。如果不具备此权限的用户尝试执行该存储过程,系统将会如下提示:
Database restores can only be performed by database logins with [CREATE ANY DATABASE] permissions.
约束
- 对于系统库,不可进行开启或关闭变更数据捕获功能。如果您试图对系统库进行此操作,系统将会如下提示:
CDC can not open on system database and [rdsadmin].
- 变更数据捕获功能操作仅包括 1,0,若尝试进行其他操作,系统将会如下提示:
@dbAction just support 1:open 0:close
操作步骤
执行以下命令,开启或关闭变更数据捕获。
EXEC msdb.dbo.rds_cdc_db '@DBName', @dbAction;
- @ DBName:指定要操作的数据库。
- @ dbAction:指定操作,1为开启变更数据捕获,0为关闭变更数据捕获。
对“testDB_1”打开变更数据捕获,示例如下:
EXEC msdb.dbo.rds_cdc_db 'testDB_1', 1;