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

MSSQL
SQL server 随机数函数
SQLServer Top语句参数化方法
SQLServer EVENTDATA()函数来获取DDL 触发器信息
sql server 常用的几个数据类型
SQL Server 排序函数 ROW_NUMBER和RANK 用法总结
数据库Left join , Right Join, Inner Join 的相关内容,非常实用
MySql 安装时的1045错误
SQL Server 中查看SQL句子执行所用的时间
模糊查询的通用存储过程
sql 查询慢的原因分析
SQL Server 数据库优化
数据库 日期加减处理
sql 触发器使用例子
sql 刷新视图
提升SQL Server速度 整理索引碎片
恢复.mdf 数据库步骤
Sql 批量替换所有表中内容
Sql 批量查看字符所在的表及字段
SQLServer XML数据的五种基本操作
SQL Server使用Merge语句当源表数据集为空时,无法进行查询的问题

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


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