En esta página, se describe cómo configurar la captura de datos modificados (CDC) para transmitir datos desde una base de datos de Azure SQL a un destino compatible, como BigQuery o Cloud Storage.
Para configurar una base de datos de Azure SQL, haz lo siguiente:
Habilita la captura de datos modificados (CDC) para tu base de datos de origen de Azure SQL. Para ello, conéctate a la base de datos con Azure Data Studio o SQL Server Management Studio y ejecuta el siguiente comando:
EXEC sys.sp_cdc_enable_db; GOHabilita la CDC en las tablas para las que necesitas capturar cambios:
EXEC sys.sp_cdc_enable_table @source_schema = N'SCHEMA_NAME', @source_name = N'TABLE_NAME', @role_name = NULL GOReemplaza lo siguiente:
SCHEMA_NAME: el nombre del esquema al que pertenecen las tablasTABLE_NAME: el nombre de la tabla para la que deseas habilitar la CDC
Habilita el aislamiento de instantánea.
Cuando realizas el relleno de datos desde tu base de datos de SQL Server, es importante garantizar la coherencia de las instantáneas. Si no aplicas la configuración que se describe en esta sección, los cambios realizados en la base de datos durante el proceso de relleno podrían generar duplicados o resultados incorrectos. Es necesario aplicar la configuración de aislamiento de instantánea si tu transmisión incluye tablas sin claves primarias.
Habilitar el aislamiento de instantánea crea una vista temporal de tu base de datos al comienzo del proceso de relleno. Esto garantiza que los datos que se copian sigan siendo coherentes, incluso si otros usuarios realizan cambios en las tablas activas al mismo tiempo. Habilitar el aislamiento de instantánea puede tener un ligero impacto en el rendimiento, pero es esencial para la extracción confiable de datos.
Para habilitar el aislamiento de instantánea, haz lo siguiente:
- Conéctate a tu base de datos con un cliente de SQL Server.
- Ejecuta el siguiente comando:
ALTER DATABASE DATABASE_NAME SET ALLOW_SNAPSHOT_ISOLATION ON;Reemplaza DATABASE_NAME por el nombre de tu base de datos.
Crea un usuario de Datastream:
Conéctate a la base de datos
mastery crea un acceso:USE master; CREATE LOGIN YOUR_LOGIN WITH PASSWORD = 'PASSWORD';Conéctate a la base de datos de origen y crea un usuario para tu acceso:
USE DATABASE_NAME CREATE USER USER_NAME FOR LOGIN YOUR_LOGIN;Asigna los roles
db_ownerydb_denydatawritera tu usuario:EXEC sp_addrolemember 'db_owner', 'USER_NAME'; EXEC sp_addrolemember 'db_denydatawriter', 'USER_NAME';Otorga el permiso
VIEW DATABASE STATEa tu usuario:GRANT VIEW DATABASE STATE TO USER_NAME;
¿Qué sigue?
- Obtén más información sobre cómo funciona Datastream con las fuentes de SQL Server.