2011-02-09 74 views
3

只是想知道是否有可能在sql server 2005上为用户sa使用混合模式?我知道如何在管理工作室做到这一点,但这对用户“sa”来说还不够。我认为它需要在其他地方完成。SQL Server 2005混合模式认证

我试图通过一个控制台应用程序连接到数据库,但不断收到错误消息“帐户已停用”

干杯

路易

回答

7

http://msdn.microsoft.com/en-us/library/ms144284(v=SQL.90).aspx

如何操作: http://msdn.microsoft.com/en-us/library/ms188670(v=SQL.90).aspx

如果您在安装过程中未启用混合模式身份验证,则需要在服务器属性>安全性(您可以使用Management Studio - 请参阅上面的链接)中执行此操作。您还需要启用sa登录并设置适当的密码。

Enable MixedMode

Enable sa

一定改变,以使更改生效的身份验证模式后重新启动SQL服务。

+0

我已经这样做了,它不工作。它在安装期间不会问我使用哪种认证模式? – Funky 2011-02-09 14:09:27

+0

您已验证服务器已配置为混合模式(如上图所示),并且服务器的sa登录已启用,如第二张图所示?您还需要重新启动SQL服务才能使身份验证模式的更改生效。 – theChrisKent 2011-02-09 14:12:03

0

如果您的SQL Server已经配置为Mixed Mode Authentication,那么您只需要enablesa用户。您可以在Security->Logins文件夹中找到它。

7

如果您使用的SQL Express 2005,或者您没有SQL Server Management Studio中安装,您将需要更新registry key to enable Mixed Mode Authentication

打开注册表编辑器(发射 申请%WINDIR%\ REGEDIT.EXE)和 转到 HKLM \ Software \ Microsoft \ Microsoft SQL Server \ MSSQL.1 \ MSSQLServer在左侧的树 中。

在右侧,找到名为 LoginMode的条目。当安装的 为1时,默认值为1.将其更新为2. 下一步是重新启动服务。

启动您的服务管理器(开始 - >运行 - >键入services.msc),并寻找 服务名为MSSQL服务器 (SQLEXPRESS)。重新启动服务。

SQL Server服务重新启动后,您需要启用sa帐户。从管理员命令提示符下使用OSQL命令行工具:

osql -E -S .\SQLEXPRESS 
ALTER LOGIN sa ENABLE ; 
GO 
ALTER LOGIN sa WITH PASSWORD = '<password>' ; 
GO 

然后,您应该能够使用测试登录:

osql -U sa -S .\SQLEXPRESS