借三年半以来第一次彻底重装系统的契机,时隔很久写一篇软件安装文章。SQL Server 在我看来是 Windows 系统最难安装的软件,几乎没有之一。此前的系统是通过一次非彻底的重装系统成功安装了 SQL Server 2019,然而这次在系统完全纯净的情况下却出现了经典错误之:
安装 SQL Server 数据库引擎服务实例功能 时出错
服务没有及时响应启动或控制请求。
错误代码: 0x80004005
英文错误名称为:The service did not respond to the start or control request in a timely fashion
首先,对待 SQL Server 应取的只有两种方式:要么通过其安装包安装软件或组件功能,要么通过控制面板使用其标准程序卸载(或更改) SQL Server,要么重装系统;否则几乎不可能仅仅通过清理 error-free 地安装和使用 SQL Server,参考前作:
SQL Server 2014完全卸载与SQL Server 2019安装全记录_Ayka的博客-CSDN博客_彻底删除sqlserver2019在服务中停止所有SQL Server相关服务。打开Visual Studio Installer,取消勾选SQL Server Express 2016 LocalDB、SQL ADAL运行时、SQL Server Data Tools、SQL Server ODBC Driver、SQL Server 命令行实用工具、SQL Server 支持的数据源、SQL Server 的 CLR 数据...https://blog.csdn.net/yihuajack/article/details/105316288第二,本文的前提也同样是【系统是清洁的】,任何会安装 SQL Server LocalDB 的其他软件(例如 Visual Studio 的主要组件)都很有可能影响 SQL Server 的安装,因此 SQL Server 的全新安装应放在这些软件之前,如果系统中有先前残留的 SQL Server(Express 或 LocalDB)的安装内容(文件、服务、注册表等),不保证本文的解决方法有效。此外,避免在 SQL Server 的安装错误未解决的情况下安装 SSMS(SQL Server Management Studio),虽然本次安装过程中未出现问题,但网上其他经验有涉及 SSMS 影响 SQL Server 成功安装的可能性。
第三,再次提示:当遇到该问题时,切勿试图以非标准方式(控制面板->卸载程序->Microsoft SQL Server 2019 (64 位)->卸载/更改(U))进行 SQL Server 安装内容(文件、服务、注册表等)进行删除等操作,而且不要通过控制面板->卸载程序卸载或更改其他 SQL Server 相关组件(Microsoft SQL Server 2019 Setup (English)、Microsoft SQL Server 2019 T-SQL 语言服务等),而且在以标准方式卸载 SQL Server 时不要将 SQL Server 的共享功能(客户端工具 SDK、客户端工具连接、SQL 客户端连接 SDK 等)卸载,而应只卸载实例(的所有功能或仅仅安装失败的功能)。
第四,参考前作及本次对 Cannot install SQL Server 2019 - Microsoft Q&A、Error installing SQL Server 2019 : the service did not respond to the start or control request in a timely fashion - Microsoft Q&A 等文章的试错,在安装失败的情况下试图通过 SQL Server 2019 配置管理器做出任何修改都是无效的,将 D:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\Binn\Templates 下的 master.mdf 和 mastlog.ldf 替换掉 D:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\DATA 中的两个对应文件也是无效的。
第五,参考 Getting Error Installing SQL Server 2019 in Windows 11 - Stack Overflow 及 SQL Server 2019: Hardware & software requirements - SQL Server | Microsoft Docs,截止目前,SQL Server 2019 Enterprise 是不支持 Windows 11 的各版本的,我本次安装的正是 SQL Server 2019 Developer 版本,我的系统是 Windows 11 专业版。
第六,参考 Cannot install Sql Server 2019 on Windows Server 2022 - Database Administrators Stack Exchange,通过命令提示符执行
fsutil fsinfo sectorinfo C:
依次检查各磁盘,确认安装磁盘的 PhysicalBytesPerSectorForAtomicity 值不大于 4096。我的 SSD 磁盘该项的值均为 512。
经过多次试错,倒数第二次前做出了以下改变:
以上三条的重要/优先程度是 3>2>1。倒数第三次试错成功安装了 Data Quality Services、全文和语义提取搜索、数据库引擎服务和 SQL Server 复制,但 Analysis Services 仍然报了相同的错误,倒数第二次试错已经成功安装全部选定实例组件。最后一次试错确认了拥有管理员权限的非 Administrators 同样可以作为 SQL Server 管理员和 Analysis Services 管理员(本机上有本地账户 Administrator 和拥有管理员权限的 Microsoft 账户),为了保险起见避免 Windows 更新等其他问题,所以最后一次安装时同时添加了两个账户作为管理员,没有错误。
总结而言,解决该错误的具体操作方法是: