SQL Server改混合验证模式
(创建时间:2010年12月30日 18:34:00)
Jangogo : 

先在 控制面板-->管理工具里面的ODBC数据源新建一个SQL Server的系统数据源,用指定的用户名和密码的方式,输入 用户sa 和他的密码试试,如果提示sa登录失败,

多半是因为:1.SQL Server没有设置混合验证模式  2.sa用户没有启用或者密码不对,解决方法如下

SQL2008混合身份验证sa ,提示错误18456,:

1、用Windows身份验证方式进入SQL2008,在“对象资源管理器”右击根目录,弹出服务器属性。在“选择页”->“安全性”->勾选Sql Server和Windows身份验证模式->确定。

到这里就可以断开连接退出并使用“SQL Server身份验证”模式登录了。

由于默认不启用sa,所以如果启用sa账户登录,则还需要如下设置:

2、回到“对象资源管理器”,展开“安全性”,展开“登录名”就会看到登录名sa,右键它-->属性,“选择页”上选“状态”,右边的登陆选“启用”。确定。

4、万一还登录不了,可做如下尝试:

打开“SQL Server配置管理器”-->展开“SQL Server网络配置”-->“MSSQLSERVER 的协议”,在右边启用“TCP/IP协议”(+Named pipes协议)。

5.在SQL Server服务 里重启MSSQLSERVER服务即可。


如果你安装的msde是没有管理器界面的话,可以通过注册表来更改:

如果不能确定如何验证 MSDE 安装的身份验证模式,可以查看相应的注册表项。默认情况下,对于 Windows 身份验证,Windows LoginMode 注册表子项的值设置为 1。如果启用了混合模式身份验证,则此值为 2。

 

  • LoginMode 子项的位置取决于您是将 MSDE 作为默认 MSDE 实例安装还是作为命名实例安装。如果 MSDE 是作为默认实例安装的,则 LoginMode 子项位于以下注册表子项中:
    HKLM\Software\Microsoft\MSSqlserver\MSSqlServer\LoginMode
  • 如果 MSDE 是作为命名实例安装的,则 LoginMode 子项位于以下注册表子项中:
    HKLM\Software\Microsoft\Microsoft SQL Server\%InstanceName%\MSSQLServer\LoginMode

注意:切换身份验证模式之前,必须设置 sa 密码,以免暴露潜在的安全漏洞。


如何更改 SA 密码

  1. 在正在连接到的 MSDE 实例的宿主计算机中,打开命令提示符窗口。
  2. 键入下面的命令,然后按 Enter 键:

    osql -U sa

    Password:提示符下,按 Enter 键(如果密码为空)或键入当前密码。这样可以使用 sa 帐户连接到 MSDE 的本地默认实例。要使用 Windows 身份验证进行连接,请键入此命令: use osql -E
     
  3. 在各个单独的行内键入下列命令,然后按 Enter 键:
    				   sp_password @old = null, @new = 'complexpwd',  @loginame ='sa' 
       go
    						

    注意:确保将“complexpwd”替换为新的强密码。强密码包括字母数字和特殊字符以及大小写字符的组合。

    您将收到以下提示信息,表示已成功更改密码:
    Password changed.
     
     

     

    如何验证 SA 密码是否为空

    1. 在正在连接到的 MSDE 实例的宿主计算机中,打开命令提示符窗口。
    2. 在命令提示符处键入以下命令,然后按 Enter 键:

      osql -U sa

      这样可以通过 sa 帐户连接到 MSDE 的本地默认实例。要连接到您的计算机上安装的命名实例,请键入:

      osql -U sa -S servername\instancename

      随即将出现以下提示:

      Password:
    3. 再次按 Enter 键。此操作将为 sa 传递一个 NULL(空)密码。

      如果按 Enter 键后出现以下提示,则您对 sa 帐户没有密码:

      1>

      为了符合安全方案的要求,Microsoft 建议您创建非空的强密码。

      但是,如果收到以下错误信息,则表示您输入的密码不正确。此错误信息表示已为 sa 帐户创建了密码:
      "Login Failed for user 'sa'."
      以下错误信息表示运行 SQL Server 的计算机设置为只限 Windows 身份验证:
      Login failed for user 'sa'.Reason:Not associated with a trusted SQL Server connection.
      在 Windows 身份验证模式下无法验证 sa 密码。但可以创建 sa 密码,以便 sa 帐户在以后身份验证模式更改为混合模式时仍然是安全的。

      如果您收到以下错误信息,则表示 SQL Server 可能未运行,或者您可能为安装的 SQL Server 的命名实例提供了错误名称:
      [Shared Memory]SQL Server does not exist or access denied.
      [Shared Memory]ConnectionOpen (Connect()).


     

文档中心