Freigeben über


Bekannte Einschränkungen, Probleme und Fehler mit CDC

Gilt für:SQL ServerAzure SQL Managed Instance

In diesem Artikel werden bekannte Einschränkungen, Probleme und Fehler mit der Änderungsdatenerfassung (CDC) für SQL Server- und Azure SQL Managed Instanceerläutert.

Informationen zur Azure SQL-Datenbank finden Sie unter Bekannte Probleme mit CDC in Azure SQL-Datenbank.

Ändern von Metadaten

Damit CDC ordnungsgemäß funktioniert, sollten Sie manuell keine CDC-Metadaten wie CDC schema, Änderungstabellen, gespeicherte CDC-Systemprozeduren, cdc user-Standardberechtigungen (sys.database_principals) ändern oder den cdc user umbenennen.

Alle Objekte in sys.objects, bei denen die Eigenschaft is_ms_shipped auf 1 gesetzt ist, darf nicht geändert werden.

SELECT    name AS object_name   
        ,SCHEMA_NAME(schema_id) AS schema_name  
        ,type_desc  
        ,is_ms_shipped  
FROM sys.objects 
WHERE is_ms_shipped= 1 AND SCHEMA_NAME(schema_id) = 'cdc'

Sortierungsunterschiede

Sie sollten wissen, was zu beachten ist, wenn eine Datenbank und die Spalten einer Tabelle, die für Change Data Capture (CDC) konfiguriert sind, in unterschiedlicher Reihenfolge sortiert sind. CDC verwendet einen Zwischenspeicher, um Tabellen aufzufüllen. Wenn eine Tabelle char- oder varchar--Spalten mit Kollationen enthält, die sich von der Datenbank-Kollation unterscheiden, und wenn diese Spalten Nicht-ASCII-Zeichen (z. B. Doppelbyte-DBCS-Zeichen) speichern, kann CDC möglicherweise die geänderten Daten nicht konsistent mit den Daten in den Basistabellen speichern. Dies ist darauf zurückzuführen, dass den Zwischenspeichervariablen keine Sortierungen zugeordnet werden können.

Ziehen Sie einen der folgenden Ansätze in Betracht, um sicherzustellen, dass die Erfassungsdaten der Änderungen mit den Daten in den Basistabellen übereinstimmen:

  • Verwenden Sie nchar- oder nvarchar- Datentyp für Spalten, die Nicht-ASCII-Daten enthalten.

  • Stattdessen können Sie auch die Spalten und die Datenbank in derselben Reihenfolge sortieren.

Wenn Sie z.B. über eine Datenbank verfügen, die eine SQL_Latin1_General_CP1_CI_AS-Sortierung verwendet, beachten Sie die folgende Tabelle:

CREATE TABLE T1( 
     C1 INT PRIMARY KEY, 
     C2 VARCHAR(10) collate Chinese_PRC_CI_AI)

CDC kann möglicherweise die Binärdaten für die Spalte C2 nicht erfassen, da deren Kollation abweicht (Chinese_PRC_CI_AI). Verwenden Sie nvarchar, um dieses Problem zu vermeiden:

CREATE TABLE T1( 
     C1 INT PRIMARY KEY, 
     C2 NVARCHAR(10) collate Chinese_PRC_CI_AI --Unicode data type, CDC works well with this data type
     )

Beschleunigte Datenbankwiederherstellung (ADR) und Erfassung von Datenänderungen (CDC)

Das Aktivieren von Änderungsdatenerfassung (Change Data Capture, CDC) und die beschleunigte Datenbankwiederherstellung (ADR) für dieselbe Datenbank wird in SQL Server 2019 (15.x) nicht unterstützt. Das Aktivieren von CDC und ADR wird in späteren SQL Server-Versionen ab SQL Server 2022 (16.x) kumulativem Update 18 unterstützt.

Wenn Sie CDC aktivieren, wird das aggressive Protokollkürzungsfeature von ADR deaktiviert. Grund dafür ist, dass der CDC-Scan auf das Datenbanktransaktionsprotokoll zugreift. Aktive Transaktionen blockieren weiterhin die Transaktionsprotokollkürzung, bis die Transaktion commitet wird und der CDC-Scan aufholt oder die Transaktion abgebrochen wird. Wenn Sie CDC für eine Datenbank aktivieren, in der ADR aktiviert ist, können Sie eine höhere Auslastung des Transaktionsprotokolls beobachten. Stellen Sie sicher, dass genügend Transaktionsprotokollspeicher für die Anforderungen aller Workloads verfügbar ist.

Beim Aktivieren von CDC empfehlen wir die Verwendung der Option für den reaktivierbaren Index. Bei einem wiederaufnehmbaren Index muss keine lang laufende Transaktion geöffnet bleiben, um einen Index zu erstellen oder neu aufzubauen, so dass das Protokoll während dieses Vorgangs gekürzt werden kann und der Speicherplatz im Protokoll besser verwaltet wird. Weitere Informationen finden Sie in den Richtlinien für Onlineindexvorgänge – resumable Indexüberlegungen.

DDL-Onlineanweisungen werden nicht unterstützt.

ALTER TABLE DDL-Onlineanweisungen werden nicht unterstützt, wenn Change Data Capture in einer Datenbank aktiviert ist.

Das Aktivieren von CDC schlägt fehl, wenn das Schema oder der benannte cdc-Benutzer bereits vorhanden ist

Wenn Sie CDC für eine Datenbank aktivieren, wird ein neues Schema und ein Benutzer mit dem Namen cdc erstellt. Daher wird das manuelle Erstellen eines benutzerdefinierten Schemas oder Benutzers mit dem Namen cdc nicht empfohlen, da es für die Systemverwendung reserviert ist.

Wenn Sie in Ihrer Datenbank manuell ein benutzerdefiniertes Schema oder einen Benutzerdefinierten Benutzer mit dem Namen cdc definiert haben, der nicht mit CDC verknüpft ist, kann die gespeicherte Systemprozedur sys.sp_cdc_enable_db CDC in der Datenbank nicht mit der folgenden Fehlermeldung aktivieren.

The database <database_name> cannot be enabled for change data capture because a database user named 'cdc' or a schema named 'cdc' already exists in the current database. These objects are required exclusively by CDC. Drop or rename the user or schema and retry the operation.

So beheben Sie dieses Problem:

  • Löschen Sie das leere cdc-Schema und den leeren cdc-Benutzer manuell. Anschließend kann CDC erfolgreich in der Datenbank aktiviert werden.

Fehler bei CDC nach ALTER COLUMN zu varchar und varbinary

Wenn der Datentyp einer Spalte in einer CDC-fähigen Tabelle von text in nvarchar oder von image in varbinary geändert wird und eine vorhandene Zeile auf einen Wert außerhalb der Zeilen aktualisiert wird. Nach dem Update führt der CDC-Scan zu Fehlern.

DDL-Änderungen an Quelltabellen

Wenn Sie die Größe von Spalten einer CDC-fähigen Tabelle mit Hilfe von DDL-Anweisungen ändern, kann dies zu Problemen beim anschließenden CDC-Capture-Prozess führen, was zu Fehler 2628 oder Fehler 8115 führt. Denken Sie daran, dass Daten in CDC-Änderungstabellen basierend auf den vom Benutzer konfigurierten Einstellungen aufbewahrt werden. Bevor Sie also Änderungen an der Spaltengröße vornehmen, müssen Sie prüfen, ob die Änderung mit den vorhandenen Daten in CDC-Änderungstabellen kompatibel ist.

Sollte sys.dm_cdc_errors darauf hinweisen, dass Scans aufgrund des Fehlers 2628 oder des Fehlers 8115 bei Änderungstabellen fehlschlagen, sollten Sie zuerst die Änderungsdaten in den betroffenen Änderungstabellen verarbeiten. Danach müssen Sie CDC in der Tabelle deaktivieren und dann wieder aktivieren, um das Problem effektiv zu beheben.

Das Aktivieren von CDC schlägt fehl, wenn 'CREATE OBJECT'-Trigger vorhanden sind.

Wenn Sie CDC aktivieren, wird ein cdc user erstellt, um den CDC-Erstellungsprozess zu verwalten. Die cdc user führt eine Reihe gespeicherter Prozeduren aus, um CDC zu aktivieren, und einige dieser gespeicherten Prozeduren erstellen Objekte, die vorhandene CREATE OBJECT Trigger auslösen. Da die cdc user nicht über die Berechtigung zum Schreiben in die master-Datenbank verfügt, schlagen diese gespeicherten CDC-Prozeduren mit Fehler 22830 fehl.

Deaktivieren Sie alle CREATE OBJECT-Trigger, bevor Sie CDC für eine Datenbank aktivieren. Aktivieren Sie diese Trigger nach der Konfiguration von CDC erneut.

Importieren einer Datenbank mithilfe von Vorgängen zum Import/Export sowie Extrahieren/Veröffentlichen auf Datenebene

Wenn Sie für CDC-fähige SQL-Datenbanken SqlPackage, SSDT oder andere SQL-Tools zum Importieren/Exportieren oder Extrahieren/Publizieren verwenden, werden das Schema cdc und der Benutzer in der neuen Datenbank ausgeschlossen. Andere CDC-Objekte, die nicht in Import-/Export- und Extrahieren-/Bereitstellen-Vorgängen enthalten sind, umfassen die Tabellen, die in „sys.objects“ als is_ms_shipped=1 gekennzeichnet sind.

Selbst wenn CDC nicht aktiviert ist und Sie in Ihrer Datenbank ein benutzerdefiniertes Schema oder einen Benutzer mit dem Namen cdc definiert haben, wird dieser ebenfalls bei den Import-/Export- und Extract-/Bereitstellungsoperationen ausgeschlossen, um eine neue Datenbank zu importieren oder einzurichten.

Partitionswechsel mit Variablen

Das Verwenden von Variablen mit Partitionswechsel für Datenbanken oder Tabellen mit Change Data Capture (CDC) wird für die ALTER TABLE ... SWITCH TO ... PARTITION ...-Anweisung nicht unterstützt. Weitere Informationen finden Sie unter Einschränkungen zu Partitionswechseln.

Behebung von Fehlern

In diesem Abschnitt erfahren Sie, wie Sie Fehler in Zusammenhang mit CDC auf SQL Server und Azure SQL Managed Instance beheben können. CDC-bezogene Fehler können das ordnungsgemäße Funktionieren des Erfassungsprozesses behindern und zur Erweiterung des Datenbanktransaktionsprotokolls führen.

Um diese Fehler zu untersuchen, können Sie die dynamische Verwaltungssicht sys.dm_cdc_errors abfragen. Wenn die dynamische Verwaltungsansicht sys.dm_cdc_errors einen Fehler zurückgibt, lesen Sie den folgenden Abschnitt, um zu erfahren, wie Sie den Fehler beheben können.

Hinweis

Weitere Informationen zu einem bestimmten Fehlercode finden Sie unter Ereignisse und Fehler der Datenbank-Engine.

Dies sind die verschiedenen Problembehandlungskategorien, die in diesem Abschnitt enthalten sind:

Kategorie Beschreibung
Metadaten geändert Enthält Informationen zur Behebung von Problemen im Zusammenhang mit CDC, wenn die nachverfolgte Tabelle geändert oder gelöscht wurde.
Datenbankspeicherplatzverwaltung Enthält Informationen zum Ausgleich von Problemen, wenn der Datenbankspeicher ausgelastet wurde.
CDC-Einschränkung Enthält Informationen zum Ausgleich von Problemen, die durch CDC-Einschränkungen verursacht werden.

Metadaten geändert

Fehler 200/208: Ungültiger Objektname

  • Ursache: Der Fehler kann auftreten, wenn CDC-Metadaten entfernt wurden. Damit CDC ordnungsgemäß funktioniert, sollten Sie manuell keine CDC-Metadaten wie CDC schema, Änderungstabellen, gespeicherte CDC-Systemprozeduren, cdc user-Standardberechtigungen (sys.database_principals) ändern oder den cdc user umbenennen.

  • Empfehlung: Um dieses Problem zu beheben, müssen Sie CDC für Ihre Datenbank deaktivieren und erneut aktivieren. Wenn Sie Change Data Capture für eine Datenbank aktivieren, werden das cdc-Schema, der cdc-Benutzer, Metadatentabellen und andere Systemobjekte für die Datenbank erstellt.

Hinweis

Objekte, die in der sys.objects-Systemkatalogansicht mit is_ms_shipped=1 und schema_name='cdc' gefunden werden, sollten nicht geändert oder gelöscht werden.

Fehler 1202 – Datenbankprinzipal ist nicht vorhanden, oder der Benutzer ist kein Mitglied

  • Ursache: Der Fehler kann auftreten, wenn cdc user entfernt wurde. Damit CDC ordnungsgemäß funktioniert, sollten Sie keine CDC-Metadaten wie z. B. CDC schema, Änderungstabellen, gespeicherte CDC-Systemprozeduren, standardmäßige cdc user-Berechtigungen (sys.database_principals) manuell ändern oder cdc user umbenennen.

  • Empfehlung: Stellen Sie sicher, dass der cdc-Benutzer in Ihrer Datenbank vorhanden ist und ihm außerdem die Rolle db_owner zugewiesen ist. Informationen zum Erstellen des cdc-Benutzers finden Sie im Beispiel Erstellen des CDC-Benutzers und Zuweisen einer Rolle.

Fehler 15517 – Ausführen als Datenbankprinzipal nicht möglich, da der Prinzipal nicht vorhanden ist

  • Ursache: Die Identität dieses Prinzipaltyps kann nicht angenommen werden, oder Sie besitzen keine Berechtigungen. Der Fehler kann auftreten, wenn CDC-Metadaten abgelegt wurden oder nicht mehr Teil der Rolle db_owner sind. Damit CDC ordnungsgemäß funktioniert, sollten Sie manuell keine CDC-Metadaten wie CDC schema, Änderungstabellen, gespeicherte CDC-Systemprozeduren, cdc user-Standardberechtigungen (sys.database_principals) ändern oder den cdc user umbenennen.

  • Empfehlung: Stellen Sie sicher, dass der cdc-Benutzer in Ihrer Datenbank vorhanden ist und ihm außerdem die Rolle db_owner zugewiesen ist. Informationen zum Erstellen des cdc-Benutzers finden Sie im Beispiel Erstellen des CDC-Benutzers und Zuweisen einer Rolle.

Fehler 18807 – Für die Replikationssystemtabelle wurde keine Objekt-ID gefunden

  • Ursache: Dieser Fehler tritt auf, wenn SQL Server die Replikationssystemtabelle „%s“ nicht finden oder nicht darauf zugreifen kann. Dies kann darauf zurückzuführen sein, dass die Tabelle fehlt oder nicht erreichbar ist. Damit CDC ordnungsgemäß funktioniert, sollten Sie keine CDC-Metadaten wie CDC schema, Änderungstabellen, gespeicherte CDC-Systemprozeduren, cdc user-Standardberechtigungen (sys.database_principals) ändern oder den cdc user umbenennen.

  • Empfehlung Stellen Sie sicher, dass die Systemtabelle vorhanden ist und darauf zugegriffen werden kann, indem Sie die Tabelle direkt abfragen. Fragen Sie den sys.objects-Systemkatalog ab, und legen Sie die Prädikatklausel mit is_ms_shipped=1 und schema_name='cdc' fest, um alle CDC-bezogenen Objekte aufzulisten. Wenn die Abfrage keine Objekte zurückgibt, sollten Sie CDC für Ihre Datenbank deaktivieren und erneut aktivieren. Wenn Sie Change Data Capture für eine Datenbank aktivieren, werden das cdc-Schema, der cdc-Benutzer, Metadatentabellen und andere Systemobjekte für die Datenbank erstellt.

Fehler 21050 – Nur Mitglieder der festen Serverrolle „sysadmin“ oder „db_owner“ können diesen Vorgang ausführen.

  • Ursache: Der cdc user wurde aus der db_owner-Datenbankrolle oder aus der sysadmin-Serverrolle entfernt.

  • Empfehlung: Stellen Sie sicher, dass dem cdc user die db_owner-Rolle zugewiesen ist. Informationen zum Erstellen des cdc-Benutzers finden Sie im Beispiel Erstellen des CDC-Benutzers und Zuweisen einer Rolle.

Fehler 22830 : Die Metadaten konnten nicht aktualisiert werden, die angibt, dass die Datenbank <database name> für die Änderungsdatenerfassung aktiviert ist. Der Fehler ist beim Ausführen des Befehls <CDC stored procedure name> aufgetreten.

  • Ursache: Dieser Fehler tritt auf, wenn ein 'CREATE OBJECT'-Trigger in der Datenbank oder auf dem Server vorhanden ist. Wenn Sie CDC aktivieren, wird ein cdc user erstellt, um den CDC-Erstellungsprozess zu verwalten. Die cdc user führt eine Reihe gespeicherter Prozeduren aus, um CDC zu aktivieren, und einige dieser gespeicherten Prozeduren erstellen Objekte, die vorhandene CREATE OBJECT Trigger auslösen. Da die cdc user nicht über die Berechtigung zum Schreiben in die master-Datenbank verfügt, schlagen diese gespeicherten CDC-Prozeduren mit Fehler 22830 fehl.

  • Empfehlung: Deaktivieren Sie alle CREATE OBJECT-Trigger, bevor Sie CDC für eine Datenbank aktivieren. Aktivieren Sie diese Trigger nach der Konfiguration von CDC erneut.

Datenbankspeicherplatzverwaltung

Fehler 1105 – Speicherplatz für das Objekt in der Datenbank konnte nicht zugeordnet werden, da die Dateigruppe voll ist

  • Ursache: Dieser Fehler tritt auf, wenn die primäre Dateigruppe einer Datenbank nicht genügend Speicherplatz aufweist und SQL Server innerhalb dieser Dateigruppe keinen weiteren Speicherplatz für ein Objekt (z. B. eine Tabelle oder einen Index) zuweisen kann.

  • Empfehlung: Um dieses Problem zu beheben, löschen Sie alle nicht benötigten Daten in Ihrer Datenbank, um Speicherplatz freizugeben. Identifizieren Sie nicht verwendete Tabellen, Indizes oder andere Objekte in der Dateigruppe, die sicher entfernt werden können. Überwachen Sie die Speicherplatznutzung genau. Weitere Informationen finden Sie unter Verwalten von Dateispeicherplatz für Datenbanken in Azure SQL-Datenbank.

    Falls das Ablegen unnötiger Daten/Objekte keine Option ist, sollten Sie mehr Speicherplatz für Ihr Datenbank-Transaktionsprotokoll zuordnen. Weitere Informationen zur Verwaltung des Transaktionsprotokolls finden Sie im SQL Server Leitfaden zur Architektur und Verwaltung des Transaktionsprotokolls

CDC-Einschränkung

Fehler 241 : Fehler bei der Konvertierung von Datum und/oder Uhrzeit aus Zeichenfolge

  • Ursache: Dieser Fehler tritt auf, wenn die ALTER COLUMN für einen DATE-Datentyp ausgeführt wird und die Tabelle CDC aktiviert hat. Wenn beispielsweise eine Tabelle eine nvarchar-Spalte aufweist und Sie den Datentyp in DATE ändern (ALTER TABLE table_name ALTER COLUMN [column_name] DATE NULL), wird dieser Fehler in der sys.dm_cdc_errors Tabelle möglicherweise aufgrund einer nicht unterstützten Datenkonvertierung angezeigt, auch wenn der BEFEHL ALTER erfolgreich ist.

  • Empfehlung: Um dieses Problem zu beheben, deaktivieren und aktivieren Sie CDC für Ihre Tabelle nach dem Ändern der Spalte erneut. Alternativ können Sie CDC deaktivieren, bevor Sie die Spalte ändern, und dann CDC nach der ALTER COLUMN-Änderung wieder aktivieren.

Fehler 245: Fehler beim Konvertieren des Werts

  • Ursache: Dieser Fehler tritt auf, wenn der BEFEHL ALTER COLUMN ausgegeben wird, um den Datentyp einer Spalte zu ändern, wenn die Tabelle CDC aktiviert hat. Wenn beispielsweise eine Tabelle eine nvarchar-Spalte aufweist und Sie den Datentyp in INT ändern (ALTER TABLE table_name ALTER COLUMN [column_name] INT NULL), wird dieser Fehler in der sys.dm_cdc_errors Tabelle möglicherweise aufgrund einer nicht unterstützten Datenkonvertierung angezeigt, auch wenn der BEFEHL ALTER erfolgreich ist.

  • Empfehlung: Um dieses Problem zu beheben, deaktivieren und aktivieren Sie CDC für Ihre Tabelle nach dem Ändern der Spalte erneut. Alternativ können Sie CDC deaktivieren, bevor Sie die Spalte ändern, und dann nach der Spaltenänderung CDC erneut aktivieren.

Fehler 913: Fehler des CDC-Erfassungsauftrags beim Verarbeiten von Änderungen für eine Tabelle mit CLR-Systemdatentyp

  • Ursache: Dieser Fehler tritt auf, wenn CDC für eine Tabelle mit dem CLR-Systemdatentyp aktiviert wird, DML-Änderungen durchgeführt und dann DDL-Änderungen an derselben Tabelle vorgenommen werden, während der CDC-Erfassungsauftrag Änderungen verarbeitet, die sich auf andere Tabellen beziehen.

  • Empfehlung: Die empfohlenen Schritte sind, DML für die Tabelle vorübergehend stillzulegen, einen Erfassungsauftrag zum Verarbeiten der Änderungen auszuführen, DDL für die Tabelle auszuführen, einen Erfassungsauftrag zum Verarbeiten der DDL-Änderungen auszuführen und dann die DML-Verarbeitung wieder zu aktivieren. Weitere Informationen beim Verarbeiten von Änderungen für eine Tabelle mit dem CLR-Systemdatentyp (Geometrie, Geografie oder Hierarchie-ID) finden Sie unter CDC-Aufzeichnungsauftrag schlägt fehl.

Fehler 2628 – Zeichenfolgen- oder Binärdaten würden in der Tabelle abgeschnitten.

  • Ursache: Das Ändern der Größe von Spalten einer CDC-fähigen Tabelle mithilfe von DDL-Anweisungen kann zu Problemen mit dem nachfolgenden CDC-Captureprozess führen. Die dynamische Verwaltungsansicht (Dynamic Management View, DMV) „sys.dm_cdc_errors“ ist nützlich, um CDC auf gemeldete Probleme zu überprüfen, z. B. Fehlernummer 2628 und 8115.

  • Empfehlung: Bevor Sie Änderungen an der Spaltengröße vornehmen, müssen Sie prüfen, ob die Änderung mit den vorhandenen Daten in CDC-Änderungstabellen kompatibel ist. Um dieses Problem zu beheben, müssen Sie CDC für Ihre Datenbank deaktivieren und erneut aktivieren. Weitere Informationen zum Aktivieren von CDC für eine Datenbank oder eine Tabelle finden Sie unter Aktivieren von CDC für eine Datenbank und Aktivieren von CDC für eine Tabelle.

Fehler 8115 – Arithmetischer Überlauffehler beim Konvertieren des Datentyps

  • Ursache: Dieser Fehler tritt auf, wenn eine ALTER COLUMN DDL auf einer CDC-fähigen Tabelle ausgeführt wird, die zu einer Abnahme der Genauigkeit der Spalte führt (z. B. ändern sie den Datentyp der Spalte von bigintint). Die Spalte mit verringerter Genauigkeit kann die werte, die in der Änderungstabelle vorhanden sind, nicht enthalten.

  • Empfehlung: Um dieses Problem zu beheben, deaktivieren und aktivieren Sie CDC für Ihre Tabelle nach dem Ändern der Spalte erneut. Alternativ können Sie CDC deaktivieren, bevor Sie die Spalte ändern, und danach CDC nach der ALTER COLUMN-Anweisung erneut aktivieren.

Erstellen eines Benutzers und Zuweisen einer Rolle

Wenn der cdc user entfernt wurde, können Sie den Benutzer manuell wieder hinzufügen.

Verwenden Sie das folgende T-SQL-Skript, um einen Benutzer (cdc) zu erstellen und die richtige Rolle für diesen zuzuweisen (db_owner).

IF NOT EXISTS 
(
    SELECT * 
    FROM sys.database_principals 
    WHERE NAME = 'cdc'
)
BEGIN
    CREATE USER [cdc] 
    WITHOUT LOGIN WITH DEFAULT_SCHEMA = [cdc];
END

EXEC sp_addrolemember 'db_owner', 'cdc';

Überprüfen und Hinzufügen der Rollenmitgliedschaft

Führen Sie die folgende T-SQL-Abfrage aus, um zu überprüfen, ob der cdc-Benutzer der Rolle sysadmin oder db_owner angehört:

EXECUTE AS USER = 'cdc';

SELECT is_srvrolemember('sysadmin'), is_member('db_owner');

Wenn der cdc-Benutzer keiner dieser Rollen angehört, führen Sie die folgende T-SQL-Abfrage aus, um dem db_owner-Benutzer die Rolle cdc hinzuzufügen.

EXEC sp_addrolemember 'db_owner' , 'cdc';