巴西世界杯惨案

【SQL Server 2022常见问题解答】SQL Server 2022安装卡在“安装程序正在准备安装...”?深度排障

摘要:在安装 SQL Server 2022 时,许多用户会遇到安装卡在“安装程序正在准备安装…”的问题,这严重影响了安装进程和使用体验。本文深入剖析了该问题可能的原因,包括后台进程阻塞、安装介质损坏、依赖组件缺失以及注册表残留等,并针对每个原因给出了详细的实操流程和相应的代码示例,帮助读者顺利解决安装卡顿问题,完成 SQL Server 2022 的安装。

文章目录

【SQL Server 2022常见问题解答】SQL Server 2022安装卡在“安装程序正在准备安装...”?深度排障

摘要

关键词

一、引言

二、卡顿原因排查

2.1 后台进程阻塞

2.1.1 强制终止 msiexec.exe 残留进程

2.1.2 关闭 Windows Update 服务

2.2 安装介质损坏

2.2.1 使用 certutil -hashfile 校验 ISO 完整性

2.3 依赖组件缺失

2.3.1 手动安装 VC++ 2015 - 2022 Redistributable(x64)

2.4 注册表残留

2.4.1 使用 Microsoft Program Install and Uninstall 工具清理旧版 SQL Server 残留

三、总结与注意事项

3.1 总结

3.2 注意事项

四、参考文献

五、附录

5.1 代码汇总

终止 msiexec.exe 进程的 PowerShell 脚本

停止 Windows Update 服务的 PowerShell 脚本

计算 ISO 文件 SHA256 哈希值的 PowerShell 脚本

下载并安装 VC++ 2015 - 2022 Redistributable(x64)的 PowerShell 脚本

启动 Microsoft Program Install and Uninstall 工具的 PowerShell 脚本

【SQL Server 2022常见问题解答】SQL Server 2022安装卡在“安装程序正在准备安装…”?深度排障

摘要

在安装 SQL Server 2022 时,许多用户会遇到安装卡在“安装程序正在准备安装…”的问题,这严重影响了安装进程和使用体验。本文深入剖析了该问题可能的原因,包括后台进程阻塞、安装介质损坏、依赖组件缺失以及注册表残留等,并针对每个原因给出了详细的实操流程和相应的代码示例,帮助读者顺利解决安装卡顿问题,完成 SQL Server 2022 的安装。

关键词

SQL Server 2022;安装卡顿;深度排障;后台进程;安装介质;依赖组件;注册表残留

一、引言

SQL Server 2022 作为一款功能强大的关系型数据库管理系统,在企业和开发者中应用广泛。然而,在安装过程中,不少用户会遭遇安装卡在“安装程序正在准备安装…”这一阶段的困扰,导致安装无法继续进行。这不仅浪费了用户的时间和精力,还可能影响项目的进度。

安装卡顿的原因多种多样,可能是后台进程的干扰、安装介质的问题、依赖组件的缺失或者注册表中残留信息的影响。本文将对这些可能的原因进行逐一排查,并提供详细的解决方案和实操步骤,帮助读者解决 SQL Server 2022 安装卡顿的问题。

二、卡顿原因排查

2.1 后台进程阻塞

2.1.1 强制终止 msiexec.exe 残留进程

msiexec.exe 是 Windows 系统中用于执行 Windows Installer 程序的进程。在安装 SQL Server 2022 时,如果该进程出现残留或异常,可能会导致安装程序被阻塞。以下是具体的排查和解决步骤:

实操流程:

打开任务管理器:可以通过按下“Ctrl + Shift + Esc”组合键快速打开任务管理器。

查找 msiexec.exe 进程:在任务管理器的“进程”选项卡中,查找名为“msiexec.exe”的进程。

终止进程:如果发现有 msiexec.exe 进程在运行,右键单击该进程,然后选择“结束任务”。如果有多个 msiexec.exe 进程,建议逐个终止并观察安装程序的状态。

代码示例: 可以使用 PowerShell 脚本来自动终止 msiexec.exe 进程,以下是示例代码:

# 查找并终止 msiexec.exe 进程

$msiexecProcesses = Get-Process -Name msiexec -ErrorAction SilentlyContinue

if ($msiexecProcesses) {

foreach ($process in $msiexecProcesses) {

try {

$process.Kill()

Write-Host "已终止 msiexec.exe 进程(ID: $($process.Id))"

} catch {

Write-Host "无法终止 msiexec.exe 进程(ID: $($process.Id)): $($_.Exception.Message)"

}

}

} else {

Write-Host "未找到 msiexec.exe 进程"

}

代码解释:

Get-Process -Name msiexec -ErrorAction SilentlyContinue:用于查找所有名为“msiexec”的进程。-ErrorAction SilentlyContinue 表示如果没有找到该进程,不会抛出错误。

foreach ($process in $msiexecProcesses):遍历找到的所有 msiexec.exe 进程。

$process.Kill():尝试终止当前进程。

Write-Host:输出相应的提示信息,告知进程是否成功终止。

2.1.2 关闭 Windows Update 服务

Windows Update 服务在后台运行时,可能会占用系统资源,导致 SQL Server 2022 安装程序卡顿。可以通过以下步骤关闭该服务:

实操流程:

打开命令提示符(以管理员身份运行):在开始菜单中搜索“命令提示符”,右键单击“命令提示符”,然后选择“以管理员身份运行”。

停止 Windows Update 服务:在命令提示符中输入以下命令并回车:

net stop wuauserv

该命令会停止 Windows Update 服务。

代码示例: 也可以使用 PowerShell 脚本来停止 Windows Update 服务,以下是示例代码:

# 停止 Windows Update 服务

try {