忘记SQL Server密码

时间:2008-10-25 21:05:49

标签: sql-server sql-server-2005

我之前安装了SQL Server 2005并忘记了我在设置过程中设置的管理员密码。我现在如何连接到SQL服务器?

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

6 个答案:

答案 0 :(得分:31)

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

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

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

答案 1 :(得分:9)

您无需为任何重置工具付费。以单用户模式启动实例,您可以使用sysadmin permissions /

创建新登录

请参阅此Pinal Dave link

答案 2 :(得分:4)

非常感谢 cowgod

很好用。 我已使用Windows身份验证模式登录到SQL Server。 然后打开一个新的查询窗口。在那里我通过prssing F5键入了这两个命令。

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

然后 alter login sa enable

答案 3 :(得分:3)

如果没有其他用户具有sysadmin权限但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:右键单击服务器服务,转到“高级”选项卡并添加{{1启动参数中的(注意分号)。

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

  

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

我必须为SQL Server 2008执行此操作,因为它未出现在SQL Server 2008 R2 Configuration Manager中。可以在服务属性中找到Exect命令行。

答案 4 :(得分:0)

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

答案 5 :(得分:0)

要使这些步骤有效,您需要成为安装SQL Server的管理员。

  • 从配置管理器停止SQL Server
  • 以单用户模式启动SQL Server
  • 将此-mSQLCMD命令添加为启动参数之一,方法是右键单击服务并进入启动参数部分,如下面的屏幕截图所示,然后启动SQL Server

    enter image description here

  • 现在从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
    

    上面的命令将所有本地用户添加为sysadmins。您可以更改此设置并添加类似用户,或者您可以创建另一个用户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?