我有一个安装在我已从一个域迁移到另一个域的操作系统上的 SQL Server 2014 实例。新域和用户帐户来自不同的林,但它们具有相同的描述性名称(例如DOMAIN\User
)。
当然,我不能用旧的域帐户登录数据库,所以我需要删除它。问题是我做不到。
我不断收到登录名拥有一个或多个数据库的错误消息。但很明显它没有——我已经清除dbo
了所有数据库中的映射并重新分配。
然而错误仍然存在。这很奇怪。
有没有办法确定是什么阻止我删除此登录名,以便我可以继续从新的同名域添加同名帐户?
- 编辑 -
更正:我dbo
已在所有显示该Login name
字段的登录名的数据库中重新分配。对于两个 RS 数据库,该字段为空,错误地导致我相信它们不属于我试图删除的登录名。@hot2use提供的脚本成功了。
您应该使用以下脚本检查数据库的所有者:
然后,您可能会发现一个数据库链接到您的 Windows/AD 帐户中的一个。
具有角色db_owner的 SQL 登录(本机或 Windows 帐户)与作为数据库所有者的帐户之间存在细微差别。
如果您确实找到了一个与您要删除的 Windows/AD 帐户相关联的帐户的数据库,请在连接到该数据库时执行以下命令:
祝你好运。
您应该更改所有数据库的所有者,例如更改为“sa”(即使它被禁用它也会起作用)命令是