Configurare un database Azure SQL

I passaggi seguenti illustrano come configurare un database Azure SQL per l'utilizzo con Datastream.

Per configurare un database Azure SQL:

  1. Abilita Change Data Capture (CDC) per il tuo database SQL di Azure di origine. Per farlo, connettiti al database utilizzando Azure Data Studio o SQL Server Management Studio ed esegui il seguente comando:

    EXEC sys.sp_cdc_enable_db;
    GO
    
  2. Abilita la CDC nelle tabelle di cui devi acquisire le modifiche:

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

    Sostituisci quanto segue:

    • SCHEMA_NAME: il nome dello schema a cui appartengono le tabelle
    • TABLE_NAME: il nome della tabella per cui vuoi abilitare CDC
  3. Avvia l'agente SQL Server e assicurati che sia sempre in esecuzione. Se Agente SQL Server rimane inattivo per un periodo prolungato, i log potrebbero essere troncati, con conseguente perdita permanente dei dati di modifica non letti da Datastream.

    Per informazioni sull'esecuzione dell'agente SQL Server, consulta Avvia, arresta o riavvia un'istanza dell'agente SQL Server.

  4. Attiva l'isolamento degli snapshot.

    Quando esegui il backfill dei dati dal database SQL Server, è importante garantire screenshot coerenti. Se non applichi le impostazioni descritte in questo le modifiche apportate al database durante il processo di backfill potrebbero comportare duplicati o risultati errati, in particolare per le tabelle senza chiavi primarie.

    L'attivazione dell'isolamento degli snapshot crea una visualizzazione temporanea del database all'inizio del processo di backfill. In questo modo, i dati copiati rimangono coerenti anche se altri utenti apportano modifiche alle tabelle in tempo reale contemporaneamente. L'attivazione dell'isolamento degli snapshot potrebbe avere un lieve impatto sulle prestazioni, ma è obbligatoria per un'estrazione dei dati affidabile.

    Per attivare l'isolamento degli snapshot:

    1. Connettiti al database utilizzando un client SQL Server.
    2. Esegui questo comando:
    ALTER DATABASE DATABASE_NAME SET ALLOW_SNAPSHOT_ISOLATION ON;
    

    Sostituisci DATABASE_NAME con il nome del tuo database.

  5. Crea un utente Datastream:

    1. Connettiti al database master e crea un accesso:

      USE master;
      CREATE LOGIN YOUR_LOGIN WITH PASSWORD = 'PASSWORD';
      
    2. Connettiti al database di origine e crea un utente per il tuo accesso:

      USE DATABASE_NAME
      CREATE USER USER_NAME FOR LOGIN YOUR_LOGIN;
      
    3. Assegna i ruoli db_owner e db_denydatawriter all'utente:

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

Passaggi successivi