SQL Server本地管理员和sa都无法访问的解决方案

SQL Server本地管理员和sa都无法访问的解决方案

 

问题描述:

 

安装SQL Server的时候,没有添加正确的SQL Server本地管理员账号,并且忘记启用混合验证模式。导致通过SQL Server本地管理员和sa都无法访问。

 

解决方案:

 

步骤1:用服务器本地管理员账号MachineName\Administrator登录,停止SQL Server服务(无需修改服务启动账号)。

 

步骤2:修改SQL Server服务的启动参数,在原来的启动参数后面加上“;-m”(不要带双引号),这里将SQL Server设置为单用户模式启动。

 

步骤3:启动SQL Server服务,使用sqlcmd登录到SQL Server服务器。

 

步骤4:执行如下SQL脚本。

 

USE master
GO
Exec sp_addsvrrolemember ‘MachineName\Administrator’ ‘sysadmin’
GO

 

注意:请将MachineName\Administrator替换为你的本地管理员账号。

 

步骤5:停止SQL Server服务,将原来添加的启动参数“;-m”删除掉。

 

步骤6:启动SQL Server服务。

 

步骤7:通过SSMS登录验证。若仍登录失败,说明sqlcmd下执行的脚本失败。需要重复以上步骤,并将步骤3和步骤4修改为通过SSMS登录手工添加SQL Server本地管理员。

 

建议:在安装SQL Server的时候,注意添加正确的SQL Server本地管理员,并设置混合验证模式和sa密码。

 

参考资料:

http://blogs.msdn.com/b/raulga/archive/2007/07/12/disaster-recovery-what-to-do-when-the-sa-account-password-is-lost-in-sql-server-2005.aspx



本文出自 “SQL Server Deep Dives” 博客,请务必保留此出处http://ultrasql.blog.51cto.com/9591438/1594603

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。