Windows管理员没有SQL Server权限

时间:2015-03-01 13:29:56

标签: sql-server sql-server-2008

我以前的系统管理员在我的本地计算机上使用他的域User创建了一个SQL Server 2008实例。 现在,我无法创建,删除或查看该实例上的任何数据库或表。即使使用我的域用户或Windows本地管理员。 它说“在主人中拒绝创建数据库权限”。 Management studio中的用户部分仅显示两个用户'BUILTIN \ Users'和'sa'被禁用。 'Builtin \ Users'只有公共角色。 似乎没有用户拥有此实例的权限。我的本地管理员如何获得它的许可? 我无法删除实例,因为它有重要的数据库。

1 个答案:

答案 0 :(得分:2)

如果您的DBA没有将本地管理员配置为sysadmin角色成员。如果您是本地管理员,可以在安装后执行此操作。从管理员命令提示符:

1)以单用户模式启动SQL Server

  • 默认实例:NET START MSSQLSERVER /m
  • 命名实例:NET START MSSQL$YourInstanceName /m

2)运行SQLCMD以添加其他sysadmin角色成员:

  • 默认实例:SQLCMD -E -Q "sp_addsrvrolemember N'BUILTIN\Administrators', N'sysadmin';"
  • 命名实例:SQLCMD -E -S.\YourInstanceName -Q "sp_addsrvrolemember N'BUILTIN\Administrators', N'sysadmin';"

3)正常重启SQL Server,您现在可以作为sysadmin连接

请注意,您可以在步骤2中将任何Windows用户或组指定为sysadmin角色成员。

在SQL Server 2012及更高版本中使用ALTER SERVER ROLE sysadmin ADD MEMBER [BUILTIN\Administrators];而不是sp_addsrvrolemember。 SQL Server 2012中不推荐使用sp_addsrvrolemember proc,而采用DCL语法。