首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >恢复到其他实例时,已登录的用户将成为未登录的用户

恢复到其他实例时,已登录的用户将成为未登录的用户
EN

Stack Overflow用户
提问于 2019-05-22 01:49:01
回答 1查看 554关注 0票数 0

我在实例A上配置了多个SQL Server登录名。这些SQL Server登录名显式映射到特定数据库。因此,这些数据库在其安全容器中将登录名列为用户。当我将备份从实例A恢复到实例B时,数据库级别的用户变成了“未登录的用户”。用户存在于实例B中的服务器级别,这不是孤立登录的情况。从字面上看,它变成了“没有登录的SQL用户”,而不是“有登录的SQL用户”。有没有人有什么办法来解决这个问题?到目前为止,我已经用尽了所有的选择。除了在数据库级别删除用户并将其添加到该数据库的服务器级别的登录名之外,似乎什么都不起作用。然而,我不能继续这样做,因为这是自动化过程的一部分。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-22 03:31:03

问题是您没有在实例B中正确创建登录名,因此它们与实例A中的登录名具有不同的SID。数据库用户引用的是SID,而不是登录名,因此,尽管登录名相同,但数据库用户看不到具有其附加到的SID的登录名。

因此,您需要从实例B中删除应该与实例A中的登录信息相同的登录信息,然后使用https://support.microsoft.com/en-us/help/918992/how-to-transfer-logins-and-passwords-between-instances-of-sql-server中的sp_help_revlogin将这些登录信息复制到实例B中。

您只需要在要从中复制登录的实例上创建sp_hexadecimal和sp_help_revlogin存储过程,但将其放在所有实例上也没有什么坏处。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56243855

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档