【问题标题】:SQL Server 2008 -- User not able to access restored DatabaseSQL Server 2008 -- 用户无法访问恢复的数据库
【发布时间】:2011-12-01 18:52:10
【问题描述】:

我正在尝试将数据库从一台机器上运行的 SQL Server 数据库移动到另一台机器上,该机器是测试服务器和原始服务器的副本。

在主机上,我备份了数据库 myDB。 在测试机器上,我删除了现有的旧数据库 myDB。 在测试机上,我恢复了新的数据库myDB。

数据似乎已经成功。 但是我在访问数据库时遇到问题。 所有表的所有者都是“user1”,并且 user1 在两个数据库上都存在相同的登录名。

在尝试访问测试机器上恢复的数据库后,虽然作为 user1 存在问题。 首先它说 user1 的密码不正确。 重置密码后,它说 user1 没有设置默认数据库。但它已经设置为 myDB。它与恢复的数据库同名——myDB。

我在恢复数据库时做错了什么? 在尝试恢复备份之前,我是否需要删除用户 user1 之外的数据库?我试过了。如何处理更新还原和维护用户访问权限?

【问题讨论】:

    标签: sql-server backup restore


    【解决方案1】:

    还原后做一个

    ALTER USER user1 WITH LOGIN = user1
    

    在恢复的数据库中,这将修复错误映射的 SID

    另见Do you still use sp_change_users_login instead of ALTER USER UserName WITH LOGIN = UserName

    【讨论】:

      【解决方案2】:

      为避免此问题,请将您的用户(进行备份的用户)添加为备份数据库的用户,并且您的用户应该在新实例中具有(登录)访问权限。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-05-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多