运维服务小笔记

If not now,when?If not me,who?

三月 11th, 2014

没有开启windows混合登陆模式破解MSSQL的SA密码

371 views, Server, windows, by 川望.
如果MSSQL的sa密码忘记了,可以通过windows混合模式登陆,但是如果sa密码忘记了,混合模式也被关闭了,这时候应该如何破解密码呢?
方法1:
可通过修改注册表的方式开启混合验证模式,然后通过windows账户登录sql后直接在安全模块修改sa密码即可,
修改:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQLServer 中的LoginMode = 2
其中MSSQL10.MSSQLSERVER这部分不同版本的mssql会有所不同,可以注册表全表搜索LoginMode字段。
方法2:
如果方法1无效可通过mssql的单用户配合sqlcmd修改密码,方法如下:
停止所有sql服务,然后命令行进入mssql安装目录的binn目录下
 
执行sqlserver.exe -m启动single模式(cmd窗口不要关,类似mysql的safe模式)//也可通过mssql配置管理器的高级配置的启动参数里面加上;-m效果一样,但是操作麻烦一些。
 
另开一个cmd窗口执行sqlcmd -E直接进去sqlcmd模式
执行以下命令:
create login [builtin\administrators] from windows
go
exec sp_addsrvrolemember [builtin\administrators], [sysadmin]
go
ALTER LOGIN sa WITH PASSWORD=’aliyun’
go   
shutdown
go
关闭mssql服务,然后正常启动
这时候sa密码既被修改为aliyun了
————————
注意:
如果是2008以及以上系统且开启了UAC,那么即使开启了混合模式认证,这时候直接启动ms sql studio manager也是无法登陆的;
必须右键通过管理员权限运行ms sql studio manager才可以直接使用windows认证方式登陆。

 



Back Top

发表评论

电子邮件地址不会被公开。 必填项已用*标注

注意: 评论者允许使用'@user空格'的方式将自己的评论通知另外评论者。例如, ABC是本文的评论者之一,则使用'@ABC '(不包括单引号)将会自动将您的评论发送给ABC。使用'@all ',将会将评论发送给之前所有其它评论者。请务必注意user必须和评论者名相匹配(大小写一致)。

无觅相关文章插件,快速提升流量