SQLServer CDC的capture的作业报错:
无法作为数据库主体执行,因为主体 "dbo" 不存在、无法模拟这种类型的主体,或您没有所需的权限。 [SQLSTATE 42000] (错误 15517)

这个库本来就有CDC,然后通过备份还原到其它服务器上去了,重新开启CDC就报错了。
查询 sys.server_principals:
select
*
from
sys.server_principals
select name,sid from [
Parameter].sys.database_principals where name='dbo'

根据sid查:
select name,sid from sys.server_principals where sid=0x0105000000000005150000007A1A03FB0B92AEDE767AC2B5F4010000

sid为空
给数据库Parameter指定所有者:sa。
ALTER
AUTHORIZATION
ON
DATABASE
::Parameter
TO
sa


问题解决,CDC作业可以正常捕获。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22996654/viewspace-2942084/ ,如需转载,请注明出处,否则将追究法律责任。