You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

删除SSISProxyCredentials_ABC凭据失败,提示被服务器主体占用如何解决?

解决无法删除SQL Server凭据的问题(错误15541)

原因分析

错误Msg 15541明确说明目标凭据已被某个服务器主体(如SQL Server登录名)关联,必须先解除这种绑定关系,才能成功删除凭据。

解决步骤

1. 查询关联的登录名

执行以下SQL语句,找出所有绑定了SSISProxyCredentials_ABC凭据的登录名:

SELECT sp.name AS 关联登录名
FROM sys.server_principal_credentials spc
INNER JOIN sys.server_principals sp 
    ON spc.principal_id = sp.principal_id
INNER JOIN sys.credentials c 
    ON spc.credential_id = c.credential_id
WHERE c.name = 'SSISProxyCredentials_ABC'

2. 解除登录名与凭据的关联

对查询结果中的每个登录名,执行ALTER LOGIN语句解除绑定:

-- 替换[关联登录名]为实际查询到的登录名
ALTER LOGIN [关联登录名] DROP CREDENTIAL SSISProxyCredentials_ABC

3. 删除凭据

解除所有关联后,重新执行删除语句即可:

IF EXISTS (SELECT * FROM sys.credentials WHERE name = 'SSISProxyCredentials_ABC')
    DROP CREDENTIAL SSISProxyCredentials_ABC

注意事项

  • 禁止直接修改或删除系统表(如sys.credentials)中的数据,SQL Server系统表为只读状态,直接操作会导致数据不一致或触发报错。
  • 执行上述操作需要具备ALTER ANY LOGIN和ALTER ANY CREDENTIAL权限。

内容的提问来源于stack exchange,提问作者Trying to be DBA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 20:25:03