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
Starten Sie den SQL Server-Agent und sorgen Sie dafür, dass er immer ausgeführt wird. Wenn der SQL Server-Agent über einen längeren Zeitraum ausfällt, werden die Protokolle möglicherweise abgeschnitten, was zu einem dauerhaften Verlust der Änderungsdaten führt, die nicht von Datastream gelesen wurden.
Informationen zum Ausführen des SQL Server-Agents finden Sie unter Eine Instanz des SQL Server-Agents starten, stoppen oder neu starten
Snapshot-Isolation aktivieren.
Beim Backfill von Daten aus Ihrer SQL Server-Datenbank ist es wichtig, konsistente Snapshots erstellt werden. 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 eine temporäre Ansicht der Datenbank erstellt des Backfill-Prozesses. So bleiben die kopierten Daten konsistent, auch wenn andere Nutzer gleichzeitig Änderungen an den Livetabellen vornehmen. Das Aktivieren der Snapshot-Isolierung kann sich für eine zuverlässige Datenextraktion.
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';