当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 用户"sa"登陆失败 SQLServer 错误18456的解决方法

MSSQL
SQL Server 2005查看文件及文件组的语句
用最简单的步骤备份SQL数据库的文件到本地
在SQL Server数据库中拆分字符串函数
SQL Server数据库维度表和事实表概述
Microsoft SQL Server数据库日志截断
SQL Server 2000 SP4与数据链接池问题
SQL Server游标使用实例
SQL Server 2008:传递表值参数
微软SQL Server 2008令商业智能平民化
将SQL2000数据库升级到SQL2005
在SQL Server2005中进行错误捕捉
动态SQL语句的编程
SQL Server 2008升级报表服务器数据库
在SAN上创建SQL Server群集
SQL查询中的转义序列不对的解决办法
SQL2005一个不起眼但很实用的函数
管理SQL Server数据库和应用元数据
选择SQL Server恢复模型确保正确备份
查看SQL执行计划常用方法
SQL2008增强的集成开发环境

MSSQL 中的 用户"sa"登陆失败 SQLServer 错误18456的解决方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 278 ::
收藏到网摘: n/a

sqlserver下用sa登录提示18456错误的解决方法。 用windows账号还是可以登录的。
查找问题的过程:
第一步: 启动所有与SQL有关的服务,问题依旧;
第二步: 查看windows防火墙,被默认启动了,不启动选择项被Disabled。两个提示“由于安全考虑,某些设置由组策略控制”“Windows防火墙正在使用您的域设置”,先用gpedit.msc打组策略编辑器,机算机配置--管理模板--网络--网络连接--Windows防火墙--标准配置文件,查看右边各选项属性,都是未配置状态,问题不在这里。
另外一个提示中提到域设置,域设置不可能禁用SQL Server,并且我查看本地开放端口(netstart -an),25,1433,1434都是开发状态。
晕,会不会是密码错误?
第三步:我用windows账号登录,连接成功后,, 选择"属性",
右键实例,在"属性"窗口中, 转到"Security"(安全性)项, 查看"服务器身份验证"中设置确为"SQL Server和Windows身份验证模式",
然后执行下面的语句启用sa用户, 同时更改sa的密码
EXEC sp_password 'sa',null,'sa'
ALTER LOGIN sa ENABLE
执行出错:
消息 15116,级别 16,状态 1,第 1 行
密码有效性验证失败。该密码太短,不符合 Windows 策略要求。
哈哈,问题找到。
本地设置可能被域设置覆盖。而域设置中指定了安全策略,密码必须有一定的复杂性。重新更改sa密码,
EXEC sp_password 'sa','Uiop_098Mn','sa'
ALTER LOGIN sa ENABLE
问题解决!