Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Want to see what's currently in public preview? We've pulled it all together in one place. Check it out here
cancel
Showing results for 
Search instead for 
Did you mean: 
raffaelec
Partner - Contributor II
Partner - Contributor II

Permissions issue enabling MS-CDC on Azure SQL source

Hello,

I’m configuring a Log Stream replication task in Qlik Replicate that uses a Microsoft Azure SQL (MS-CDC) source. According to the official documentation for the latest release, it should be possible to run CDC without requiring the db_owner role: https://help.qlik.com/en-US/replicate/May2025/Content/Global_Common/Content/SharedReplicateHDD/Azure....

Now, a user account has been created for Qlik Replicate on the Microsoft Azure SQL (MS-CDC) source without the db_owner role. When I start the Log Stream task, replication is suspended because the Qlik Replicate user doesn’t have sufficient privileges to enable CDC on the tables. Specifically, the following error is returned:

“SQL_ERROR  SqlState: 42000  NativeError: 22904 

Message: [Microsoft][ODBC Driver 18 for SQL Server][SQL Server]Caller is not authorized to initiate the requested action. DBO privileges are required. 

Line: 1  Column: -1 

Failed (retcode -1) to execute statement: 

EXEC sys.sp_cdc_enable_table @Source_schema=N'dbo', @Source_name=N'table_name', @role_name=NULL”.

 

The DBA indicated that it’s not possible to grant permission to execute this statement to the Qlik Replicate user without assigning the db_owner role.

When I try disabling the “Enable MS-CDC on all captured tables” option in the source endpoint instead, the replication of the tables is again suspended, showing the following message: “Data changes of table 'table_name' will not be captured because it is not enabled for MS-CDC, and Replicate is not set to enable this option automatically”.

My questions are

  • Is there any workaround that would allow a Qlik Replicate user without the db_owner role to enable CDC on the tables?
  • If the Qlik Replicate user doesn’t have the db_owner role, is it mandatory for another user with db_owner privileges to execute the EXEC sys.sp_cdc_enable_table command on the tables to be captured?

Thank you very much in advance for your help.

Best regards

Labels (4)
1 Solution

Accepted Solutions
OritA
Former Employee
Former Employee

Hi, 

As stated in the Replicate users guide under MS-CSC limitation section (see link below) :
"

When running without the db_owner role, the following limitations apply:

  • Capture of DDLs is not supported. To prevent replication errors, you must clear the Capture DDL events check box in the endpoint settings' Advanced tab before running the task.

  • MS-CDC cannot be enabled automatically and should therefore be enabled manually. To prevent replication errors, you must also clear the Enable MS-CDC on all captured tables check box in the endpoint settings' Advanced tab before running the task."

https://help.qlik.com/en-US/replicate/May2023/Content/Replicate/Main/MicrosoftSQLServer-MSCDC/Micros...

So in your case after you enable the MS-CDC manually on your tables the task should run without any issues.  IF you still encounter problems please open a Salesforce case and attach to it the task diagnostic package. 

Regards,

Orit

View solution in original post

1 Reply
OritA
Former Employee
Former Employee

Hi, 

As stated in the Replicate users guide under MS-CSC limitation section (see link below) :
"

When running without the db_owner role, the following limitations apply:

  • Capture of DDLs is not supported. To prevent replication errors, you must clear the Capture DDL events check box in the endpoint settings' Advanced tab before running the task.

  • MS-CDC cannot be enabled automatically and should therefore be enabled manually. To prevent replication errors, you must also clear the Enable MS-CDC on all captured tables check box in the endpoint settings' Advanced tab before running the task."

https://help.qlik.com/en-US/replicate/May2023/Content/Replicate/Main/MicrosoftSQLServer-MSCDC/Micros...

So in your case after you enable the MS-CDC manually on your tables the task should run without any issues.  IF you still encounter problems please open a Salesforce case and attach to it the task diagnostic package. 

Regards,

Orit