我之前安装了SQL Server 2005并忘记了我在设置过程中设置的管理员密码。我现在如何连接到SQL服务器?
编辑:我想我只允许Sql Server身份验证。使用集成安全性登录也不起作用。
答案 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的管理员。
将此-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
上面的命令将所有本地用户添加为sysadmins。您可以更改此设置并添加类似用户,或者您可以创建另一个用户sysadmin并删除BUILTIN\Administrators
完成此操作后,您需要立即停止SQL Server并删除-mSQLCMD
参数并重新启动SQL Server