IT最近重新设置了带有64位Windows的笔记本电脑。他为我安装了Sql Server开发版,并使用用户名和密码进行设置。我登录并尝试将Sql Server更改为Windows身份验证,重新启动了sql server,现在它不允许我使用我的域帐户登录。
我尝试将自己添加到本地系统上的SQLServerSQLAgentUser和SQLServerMSSQLUser组中,但是Sql Server仍然说我的域帐户未被授权。我的帐户是本地系统管理员。
我怎样才能让Sql Server登录?
IT最近重新设置了带有64位Windows的笔记本电脑。他为我安装了Sql Server开发版,并使用用户名和密码进行设置。我登录并尝试将Sql Server更改为Windows身份验证,重新启动了sql server,现在它不允许我使用我的域帐户登录。
我尝试将自己添加到本地系统上的SQLServerSQLAgentUser和SQLServerMSSQLUser组中,但是Sql Server仍然说我的域帐户未被授权。我的帐户是本地系统管理员。
我怎样才能让Sql Server登录?
Answers:
不幸的是,我认为您要么必须:
如果您无权访问数据库,则无法更新安全性以授予自己权限。
为了登录到您的SQL Server(可能仍然缺少单个数据库权限),需要使用Windows authentication
选定的内容创建安全性登录名,然后域帐户名是Login name
。
而且,由于您是本地管理员。
按照Microsoft的分步说明进行操作:http : //msdn.microsoft.com/zh-cn/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创建登录[DOMAIN \ USER]
走
EXEC master..sp_addsrvrolemember @登录名= N'DOMAIN \ USER',@rolename = N'sysadmin'
走
由于您是本地管理员,因此可以使用SQL Server实例的后门获得访问权限。
下载psexec.exe(从的TechNet 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或更高版本上不起作用,因为默认情况下不再将内置管理员组添加为sys admin。如果您正在就地升级就餐,则可能是例外。
在将其更改为Windows Auth之前,是否应该确保Windows帐户具有足够的登录权限?