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

MSSQL
mssql 两种数据插入方式
mssql @@ERROR 使用
sqlserver 数据库日志备份和恢复步骤
SQL Server日志过大会影响查询结果
SQLserver 实现分组统计查询(按月、小时分组)
SQL语句查询是否为空 =null及null
对有insert触发器表取IDENTITY值时发现的问题
SQL SERVER 查询正在实行的SQL语句
sql 随机抽取几条数据的方法 推荐
sql 多条件组合查询,并根据指定类别找出所有最小子类别的SQL语句备忘
Java 实现连接sql server 2000
SQL Server 不存在或访问被拒绝(转)
分页查询 效率最高
sqlserver 系统存储过程 中文说明
sql 多表连接查询
SQL SERVER 自增列
丢失的数据忘记备份的处理方法[图文]
SqlServer 序号列的实现方法
MsSql 存储过程分页代码 [收集多篇]
SQLServer 数据库中如何保持数据一致性

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 335 ::
收藏到网摘: 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
问题解决!