SQL Server 2014修改登录账号密码后登录失败如何排查解决
SQL Server 2014 登录失败排查方案
一、密码不匹配问题排查(对应报错:提供的密码与该登录账号的密码不匹配)
- 修改密码时若勾选了用户下次登录必须修改密码,首次登录需要强制更新密码,直接使用修改后的密码会登录失败,可先取消该选项测试。
- 确认输入密码的大小写、前后空格,SQL Server默认对SQL登录账号的密码区分大小写。
- 可执行以下T-SQL命令强制重置密码,临时关闭密码策略限制验证:
ALTER LOGIN [abc] WITH PASSWORD = N'设置的新密码', CHECK_EXPIRATION = OFF, CHECK_POLICY = OFF GO
测试登录正常后,可根据安全要求重新开启密码过期和策略校验。
- 优先在SQL Server本地服务器用SSMS登录测试,排除客户端缓存旧密码、网络传输异常问题。
二、数据库访问权限问题排查(对应报错:无法打开指定的数据库AMS/Budget)
- 先确认AMS、Budget两个数据库处于正常在线状态,没有出现可疑、恢复中、离线、只读等异常状态。
- 检查登录名的数据库映射权限:
- 右键登录名
abc选择【属性】,切换到【用户映射】标签 - 勾选AMS、Budget数据库前的复选框,可设置默认架构为
dbo - 在下方数据库角色成员身份中,至少勾选
public,根据业务需要可补充勾选对应权限角色,测试阶段可临时勾选db_owner验证
- 右键登录名
- 若已配置过映射仍报错,大概率是孤立用户导致,执行以下命令修复关联:
-- 修复AMS数据库的用户关联 USE AMS GO ALTER USER abc WITH LOGIN = abc GO -- 修复Budget数据库的用户关联 USE Budget GO ALTER USER abc WITH LOGIN = abc GO
- 检查登录名的默认数据库配置:在登录名属性【常规】标签中,确认默认数据库没有设置为该账号无权限、或已离线的数据库,测试阶段可临时改为
master。
三、基础配置排查
- 确认SQL Server实例的认证模式:右键服务器实例选择【属性】-【安全性】,确认选中SQL Server和Windows身份验证模式,仅Windows模式下SQL登录账号会被拒绝登录。
- 确认登录账号未被禁用:打开登录名属性【状态】标签,确认是否允许连接到数据库引擎设置为【授予】,登录状态设置为【启用】。
- 排查服务器是否配置了登录触发器,限制了该账号的登录IP、登录时间范围。
内容的提问来源于stack exchange,提问作者YelizavetaYR
相关产品推荐
相关产品推荐

