更新时间:2024-09-05 GMT+08:00

变更数据捕获(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;