Configurer une base de données Azure SQL

Les étapes suivantes expliquent comment configurer une base de données Azure SQL à utiliser avec Datastream.

Pour configurer une base de données Azure SQL:

  1. Activez la capture de données modifiées (CDC, Change Data Capture) pour votre base de données Azure SQL source. Pour ce faire, connectez-vous à la base de données à l'aide d'Azure Data Studio ou de SQL Server Management Studio et exécutez la commande suivante:

    EXEC sys.sp_cdc_enable_db;
    GO
    
  2. Activez la CDC sur les tables pour lesquelles vous devez capturer les modifications:

    EXEC sys.sp_cdc_enable_table
    @source_schema = N'SCHEMA_NAME',
    @source_name = N'TABLE_NAME',
    @role_name = NULL
    GO
    

    Remplacez les éléments suivants :

    • SCHEMA_NAME: nom du schéma auquel appartiennent les tables
    • TABLE_NAME: nom de la table pour laquelle vous souhaitez activer la CDC
  3. Démarrez l'agent SQL Server et assurez-vous qu'il s'exécute en permanence. Si l'agent SQL Server reste indisponible pendant une période prolongée, les journaux peuvent être tronqués, ce qui entraîne une perte définitive des données de modification non lues par Datastream.

    Pour en savoir plus sur l'exécution de l'agent SQL Server, consultez la section Démarrer, arrêter ou redémarrer une instance de l'agent SQL Server.

  4. Activer l'isolation d'instantané.

    Lorsque vous remplissez des données à partir de votre base de données SQL Server, il est important de garantir la cohérence des instantanés. Si vous n'appliquez pas les paramètres décrits dans cette section, les modifications apportées à la base de données lors du processus de remplissage peuvent entraîner des doublons ou des résultats incorrects, en particulier pour les tables sans clé primaire.

    L'activation de l'isolation d'instantané crée une vue temporaire de votre base de données au début du processus de remplissage. Cela garantit que les données copiées restent cohérentes, même si d'autres utilisateurs modifient les tables actives en même temps. L'activation de l'isolation d'instantané peut avoir un léger impact sur les performances, mais elle est essentielle pour une extraction de données fiable.

    Pour activer l'isolation d'instantané:

    1. Connectez-vous à votre base de données à l'aide d'un client SQL Server.
    2. Exécutez la commande ci-dessous.
    ALTER DATABASE DATABASE_NAME SET ALLOW_SNAPSHOT_ISOLATION ON;
    

    Remplacez DATABASE_NAME par le nom de votre base de données.

  5. Créez un utilisateur Datastream:

    1. Connectez-vous à la base de données master et créez une connexion:

      USE master;
      CREATE LOGIN YOUR_LOGIN WITH PASSWORD = 'PASSWORD';
      
    2. Connectez-vous à la base de données source et créez un utilisateur pour votre connexion:

      USE DATABASE_NAME
      CREATE USER USER_NAME FOR LOGIN YOUR_LOGIN;
      
    3. Attribuez les rôles db_owner et db_denydatawriter à votre utilisateur : lang-sql EXEC sp_addrolemember 'db_owner', 'USER_NAME'; EXEC sp_addrolemember 'db_denydatawriter', 'USER_NAME';