sa 密码忘了怎么重置
sa 密码丢失时的重置路线:本机管理员身份进 SSMS 用 ALTER LOGIN 改密码,无 SSMS 时用 T-SQL 命令;以及密码被锁死时的解除方法。
结论先行
sa 是引擎内置的 sysadmin 登录,密码忘了不需要「找回密码」这种找回机制——只要有机器本地管理员权限,就能以 Windows 认证连进引擎直接改密码。核心就一条 T-SQL:ALTER LOGIN sa WITH PASSWORD = '新密码';。
操作路线(本机执行)
- 登录到引擎所在机器(用本地管理员);
- 打开 SSMS 管理工具条目,连接时服务器填
.(本机默认实例),身份验证选 Windows 认证; - 新建查询:
-- 改 sa 密码
ALTER LOGIN sa WITH PASSWORD = N'新密码';
-- 若 sa 之前被锁定,置回正常状态(不带 WITH 参数即解锁)
ALTER LOGIN sa;
动手前先确认 sa 当前状态:
SELECT islocked, isdisabled FROM sys.server_principals WHERE name = 'sa';,再决定要不要加解锁语句。
- 用新密码在 SSMS 里以 SQL 认证试连一次验证。
命名实例怎么办
连接服务器名写 .\INST1(本机命名实例),Windows 认证连上后同一条 ALTER LOGIN 生效——sa 是实例级登录,每台引擎一个。
什么时候这条路走不通
- 不在引擎机器上、又没有 Windows 认证可用的域账号 → 得先想办法拿到任一 Windows 管理员权限(找系统管理员),引擎层面没有远程改 sa 密码的入口。
- 远程机器只有 RDP/SSH 进系统 → 登录系统后用上面路线,等同于本机操作。
SQL Server 2022 Developer 条目环境可全程演练;sa 被多次输错锁定时的具体恢复流程见「sa 密码被锁死后怎么恢复」相关条目,SQL Server 产品族条目 中各版本命令一致。