You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SQL Server 2012中查看sa密码以验证密码修改是否生效

验证SQL Server sa密码修改生效的安全方法

SQL Server所有登录账户的密码均以哈希加密形式存储在系统表中,无官方支持的合规方式可解密获取明文,以下方法均无需获取明文即可验证密码正确性,完全符合安全要求。

SQL Server不存在可安全查询sa明文密码的方法,你可以通过以下方式直接验证密码修改是否生效,从而定位脚本报错原因:

方法1:SSMS图形化验证

  • 打开SSMS,在登录窗口选择「SQL Server身份验证」
  • 登录名输入sa,密码输入你修改后的指定值,点击连接
  • 可以成功登录则说明密码修改已生效;如果提示18456错误且状态为8,可确认密码不匹配。

方法2:sqlcmd命令行验证

  • 打开管理员身份运行的命令提示符或PowerShell,执行以下命令(替换占位符为实际值):
    sqlcmd -S 你的SQL实例名 -U sa -P "你设置的sa密码"
  • 执行后如果进入1>开头的sqlcmd交互界面,说明密码验证通过;如果提示「用户 'sa' 登录失败」,说明密码未设置成功。

方法3:PowerShell脚本验证

该方法和你的脚本运行环境完全一致,可直接复现校验场景:

  • 在管理员身份运行的PowerShell中执行以下代码,替换对应参数:
$serverInstance = "你的SQL实例名"
$inputSaPwd = ConvertTo-SecureString "你设置的sa密码" -AsPlainText -Force
$saCred = New-Object System.Management.Automation.PSCredential("sa", $inputSaPwd)
try {
    Invoke-SqlCmd -ServerInstance $serverInstance -Credential $saCred -Query "SELECT name FROM sys.databases WHERE name = 'master'" -ErrorAction Stop
    Write-Host "sa密码验证通过,修改已生效"
}
catch {
    Write-Host "sa密码验证失败:" $_.Exception.Message
}
  • 如果执行后返回master数据库的查询结果,说明sa密码修改无问题,你可以排查脚本的其他配置错误。

非密码类报错排查项

如果以上验证均通过,可重点检查以下配置:

  • 确认SQL Server已开启「SQL Server和Windows混合身份验证模式」
  • 确认sa账户未被禁用、未触发登录锁定
  • 确认原PowerShell脚本中sa密码的特殊字符已正确转义、无多余前后空格

内容的提问来源于stack exchange,提问作者user2284341

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 14:39:03