首页 > 代码库 > SQL Server本地管理员和sa都无法访问的解决方案
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
SQL Server本地管理员和sa都无法访问的解决方案