
[英]How could I get the servername in SQL Server Management Studio?
[英]How to get “admin rights” in SQL Server Management Studio?
我正在使用SQL Management Studio 2008 Express作为我本地SQL Server 2008 Express实例的图形界面,我在本地只将其作为我的Web项目的测试和开发界面。
我最近对SQL编码更有信心,并开始使用一些更复杂的sql东西 - 我最新的探索领域是触发器。 但是,令我惊讶的是,我似乎没有对我的服务器实例拥有管理员权限,这意味着我不能做简单的事情,如调试或更改访问权限。
当我尝试开始调试时,我收到一条权限被拒绝的消息,当我尝试将权限规则管理到不同的数据库时,我也看到了它。 我怀疑这与我在安装服务器时选择的某个选项有关,但由于我已经设置了几个数据库并填充了数据,因此我不想卸载并重新安装整个服务器。
有没有办法更改哪个用户帐户是服务器实例的主管理员? 如果没有,是否有任何其他方式获得权限,例如调试我的触发器?
以本地管理员帐户登录计算机。 默认情况下,它应该是MSSQL中的sysadmin角色。
使用SSMS,使用集成身份验证连接到MSSQL实例。 你现在是一个系统管理员。 作为系统管理员,您现在可以将普通用户帐户添加到sysadmin角色 :
EXEC sp_addsrvrolemember @loginame = 'PC_OR_DOMAIN\loginname', @rolename = 'sysadmin'
如果您使用SSPI(也就是集成身份验证,在启动SSMS时也不是不同的用户名和密码),那么只需使用Windows登录作为登录名。 如果您使用Sql Server身份验证(也就是用户名和密码),则使用用户名作为loginame。 如果您使用任何其他登录名,也会创建一个帐户。
肯定有一种方法可以在GUI中完成 - 但我没有方便的ATM来告诉你如何。 我认为这是在安全 - >登录 - >属性和各种服务器角色的一些复选框。
编辑: 在Vista上启用本地管理员帐户此外,如果您是本地管理员(您的用户帐户列在本地管理员组下),则 - 默认情况下 - 您是系统管理员。 可能需要仔细检查sysadmin角色(SQL)和Local Admins组(Vista)的成员。
Edit2:结果证明,SQL 2008 不再添加BUILTIN \\ Administators 。 在这种情况下,你需要检查你没有什么增加。 这应该可以通过登录节点获得。 请注意,如果您不选择sysadmin登录,则可以锁定 MSSQL Admin。 如果是这样的话,我会重新安装。 您可以通过停止MSSQL并复制* .MDF和* .LDF文件来保存数据库。 重新安装后,将它们复制回来并使用sp_attach_db重新附加它们。
Sql Server配置管理器。
这将允许您设置实例帐户。
但是我认为你可能会将数据库所有者更改为连接到数据库的用户。 如果您正在使用SSPI,那么这将是您的登录用户,或者如果您使用的是SQL身份验证,则这将是连接在您的连接字符串内的用户。
额外:
如果您在Windows XP或更高版本上进行调试,并且您不是管理员(本地),则需要将其置于该系统上的“调试用户”组中。 否则访问内存或将调试器附加到您不拥有的进程是一个很大的不。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.