In den folgenden Schritten wird beschrieben, wie Sie eine Azure SQL-Datenbank für die Verwendung mit Datastream konfigurieren.
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örenTABLE_NAME
: der Name der Tabelle, für die Sie CDC aktivieren möchten
Aktivieren Sie die Snapshot-Isolation.
Wenn Sie Daten aus Ihrer SQL Server-Datenbank zurückfüllen, ist es wichtig, für konsistente Snapshots zu sorgen. Wenn Sie die in diesem Abschnitt beschriebenen Einstellungen nicht anwenden, können Änderungen an der Datenbank während des Backfill-Prozesses 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 Livetabellen 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.
So erstellen Sie einen Datastream-Nutzer:
Stellen Sie eine Verbindung zur Datenbank
master
her und erstellen Sie ein 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 dem Nutzer die Rollen
db_owner
unddb_denydatawriter
zu:EXEC sp_addrolemember 'db_owner', 'USER_NAME'; EXEC sp_addrolemember 'db_denydatawriter', 'USER_NAME';