如果你丢失了SA密码或者SA账号被禁用了,在以下情况下,还是可以登录SQL Server 2008, 重置SA密码.
1. 如果Builtin\Administrator在SQL Server中还存在,你可以用Administrators group的成员去登录,然后重置SA密码。
2. 或者你还有其它的sysadmin权限的账号,你可以用此账号登录,重置SA密码。
但是在以下情况下,怎么办呢?
1. SA密码丢失或者SA账号被禁用。
2. 你进行了一些安全操作,把Builtin\Administrator账号从SQL Server中删除了。
然后你不可以用sysadmin权限的账号登录SQL Server了,是不是打算重装SQL Server 2008了呢?其实可以不用重装系统。
我们可以把SQL Server 2008 启动为单用户模式,然后用Windows Administrative groups里的成员去登录SQL Server 2008.
操作步骤:
1. 我们可以先添加一个账号为Test的成员到Windows Administrative groups,用Test账号登录操作系统。
2. 用Run as a administrator打开命令提示符里输入NET STOP MSSQLSERVER, 即停止MSSQLSERVER运行。
3. 在命令提示符里输入 NET START MSSQLSERVER /m, 将SQL Server 2008 启动为单用户模式。
4. 然后可以用Test账号登录SQL Server 2008。
5. SQL Server已经是单用户模式启动即只允许一个用户连接,这时单击“New Query”会报错“Login failed for user. Reason: Server is in single user mode. Only one administrator can connect at this time”。
6. 这时右击实例名,单击“断开连接”,关闭“对象资源管理器”,然后再点击“New Query”就可以连接了,你可以使用命令 ALTER Login SA enable 重新开启SA 账户。
7. 你可以创建一个有sysadmin权限的SQL Server的 新账户SAMLPE。
- CREATE LOGIN SAMPLE
- WITH PASSWORD=’PASSWORD@123’
- SP_ADDSRVROLEMEMBER ‘SAMPLE’ , ’SYSADMIN’
8. 现在你需要关闭SQL Server,在命令提示符下 输入 NET STAR MSSQLSERVER 正常启动SQL Server,你就可以SA 账户或者新创建的账号来登录SQL Server了。
此操作也同样适用于SQL Server 2005。