从命令行安装更新

适用于:SQL Server - 仅限 Windows

请根据您所在单位的需要测试并修改安装脚本。

安装的示例语法

更新包的名称可能会有所不同,并且可能包括语言、版本和处理器组件。 在命令提示符下应用更新,从而将 <package_name> 替换为更新包的名称:

  • 更新 SQL Server 的单个实例和所有共享组件(如 Integration Services 和管理工具):您可以通过使用 InstanceName 参数或 InstanceID 参数指定实例。 若要更新 SQL Server 的已准备实例,必须指定 InstanceID 参数。

    <package_name>.exe /qs /IAcceptSQLServerLicenseTerms /Action=Patch /InstanceName=MyInstance
    

    <package_name>.exe /qs /IAcceptSQLServerLicenseTerms /Action=Patch /InstanceID=\<Instance ID>
    

    对于 SQL Server 2022(16.x)及更高版本,请阅读 aka.ms/useterms Microsoft SQL Server 软件许可条款。

  • 安装程序可以将最新的产品更新与主安装相集成,以便可以同时安装主产品及其适用的更新。 可以准备安装数据库引擎实例,以包括产品更新:

    setup.exe /q /IAcceptSQLServerLicenseTerms /ACTION=PrepareImage /UpdateEnabled=True /UpdateSource=\<path where the update is downloaded> /INSTANCEID=\<Instance ID> /FEATURES=SQLEngine
    
  • 仅更新 SQL Server 共享组件(如 Integration Services 和管理工具):

    <package_name>.exe /qs /IAcceptSQLServerLicenseTerms /Action=Patch
    
  • 更新计算机上的所有 SQL Server 实例和所有共享组件(如 Integration Services 和管理工具):

    <package_name>.exe /qs /IAcceptSQLServerLicenseTerms /Action=Patch /AllInstances
    
  • 从 SQL Server 的单个实例和所有共享组件(如 Integration Services 和管理工具)删除更新:

    <package_name>.exe /qs /Action=RemovePatch /InstanceName=MyInstance
    
  • 仅从 SQL Server 共享组件(如 Integration Services 和管理工具)删除更新:

    <package_name>.exe /qs /Action=RemovePatch
    

    注意

    更新安装程序可以确保共享组件始终采用不低于最高级别的实例版本。

支持的参数

重要

请尽可能在运行时提供安全凭据。 如果必须将凭据存储在脚本文件中,请确保该文件的安全以防受到未经授权的访问。

开关 说明
/? 显示无人参与安装命令提示符帮助
/action=Patch or /action=RemovePatch 指定安装操作:PatchRemovePatch
/allinstances 将 SQL Server 更新应用于所有 SQL Server 实例以及所有不识别实例的 SQL Server 共享组件。
/instancename=InstanceName 1 将 SQL Server 更新应用到名为 InstanceNameSQL Server 的实例,以及所有 SQL Server 共享的、实例不知道的组件。
/InstanceID=Inst1 将 SQL Server 更新应用于 SQL Server Inst1的实例以及所有 SQL Server 共享的、实例不知道的组件。
/hideconsole 指定 SQL Server 控制台窗口隐藏或关闭。
/quiet 在无人参与模式下运行 SQL Server 更新安装程序。
/qs 仅显示进度 UI 对话。
/UpdateEnabled 指定 SQL Server 安装程序是否应发现和加入产品更新。 有效值为 TrueFalse10。 默认情况下,SQL Server 安装程序包括它找到的更新。
/IAcceptSQLServerLicenseTerms 仅当为无人参与安装指定/Q/QS参数时才是必需的。

1 不能指定此参数以将更新应用到 SQL Server 的已准备实例。 必须指定 /instanceID 参数。