SQL Server 2008上的权限问题

时间:2011-10-12 14:03:30

标签: sql-server-2008 permissions

我刚刚通过创建一个空数据库并为其恢复备份,将数据库从我们的测试服务器移动到了实时服务器。

尽管正确添加了Login,但我收到以下错误:

  

服务器主体“myUser”无法访问数据库   当前安全上下文下的“myDatabase”。

我尝试在对象资源管理器详细信息中单击F7,但没有运气。我只需运行:

即可得到错误
> USE myDatabase 
> GO
> 
> EXECUTE AS LOGIN = 'myUser'

运行以下脚本(来自相关问题)正确显示用户

select  princ.type_desc
,       princ.name
,       perm.permission_name
,       perm.state_desc
,       object_name(perm.major_id)
from    sys.database_permissions perm
left join
        sys.database_principals princ
on      princ.principal_id  = perm.grantee_principal_id 
  

SQL_USER myUser CONNECT GRANT

任何建议???

1 个答案:

答案 0 :(得分:2)

尝试使用sp_change_users_login和“Auto_Fix”操作重新同步服务器和数据库之间的登录。

exec sp_change_users_login @Action = 'Auto_Fix', @UserNamePattern = 'myUser'