zoukankan      html  css  js  c++  java
  • SQL server 2005 18452 错误

    决定把数据库装到自己机子上,可是非常不顺利,要选用SQL身份方式登陆,一番配置完成后,非常爽快地提示我连接不成功,一看错误代码,18452,于是又开始漫长的求解过程。。。中文网络遍地不负责任的转贴让我很不爽,以下是被转贴最多的一种方式:

    ==============
    无法连接到服务器  
    服务器:消息18452,     级别16,状态1  
    [Microsoft][ODBC     SQL     Server     Driver][SQL     Server]用户‘sa’登陆失败。原因:未与信任SQL     Server连接相关联   
    该错误产生的原因是由于SQL     Server使用了"仅     Windows"的身份验证方式,因此用户无法使用SQL     Server的登录帐户(例如     sa )进行连接,解决方法如下  
       
    设置允许SQL     Server身份登录     (基本上这个很有用)
        操作步骤:
        1。在企业管理器中,展开"SQL     Server组",鼠标右键点击SQL     Server服务器的名称  
        2。选择"属性"  
        3。再选择"安全性"选项卡  
        4。在"身份验证"下,选择"SQL     Server和     Windows"
        5。确定,并重新启动SQL     Server服务。
    ===============

    简单明了的五步,但是我在我的SQL server 2005怎么也找不到什么是“企业管理器”,更别谈什么“SQL sever"组了,翻了几十个网页,最终放弃了这种方式。
    究其原因,来自微软的官方解释:
    How to set up Mixed Mode security (Enterprise Manager)
    New Information - SQL Server 2000 SP3.

    Security Note  When possible, use Windows Authentication.
    To set up Mixed Mode security

    Expand a server group.
    Right-click a server, and then click Properties.
    Click the Security tab.
    Under Authentication, click SQL Server and Windows.
    Under Audit level, select the level at which user accesses to Microsoft® SQL Server™ are recorded in the SQL Server error log:

    这下明白了吧,原来是SQL server 2000 SP3的,那么多网页挂上2005的名头~~~

    继续查找,什么TCP/IP,namepipe方法全出来了,就没一个靠谱的,外围配置管理器打开remote control和broswer服务也没用,半天的试验,才发现SQL2005 managment studio里面直接可以解决:

    ·更改安全身份验证模式

    在 SQL Server Management Studio 的对象资源管理器中,右键单击服务器,再单击“属性”。
    在“安全性”页上的“服务器身份验证”下,选择新的服务器身份验证模式,再单击“确定”。
    在 SQL Server Management Studio 对话框中,单击“确定”以确认需要重新启动 SQL Server。
    从 SQL Server Management Studio 重新启动 SQL Server
    在对象资源管理器中,右键单击您的服务器,再单击“重新启动”。如果运行有 SQL Server 代理,则也必须重新启动该代理。

    ·使用 Transact-SQL 启用 sa 登录帐户 (就是在studio里面点“新建查询”)
    执行下列语句以启用 sa 密码并分配一个密码

    ALTER LOGIN sa ENABLE ;
    GO
    ALTER LOGIN sa WITH PASSWORD = 'password' ;(引号不要去掉,用自己的密码换掉password)
    GO

    ·使用 Management Studio 启用 sa 登录帐户

    在对象资源管理器中,依次展开“安全”、“登录名”,右键单击“sa”,再单击“属性”。
    在“常规”页上,您可能需要为 sa 登录名创建密码并确认该密码。
    在“状态”页的“登录”部分中,单击“启用”,然后单击“确定”。

    基本上可以搞定,我自己建了一个帐户,却没有建表格的权限,最后还是用回了sa。

    归根结底,18452错误就是当初安装SQL server的时候没有选windows和SQL双重身份登陆的选项,找到能修改的地方基本就能搞定了。
    顺便分享一下找到的18456错误,基本上就是三个原因:你用户名错了;你密码错了,你用户名和密码都错了。总结得很酷

  • 相关阅读:
    【二分匹配】【匈牙利算法即由增广路求最大匹配模板】
    【字符串入门专题1】【hdu4763】【未ac题】【扩展kmp exkmp】
    【字符串入门专题1】hdu3613 【一个悲伤的exkmp】
    【如何用XAMPP搭建Wordpress建站环境】
    面向过程要素
    当前阶段--可确定--完善版--学习结构--2016.09.10
    什么时候用工厂模式-----转载
    《EffectiveJava中文版》
    《ARM LINUX内核源码解析》
    《深入分析javaweb技术内幕》
  • 原文地址:https://www.cnblogs.com/walkerwang/p/1763864.html
Copyright © 2011-2022 走看看