更新权限被拒绝,尽管是管理员,但无法授予自己 db_datawriter 权限

更新权限被拒绝,尽管是管理员,但无法授予自己 db_datawriter 权限

我在 Windows 2008 数据库服务器上的管理员组中。

我的用户名出现在 SQL Server Management Studio 的“安全”->“登录”部分,在“属性”->“服务器角色”下,我看到我只有“公共”角色。在“用户映射”下,我是“db_datareader”和“公共”角色的成员。

我需要将自己添加到“db_datawriter”角色。当我尝试时,我收到错误 15247 - 用户无权执行此操作。

我能做些什么来赋予自己这个角色?作为 Windows 管理员,我认为这是可能的……

提前感谢你帮助一位非常不深入的开发人员:)

答案1

在 SQL Server 2008 中,Windows 管理员不再默认为 SQL Server 管理员。您必须请求其他人更改您的权限。

http://msdn.microsoft.com/en-us/library/cc280562(v=SQL.100).aspx

答案2

即使您不是 SQL Server 上的系统管理员,但属于管理员组的一部分,您也可以添加自己。

  1. 单一模式启动SQL:在SQL配置管理器-->选择SQL Server服务-->-->进入高级-->进入启动参数-->在“启动参数”选项中的列表末尾添加“;-m”。
  2. 启动命令提示符并使用 Windows 身份验证通过 sqlcmd 连接到 SQL。

sqlcmd -S 服务器名称 -E

  1. 输入:

EXEC sp_addsrvrolemember'域\您的名称','sysadmin';

答案3

我尝试使用上述方法对 SQLExpress 进行操作,但无济于事。无论出于何种原因,添加-m标记到启动参数导致 SQLExpress 启动失败。所以我做了一些搜索,发现了这个博客文章这似乎让 SQLExpress 进入了单用户模式,然后按照 yrushka 的步骤添加用户。

  1. 停止 SQL Express

    NET STOP MSSQL$SQLEXPRESS
    
  2. 启动 SQL Express

    NET START MSSQL$SQLEXPRESS /m
    
  3. 打开命令提示符窗口并登录 SQLExpress

    sqlcmd -S SERVERNAME -E 
    
  4. 添加用户

    EXEC sp_addsrvrolemember 'DOMAIN\YOURNAME', 'sysadmin';
    GO
    

相关内容