问题现象:
安装 SQL Server 2022 时进度停滞在 57%,日志报错 Error code 0x80070422
,提示 “Windows Update 服务未运行”。
快速诊断
-
检查服务状态:
# 查看 Windows Update 服务状态 Get-Service -Name wuauserv | Select-Object Status, StartType
-
正常状态:
Status = Running
,StartType = Automatic
-
-
验证依赖服务:
# 检查加密服务是否正常(影响更新验证) Get-Service -Name CryptSvc | Select-Object Status
-
排查网络限制:
-
确保可访问 Microsoft 更新服务器:
Test-NetConnection -ComputerName update.microsoft.com -Port 443
-
解决方案
步骤 1:启动 Windows Update 服务
-
命令行启动:
net start wuauserv sc config wuauserv start= auto
-
修复服务依赖项(若启动失败):
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\wuauserv" -Name "DependOnService" -Value "RpcSs" Restart-Service wuauserv -Force
步骤 2:重置 Windows Update 组件
-
PowerShell 重置脚本:
# 安装 PSWindowsUpdate 模块 Install-Module PSWindowsUpdate -Force -Scope CurrentUser # 重置组件并清除缓存 Reset-WindowsUpdate -Confirm:$false # 重启系统后重试安装 Restart-Computer
步骤 3:手动下载并集成更新
-
适用于离线环境:
-
下载 SQL Server 2022 所需的系统更新(如 KB5005260):
Invoke-WebRequest -Uri "https://catalog.s.download.windowsupdate.com/d/msdownload/update/software/updt/2021/08/windows10.0-kb5005260-x64_abcd1234.msu" -OutFile "C:\Updates\KB5005260.msu"
-
手动安装更新包:
wusa.exe C:\Updates\KB5005260.msu /quiet /norestart
-
验证与日志分析
-
确认服务状态:
(Get-Service wuauserv).Status -eq 'Running' # 应返回 True
-
检查安装日志:
-
日志路径:
C:\Program Files\Microsoft SQL Server\160\Setup Bootstrap\Log\Detail_GlobalRules.txt
-
搜索关键词
Downloading update package
确认更新流程是否恢复
-
-
测试 Windows Update 功能:
Get-WindowsUpdate -Install -AcceptAll -IgnoreReboot
扩展场景:深层系统故障修复
-
若仍报错
0x80070422
:-
修复系统文件:
sfc /scannow DISM /Online /Cleanup-Image /RestoreHealth
-
重建注册表项:
Remove-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" -Recurse -Force Restart-Service wuauserv
-
通过以上步骤,可彻底解决因 Windows Update 服务异常导致的安装卡顿问题。若环境存在企业级防火墙或 WSUS 服务器限制,需额外配置策略允许访问 *.windowsupdate.com
和 *.microsoft.com
。
关于作者:
15年互联网开发、带过10-20人的团队,多次帮助公司从0到1完成项目开发,在TX等大厂都工作过。当下为退役状态,写此篇文章属个人爱好。本人开发期间收集了很多开发课程等资料,需要可联系我