Configura una base de datos de Azure SQL

En los siguientes pasos, se explica cómo configurar una base de datos de Azure SQL para su uso con Datastream.

Para configurar una base de datos de Azure SQL, haz lo siguiente:

  1. Habilita la captura de datos modificados (CDC) para tu base de datos de Azure SQL de origen. 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;
    GO
    
  2. Habilita 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
    GO
    

    Reemplaza lo siguiente:

    • SCHEMA_NAME: Es el nombre del esquema al que pertenecen las tablas.
    • TABLE_NAME: El nombre de la tabla para la que deseas habilitar la CDC
  3. Inicia el agente de SQL Server y asegúrate de que se esté ejecutando en todo momento. Si el agente de SQL Server permanece inactivo durante un período prolongado, es posible que los registros se truncen, lo que provocará una pérdida permanente de los datos de cambios que Datastream no leyó.

    Para obtener información sobre cómo ejecutar el agente de SQL Server, consulta Inicia, detén o reinicia una instancia del agente de SQL Server.

  4. Habilitar el aislamiento de instantánea

    Cuando reabasteces datos desde tu base de datos de SQL Server, es importante que te asegures instantáneas coherentes. Si no aplicas la configuración que se describe en esta los cambios realizados en la base de datos durante el proceso de reabastecimiento duplicados o resultados incorrectos, especialmente para tablas sin claves primarias.

    Si habilitas el aislamiento de instantánea, se creará una vista temporal de tu base de datos al inicio. del proceso de reabastecimiento. Esto garantiza que los datos que se copian permanezcan coherentes, incluso si otros usuarios realizan cambios en las tablas activas al mismo tiempo. Habilitar el aislamiento de instantáneas puede tener un ligero impacto en el rendimiento, pero es esencial para una extracción de datos confiable.

    Para habilitar el aislamiento de instantánea, haz lo siguiente:

    1. Conéctate a tu base de datos con un cliente de SQL Server.
    2. Ejecuta el siguiente comando:
    ALTER DATABASE DATABASE_NAME SET ALLOW_SNAPSHOT_ISOLATION ON;
    

    Reemplaza DATABASE_NAME por el nombre de tu base de datos.

  5. Crea un usuario de Datastream:

    1. Conéctate a la base de datos de master y crea un acceso:

      USE master;
      CREATE LOGIN YOUR_LOGIN WITH PASSWORD = 'PASSWORD';
      
    2. Conéctate a la base de datos de origen y crea un usuario para tus credenciales de acceso:

      USE DATABASE_NAME
      CREATE USER USER_NAME FOR LOGIN YOUR_LOGIN;
      
    3. Asigna los roles db_owner y db_denydatawriter a tu usuario:

      EXEC sp_addrolemember 'db_owner', 'USER_NAME';
      EXEC sp_addrolemember 'db_denydatawriter', 'USER_NAME';
      

¿Qué sigue?