Captura de datos de cambio
Escenarios
Puede utilizar un procedimiento almacenado para habilitar o deshabilitar la función de captura de datos de cambio para una base de datos especificada. La captura de datos de cambios puede registrar las actividades de inserción, actualización y eliminación de una tabla habilitada y proporcionar información detallada de cambios utilizando un formato relacional fácil de usar.
Solo ediciones empresariales de RDS for SQL Server, RDS for SQL Server 2016 Standard Edition y las ediciones estándar posteriores admiten la captura de datos de cambio.
Para obtener más información sobre la captura de datos de cambio, consulte los documentos oficiales.
Prerrequisitos
- Se ha conectado una instancia de base de datos de RDS for SQL Server. Para obtener más información sobre cómo conectarse a una instancia de base de datos, consulte Conexión a una instancia de base de datos mediante una red pública.
- El procedimiento almacenado debe ser ejecutado por un usuario que tenga el permiso [CREATE ANY DATABASE]. Si un usuario que no tiene este permiso intenta ejecutar el procedimiento almacenado, el sistema muestra la siguiente información:
Database restores can only be performed by database logins with [CREATE ANY DATABASE] permissions.
Restricciones
- La función de captura de datos de cambio no se puede habilitar o deshabilitar para las bases de datos del sistema. Si intenta habilitar o deshabilitar la captura de datos de cambio para una base de datos del sistema, el sistema muestra la siguiente información:
CDC can not open on system database and [rdsadmin].
- La operación de captura de datos de cambio solo puede ser 1 o 0. Si se realizan otras operaciones, el sistema muestra la siguiente información:
@dbAction just support 1:open 0:close
Procedimiento
Ejecute el siguiente comando para habilitar o deshabilitar la captura de datos de cambio:
EXEC msdb.dbo.rds_cdc_db '@DBName', @dbAction;
- @DBName: especifica la base de datos en la que se va a operar.
- @dbAction: especifica la operación. El valor 1 indica que habilita la captura de datos de cambio. El valor 0 indica que deshabilita la captura de datos de cambio.
Por ejemplo, para habilitar la función de captura de datos de cambio para testDB_1, ejecute el siguiente comando:
EXEC msdb.dbo.rds_cdc_db 'testDB_1', 1;