SQL Server 2000 Standard,Windows 2003
我的同事从SQL Server中删除了“BUILTIN \ Administrators”组,导致“SQL Server代理”无法正常工作。
我同步数据库的所有TSQL都停止工作。
我在服务器上拥有管理员权限,我的数据库用户具有sysadmin角色。
有没有人知道如何在不从备份恢复master数据库的情况下返回'BUILTIN \ Administrators'?
修改:当我尝试使用企业管理器添加管理员或MACHINENAME \ Administrators时,我在列表中选择了此组,但是当我接受我的选择时,我有错误:
Error 15041: Windows NT user or group 'MACHINENAME\Administrators' not found. Check the name again
当然不是MACHINENAME我看到了我的服务器名称
编辑2:找到它
EXEC sp_grantlogin 'BUILTIN\Administrators'
EXEC sp_addsrvrolemember 'BUILTIN\Administrators','sysadmin'
答案 0 :(得分:3)
您不想重新添加'BUILTIN \ Administrators',因为它是SQL Server 2000安全漏洞。所有域管理员都将拥有SQL Server的完全sysadmin权限以删除数据库等。
找到运行SQL代理的帐户(右键单击企业管理器中的SQL Server代理并选择属性)。然后使用Windows身份验证将此帐户添加为SQL Server登录名,并将其添加到sysadmin固定服务器角色。
答案 1 :(得分:1)
另一种方法是使用“NT AUTHORITY \ SYSTEM”帐户连接到SQL Server数据库。 This approach要求您启动SQL Server Management Studio作为系统帐户。连接后,您可以创建新的登录名或重置密码。
答案 2 :(得分:0)
使用Enterprise Manager,您是否只能进入登录并将“管理员”作为Windows登录添加到服务器?然后将登录名添加到sysadmin角色?
如果您无法使用“管理员”,请尝试“MACHINENAME \ Administrators”(显然用MACHINENAME替换实际名称)。
抱歉,我没有更明确的答案,我真的不想尝试:)