IT 部门最近重新设置了我的笔记本电脑,使用的是 64 位 Windows。他为我安装了 Sql Server dev 版本,并设置了用户名和密码。我登录后尝试将 Sql Server 更改为 Windows 身份验证,重新启动了 SQL Server,现在它不允许我使用域帐户登录。
我尝试将自己添加到本地系统上的 SQLServerSQLAgentUser 和 SQLServerMSSQLUser 组,但 SQL Server 仍然提示我的域帐户未获得授权。我的帐户是本地系统管理员。
我如何让 Sql Server 允许我登录?
答案1
不幸的是,我认为你要么必须:
- 让您当地的亲密 IT 朋友登录数据库并正确设置您的帐户。
- 在您的帐户下重新安装 SQL Server,以便自动授予您登录权限。
如果您无权访问数据库,则您无法更新安全性来授予自己权限。
为了登录到你的 SQL服务器(可能仍然缺少单独的数据库权限)需要创建Windows authentication
选择的安全登录,然后域帐户名就是Login name
。
答案2
而且,由于您是本地管理员。
按照微软的分步说明进行操作:http://msdn.microsoft.com/en-us/library/dd207004.aspx或如下所示:
停止 SQL Server 服务。
以管理员身份打开命令提示符并浏览到 SQL Server binn 文件夹(默认为 C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn)
使用控制台输出以单用户模式启动 SQL Server
sqlservr.exe-c-m
然后以管理员身份启动 SSMS 或 SQLCMD,连接并运行以下查询:
从 Windows 创建登录 [域\用户]
去
EXEC master..sp_addsrvrolemember @loginame = N'DOMAIN\USER',@rolename = N'sysadmin'
去
答案3
由于您是本地管理员,您可以使用 SQL Server 实例的后门来获取访问权限。
从 TechNet 下载 psexec.exe (PSTools这里)。
转到命令提示符并转到您提取文件 (psexec.exe) 的目录。运行命令psexec.exe -i -s ssms.exe
或psexec.exe -i -s sqlwb.exe
(对于 SQL 2005)。
这将以 NT AUTHORITY\SYSTEM 帐户打开 SSMS,默认情况下,该帐户被授予实例的 SYSADMIN 权限。然后您应该能够将您的登录名添加到实例。如果这不起作用,则可能是系统帐户权限已被删除。
注意:如果您使用的是 Vista 或 Windows 7,您可能需要以管理员身份运行命令提示符(右键单击“以管理员身份运行”)。
第二点:这在 SQL Server 2012 或更高版本上不起作用,因为内置管理员组不再默认添加为系统管理员。例外情况是,如果您正在使用就地升级。
答案4
在将 Windows 帐户更改为 Windows Auth 之前,您是否应该确保您的 Windows 帐户具有足够的登录权限?