Auf dieser Seite wird beschrieben, wie Sie Change Data Capture (CDC) konfigurieren, um Daten aus einer Azure SQL-Datenbank in ein unterstütztes Ziel wie BigQuery oder Cloud Storage zu streamen.
So konfigurieren Sie eine Azure SQL-Datenbank:
- Aktivieren Sie Change Data Capture (CDC) für Ihre Azure SQL-Quelldatenbank. Stellen Sie dazu eine Verbindung zur Datenbank über Azure Data Studio oder SQL Server Management Studio her und führen Sie den folgenden Befehl aus: - EXEC sys.sp_cdc_enable_db; GO
- Aktivieren Sie CDC für die Tabellen, für die Sie Änderungen erfassen müssen: - EXEC sys.sp_cdc_enable_table @source_schema = N'SCHEMA_NAME', @source_name = N'TABLE_NAME', @role_name = NULL GO- Ersetzen Sie Folgendes: - SCHEMA_NAME: Der Name des Schemas, zu dem die Tabellen gehören
- TABLE_NAME: der Name der Tabelle, für die Sie CDC aktivieren möchten
 
- Snapshot-Isolation aktivieren. - Wenn Sie Daten aus Ihrer SQL Server-Datenbank nachziehen, ist es wichtig, dass die Snapshots konsistent sind. Wenn Sie die in diesem Abschnitt beschriebenen Einstellungen nicht anwenden, können Änderungen, die während des Backfill-Vorgangs an der Datenbank vorgenommen werden, zu Duplikaten oder falschen Ergebnissen führen, insbesondere bei Tabellen ohne Primärschlüssel. - Wenn Sie die Snapshot-Isolation aktivieren, wird zu Beginn des Backfill-Prozesses eine temporäre Ansicht Ihrer Datenbank erstellt. So bleiben die kopierten Daten konsistent, auch wenn andere Nutzer gleichzeitig Änderungen an den Live-Tabellen vornehmen. Die Aktivierung der Snapshot-Isolation kann sich geringfügig auf die Leistung auswirken, ist aber für eine zuverlässige Datenextraktion unerlässlich. - So aktivieren Sie die Snapshot-Isolation: - Stellen Sie eine Verbindung zur Datenbank über einen SQL Server-Client her.
- Führen Sie dazu diesen Befehl aus:
 - ALTER DATABASE DATABASE_NAME SET ALLOW_SNAPSHOT_ISOLATION ON;- Ersetzen Sie DATABASE_NAME durch den Namen Ihrer Datenbank. 
- Datastream-Nutzer erstellen: - Stellen Sie eine Verbindung zur Datenbank - masterher und erstellen Sie einen Login:- USE master; CREATE LOGIN YOUR_LOGIN WITH PASSWORD = 'PASSWORD';
- Stellen Sie eine Verbindung zur Quelldatenbank her und erstellen Sie einen Nutzer für Ihre Anmeldung: - USE DATABASE_NAME CREATE USER USER_NAME FOR LOGIN YOUR_LOGIN;
- Weisen Sie Ihrem Nutzer die Rollen - db_ownerund- db_denydatawriterzu:- EXEC sp_addrolemember 'db_owner', 'USER_NAME'; EXEC sp_addrolemember 'db_denydatawriter', 'USER_NAME';
- Gewähren Sie dem Nutzer die Berechtigung - VIEW DATABASE STATE:- GRANT VIEW DATABASE STATE TO USER_NAME;