为什么需要从用户文件中删除并重新添加用户到SQL Server数据库?为什么需要从用户文件中删除并重新添加用户到SQL Server数据库?
如果我不这样做,我在尝试访问使用从应用该用户名的数据库时,“用户登录失败”。
为什么需要从用户文件中删除并重新添加用户到SQL Server数据库?为什么需要从用户文件中删除并重新添加用户到SQL Server数据库?
如果我不这样做,我在尝试访问使用从应用该用户名的数据库时,“用户登录失败”。
你必须这样做同步与服务器登录的数据库用户。
SQL首先在服务器级别进行身份验证,然后在数据库级别。尽管数据库登录可能与服务器登录名称相同,但不能保证它们实际上是相同的登录名。 (在所有的文件备份可能来自不同的服务器。)
通过删除并重新添加在数据库级用户您确认了服务器的登录访问数据库。
恢复后SUID可能会发生变化。请阅读这篇文章,其中介绍了解决方案,例如在恢复数据库时如何传输登录名和密码以及解析用户权限问题。
http://support.microsoft.com/kb/168001
我知道这是非常乏味的练习,但我们没有任何选项,然后删除和添加数据库用户。
这背后的原因是 - 每一个SQL Server实例都有自己的认证策略,对用户,模式和角色结合。当您尝试认证并访问数据库时,如果您没有条目认证失败,则用户必须在实例的安全目录中有正确的条目。
所以,当您尝试添加用户和数据库分配给用户,它失败,因为用户在数据库的安全目录已经founf。所以首先需要从数据库的安全目录中删除用户,然后再通过SQL服务器实例的安全目录添加该用户,并将数据库访问权限分配给用户。