忘记 SQL Server 密码

Posted

技术标签:

【中文标题】忘记 SQL Server 密码【英文标题】:Forgot SQL Server Password 【发布时间】:2008-10-25 21:05:49 【问题描述】:

我前段时间安装了 SQL Server 2005,但忘记了我在安装过程中设置的管理员密码。我现在如何连接到 SQL Server?

编辑: 我想我只允许 Sql Server 身份验证。使用集成安全登录也不起作用。

【问题讨论】:

只是为了澄清,这不是您指的是SQL Server 2005 Express,对吗? 我认为这个问题属于ServerFault.com How to Reset SA Password in Sql Server 【参考方案1】:

尝试在命令提示符下运行以下命令(假设您的服务器名称为 SQLEXPRESS):

osql -E -S .\SQLEXPRESS
exec sp_password @new='changeme', @loginame='sa'
go
alter login sa enable
go
exit

完成这些步骤后,尝试使用用户名 sa 和密码 changeme 登录。

【讨论】:

我认为这第一个命令需要集成帐户。因为当我尝试它时,它说“用户'mydomain \ myuser'登录失败”。 此答案假定您已经可以访问您的 SQL 服务器,否则您将收到“登录失败”消息,如预期的那样。【参考方案2】:

您无需为任何重置工具付费即可执行此操作。以单用户模式启动实例,您可以使用 sysadmin 权限创建新的登录/

看到这个Pinal Dave link。

【讨论】:

是的,我就是这样做的:serverfault.com/questions/120215/…【参考方案3】:

非常感谢牛神

它工作正常。 我已经使用 Windows 身份验证模式登录到 SQL Server。 然后打开了一个新的查询窗口。在那里我按 F5 输入了这两个命令。

首次运行 exec sp_password @new='changeme', @loginame='sa'

然后 alter login sa enable

【讨论】:

【参考方案4】:

如果除了sa 之外没有其他用户具有系统管理员权限,则应使用-m 选项重新启动SQL Server 以用于单用户模式。然后你可以连接到这个 SQL Server 实例,你可以添加其他具有 sysadmin 角色的用户或执行exec sp_password

Pinal Dave 在这里解释 - http://blog.sqlauthority.com/2009/02/10/sql-server-start-sql-server-instance-in-single-user-mode/ - 如何使用 SQL Server 配置管理器 添加 -m:右键单击服务器服务,转到高级选项卡并添加 -m;(注意分号)在启动参数中。

另一种方法是在服务中停止 SQL Server 实例并从 命令行 手动运行它,如下所示:

"C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Binn\sqlservr.exe" -m -sSQLEXPRESS

我必须为 SQL Server 2008 执行此操作,因为它没有出现在 SQL Server 2008 R2 配置管理器中。可以在服务属性中找到执行命令行。

【讨论】:

但是如何添加其他具有系统管理员角色的用户? 刚才还不能查,不过我记得你只要启动SQL Server Management Studio,连接到那个实例,右击实例,选择“添加用户...”,然后在对话窗口应该有一个系统管理员权限的复选框。 谢谢,刚刚详细找到了v-consult.be/2011/05/26/…【参考方案5】:

除非您将其设置为仅接受 SQL Server 身份验证,否则您可以使用域和/或计算机的管理员用户以集成安全性登录。

【讨论】:

不一定,如果本地管理员用户或组在安装时未添加为管理员,则这不是一个选项。此外,SQL 身份验证本身不是一个选项。【参考方案6】:

要使这些步骤生效,您需要是安装了 SQL Server 的机器的管理员。

从配置管理器停止 SQL Server 以单用户模式启动 SQL Server

将此-mSQLCMD 命令添加为启动参数之一,方法是右键单击服务并进入启动参数部分,如下面的屏幕截图所示,然后启动 SQL Server

现在从 SQLCMD(以管理员身份打开命令提示符)连接到 SQLSERVER,如下所示:

sqlcmd -s servername\instancename

然后运行以下命令:

USE [master]
GO
CREATE LOGIN [BUILTIN\Administrators] FROM WINDOWS WITH DEFAULT_DATABASE=[master]
GO
EXEC master..sp_addsrvrolemember @loginame = N'BUILTIN\Administrators', @rolename = N'sysadmin'
GO

以上命令将所有本地用户添加为系统管理员。您可以更改此设置并添加一个喜欢的用户,或者您可以创建另一个用户 sysadmin 并删除 BUILTIN\Administrators

完成后,您现在需要停止 SQL Server 并删除 -mSQLCMD 参数并重新启动 SQL Server

参考资料:Help : I lost sa password and no one has System Administrator (SysAdmin) permission. What should I do?

【讨论】:

以上是关于忘记 SQL Server 密码的主要内容,如果未能解决你的问题,请参考以下文章

SQL SERVER忘记用户名和密码了,用WINDOWS帐户也登陆不上去怎么办

wampserver 的MySQL密码忘记了怎么办

SQL 2005忘记sa账号密码怎么办?

SQL server 密码在哪里修改

SQL server 2000数据库的用户sa的密码忘了怎么办

sql server2012怎么设置用户名密码