在 Server Core 上安装 SQL Server
适用于:SQL Server - 仅限 Windows
可以在 Server Core 安装上安装 SQL Server。
Server Core 安装选项提供了用于运行特定服务器角色的最小环境。 这将有助于减少维护和管理需求以及针对这些服务器角色的攻击面。
有关当前支持的操作系统列表,请参阅安装 SQL Server 的硬件和软件要求。
先决条件
要求 | 如何安装 |
---|---|
.NET Framework 4.6.1 | 对于除 SQL Server Express 之外的所有版本的 SQL Server安装程序均要求 .NET Framework 4.6.1 Server Core 配置文件。 如果尚未安装此配置文件,SQL Server 安装程序将自动安装。 安装需要重启。 可在运行安装程序前安装 .NET Framework,避免重启。 |
Windows Installer 4.5 | 随 Server Core 安装一同提供。 |
Windows PowerShell | 随 Server Core 安装一同提供。 |
Java 运行时 | 为了使用 PolyBase,需要安装相应的 Java 运行时。 有关详细信息,请参阅 PolyBase 安装。 |
受支持的功能
使用下表可以查找 Server Core 安装上的 SQL Server 所支持的功能。
功能 | 支持 | 其他信息 |
---|---|---|
数据库引擎 服务 | 是 | |
SQL Server Replication | 是 | |
全文搜索 | 是 | |
Analysis Services | 是 | |
R Services(数据库内) | 是 | |
Reporting Services | 否 | |
SQL Server Data Tools (SSDT) | 否 | |
客户端工具连接 | 是 | |
Integration Services 服务器 | 是 | |
客户端工具向后兼容性 | 否 | |
客户端工具 SDK | 否 | |
SQL Server 联机丛书 | 否 | |
管理工具 - 基本 | 仅限远程 | 不支持在 Server Core 上安装这些功能。 可以在 Server Core 之外的服务器上安装这些组件,然后将这些组件连接到 Server Core 上安装的数据库引擎服务。 |
管理工具 - 完整 | 仅限远程 | 不支持在 Server Core 上安装这些功能。 可以在 Server Core 之外的服务器上安装这些组件,然后将这些组件连接到 Server Core 上安装的数据库引擎服务。 |
Distributed Replay 控制器 | 否 | |
Distributed Replay 客户端 | 仅限远程 | 不支持在 Server Core 上安装这些功能。 可以在 Server Core 之外的服务器上安装这些组件,然后将这些组件连接到 Server Core 上安装的 数据库引擎 服务。 |
SQL 客户端连接 SDK | 是 | |
Microsoft Sync Framework | 是 | SQL Server 安装程序包中不包含 Microsoft Sync Framework。 可以从该 Microsoft 下载中心页下载 Sync Framework 的适当版本,并在运行 Server Core 的计算机上进行安装。 |
Master Data Services | 否 | |
数据库引擎服务 | 否 |
支持的方案
下表显示在 Server Core 上安装 SQL Server 时支持的方案矩阵。
安装 | 有效目标 |
---|---|
SQL Server 版本 | 所有 SQL Server 的 64 位版本 |
SQL Server 语言 | 所有语言 |
操作系统语言/区域设置(组合)上的SQL Server 语言 | JPN(日语)Windows 上的 ENG SQL Server GER(德语)Windows 上的 ENG SQL Server CHS(中文 - 中国)Windows 上的 ENG SQL Server ARA(阿拉伯语 (SA))Windows 上的 ENG SQL Server THA(泰语)Windows 上的 ENG SQL Server TRK(土耳其语)Windows 上的 ENG SQL Server pt-PT(葡萄牙语 - 葡萄牙)Windows 上的 ENG SQL Server ENG(英语)Windows 上的 ENG SQL Server |
Windows 版本 | Windows Server 2022 Datacenter Windows Server 2022 Datacenter:Azure 版本 Windows Server 2022 Standard Windows Server 2019 Datacenter Windows Server 2019 Standard Windows Server 2016 Datacenter Windows Server 2016 标准版 |
升级
在 Server Core 安装上,支持从 SQL Server 2014 (12.x) 升级到 SQL Server 2016 (13.x) 。
安装
SQL Server 不支持在 Server Core 操作系统上使用安装向导进行安装。 在服务器核心上进行安装时,SQL Server 安装程序支持完全静默模式(通过使用 /Q
参数)或简单静默模式(通过使用 /QS
参数)。 有关详细信息,请参阅 从命令提示符安装 SQL Server。
无论使用哪种安装方法,您都需要作为个人或代表实体确认接受软件许可条款,除非您对于软件的使用受单独的协议(如 Microsoft 批量许可协议或与 ISV 或 OEM 之间的第三方协议)管辖。
将在安装程序用户界面中显示许可条款,供您审核审阅和接受。 无人参与的安装(使用 /Q
或 /QS
参数)必须包含 /IACCEPTSQLSERVERLICENSETERMS
参数。 可以通过 Microsoft Software License Terms(Microsoft 软件许可条款)单独查看许可条款。
从 SQL Server 2022 (16.x) 开始,请阅读 Microsoft SQL Server 软件许可证条款,网址为 aka.ms/useterms。
注意
根据您接收软件的方式(例如,通过 Microsoft 批量许可),您对软件的使用可能受其他条款和条件约束。
要安装特定功能,请使用 /FEATURES
参数并指定父功能或功能值。 有关功能参数及其用法的详细信息,请参阅以下部分。
功能参数
功能参数 | 说明 |
---|---|
SQLENGINE | 仅安装 数据库引擎。 |
复制 | 将复制组件与 数据库引擎一起安装。 |
FULLTEXT | 将全文组件与 数据库引擎一起安装。 |
AS | 安装所有的 Analysis Services 组件。 |
IS | 安装所有的 Integration Services 组件。 |
CONN | 安装连接组件。 |
ADVANCEDANALYTICS | 安装 R Services 需要数据库引擎。 无人参与安装需要 /IACCEPTROPENLICENSETERMS 参数。 |
请参阅以下的功能参数用法示例:
参数和值 | 说明 |
---|---|
/FEATURES=SQLEngine |
仅安装 数据库引擎。 |
/FEATURES=SQLEngine,FullText |
安装 数据库引擎 和全文组件。 |
/FEATURES=SQLEngine,Conn |
安装 数据库引擎 和连接组件。 |
/FEATURES=SQLEngine,AS,IS,Conn |
安装 数据库引擎、 Analysis Services、 Integration Services和连接组件。 |
/FEATURES=SQLENGINE,ADVANCEDANALYTICS /IACCEPTROPENLICENSETERMS |
安装数据库引擎和 R Services(数据库内)。 |
有关 Windows 上 SQL Server 各版本支持的功能列表,请参阅:
- SQL Server 2022 各个版本及其支持的功能
- SQL Server 2019 各个版本及其支持的功能
- 版本和 SQL Server 2017 支持的功能
- 版本和 SQL Server 2016 支持的功能
安装选项
在 Server Core 操作系统上安装 SQL Server 时,安装程序支持以下安装选项:
从命令行安装
要使用命令提示符安装选项安装特定功能,请使用
/FEATURES
参数并指定父功能或功能值。 以下是在命令行中使用参数的示例:setup.exe /qs /ACTION=Install /FEATURES=SQLEngine,Replication /INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="<StrongPassword>" /SQLSYSADMINACCOUNTS="<DomainName\UserName>" /AGTSVCACCOUNT="NT AUTHORITY\Network Service" /TCPENABLED=1 /IACCEPTSQLSERVERLICENSETERMS
使用配置文件安装
安装程序仅支持通过命令提示符使用配置文件。 配置文件是具有基本参数结构(名称/值对)和说明性注释的文本文件。 在命令提示符处指定的配置文件应该具有
.ini
文件扩展名。 请看ConfigurationFile.ini
的以下示例:安装数据库引擎:
以下示例说明如何安装包含 SQL Server 数据库引擎的新的独立实例:
; SQL Server Configuration File [OPTIONS] ; Specifies a Setup work flow, like INSTALL, UNINSTALL, or UPGRADE. This is a required parameter. ACTION="Install" ; Specifies features to install, uninstall, or upgrade. The lists of features include SQLEngine, FullText, Replication, AS, IS, and Conn. FEATURES=SQLENGINE ; Specify a default or named instance. MSSQLSERVER is the default instance for non-Express editions and SQLExpress for Express editions. This parameter is required when installing the ssNoVersion Database Engine, and Analysis Services (AS). INSTANCENAME="MSSQLSERVER" ; Specify the Instance ID for the ssNoVersion features you have specified. ssNoVersion directory structure, registry structure, and service names will incorporate the instance ID of the ssNoVersion instance. INSTANCEID="MSSQLSERVER" ; Account for ssNoVersion service: Domain\User or system account. SQLSVCACCOUNT="NT Service\MSSQLSERVER" ; Windows account(s) to provision as ssNoVersion system administrators. SQLSYSADMINACCOUNTS="\<DomainName\UserName>" ; Accept the License agreement to continue with Installation IAcceptSQLServerLicenseTerms="True"
安装连接组件。 以下示例说明如何安装连接组件:
; SQL Server Configuration File [OPTIONS] ; Specifies a Setup work flow, like INSTALL, UNINSTALL, or UPGRADE. This is a required parameter. ACTION="Install" ; Specifies features to install, uninstall, or upgrade. The lists of features include SQLEngine, FullText, Replication, AS, IS, and Conn. FEATURES=Conn ; Specifies acceptance of License Terms IAcceptSQLServerLicenseTerms="True
安装所有支持的功能:
以下示例说明如何在 Server Core 上安装所有支持的 SQL Server 功能:
; SQL Server Configuration File [OPTIONS] ; Specifies a Setup work flow, like INSTALL, UNINSTALL, or UPGRADE. This is a required parameter. ACTION="Install" ; Specifies features to install, uninstall, or upgrade. The lists of features include SQLEngine, FullText, Replication, AS, IS, and Conn. FEATURES=SQLENGINE,FullText,Replication,AS,IS,Conn ; Specify a default or named instance. MSSQLSERVER is the default instance for non-Express editions and SQLExpress for Express editions. This parameter is required when installing the ssNoVersion Database Engine (SQL), or Analysis Services (AS). INSTANCENAME="MSSQLSERVER" ; Specify the Instance ID for the ssNoVersion features you have specified. ssNoVersion directory structure, registry structure, and service names will incorporate the instance ID of the ssNoVersion instance. INSTANCEID="MSSQLSERVER" ; Account for ssNoVersion service: Domain\User or system account. SQLSVCACCOUNT="NT Service\MSSQLSERVER" ; Windows account(s) to provision as ssNoVersion system administrators. SQLSYSADMINACCOUNTS="\<DomainName\UserName>" ; The name of the account that the Analysis Services service runs under. ASSVCACCOUNT= "NT Service\MSSQLServerOLAPService" ; Specifies the list of administrator accounts that need to be provisioned. ASSYSADMINACCOUNTS="\<DomainName\UserName>" ; Specifies the server mode of the Analysis Services instance. Valid values are MULTIDIMENSIONAL, POWERPIVOT or TABULAR. ASSERVERMODE is case-sensitive. All values must be expressed in upper case. ASSERVERMODE="MULTIDIMENSIONAL" ; Optional value, which specifies the state of the TCP protocol for the ssNoVersion service. Supported values are: 0 to disable the TCP protocol, and 1 to enable the TCP protocol. TCPENABLED=1 ;Specifies acceptance of License Terms IAcceptSQLServerLicenseTerms="True"
下面的示例介绍了如何使用自定义或默认配置文件启动安装程序:
使用自定义配置文件启动安装程序:
在命令提示符处指定配置文件:
setup.exe /QS /ConfigurationFile=MyConfigurationFile.INI
在命令提示符处而不是配置文件中指定密码:
setup.exe /QS /SQLSVCPASSWORD="************" /ASSVCPASSWORD="************" /ConfigurationFile=MyConfigurationFile.INI
使用
DefaultSetup.ini
启动安装程序:如果 SQL Server 源媒体的根级别的 \x86 和 \x64 文件夹中包含
DefaultSetup.ini
文件,请打开该DefaultSetup.ini
文件,然后将 Features 参数添加到该文件中。如果
DefaultSetup.ini
文件不存在,您可以创建该文件并将其复制到 SQL Server 源介质根级别的 \x86 和 \x64 文件夹中。
配置在 Server Core 上的 SQL Server 的远程访问
执行下述操作以配置在 SQL Server 服务器核心上运行的实例的远程访问。
启用 SQL Server实例上的远程连接
若要启用远程连接,请在本地使用 SQLCMD.exe 并对 Server Core 实例执行以下语句:
EXEC sys.sp_configure N'remote access', N'1';
GO
RECONFIGURE WITH OVERRIDE;
GO
启用并启动 SQL Server browser service
默认情况下,Browser 服务是禁用的。 如果在 Server Core 上运行的 SQL Server 实例禁用了该服务,请从命令提示符运行以下命令来启用它:
Set-Service sqlbrowser -StartupType Auto
在启用该服务后,请从命令提示符运行以下命令来启动该服务:
Start-Service sqlbrowser
在 Windows 防火墙中创建例外
若要在 Windows 防火墙中创建 SQL Server 访问的例外,请执行 配置 Windows 防火墙以允许 SQL Server 访问中指定的步骤。
在实例 SQL Server上启用 TCP/IP
可以在 Server Core 上通过 Windows PowerShell 为 SQL Server 实例启用 TCP/IP 协议。 执行以下步骤:
在 PowerShell 中:
Import-Module SQLPS
。在 Microsoft SQL Server Powershell 窗口中,运行以下脚本以启用 TCP/IP 协议:
$smo = 'Microsoft.SqlServer.Management.Smo.' $wmi = new-object ($smo + 'Wmi.ManagedComputer') # Enable the TCP protocol on the default instance. If the instance is named, replace MSSQLSERVER with the instance name in the following line. $uri = "ManagedComputer[@Name='" + (get-item env:\computername).Value + "']/ServerInstance[@Name='MSSQLSERVER']/ServerProtocol[@Name='Tcp']" $Tcp = $wmi.GetSmoObject($uri) $Tcp.IsEnabled = $true $Tcp.Alter() $Tcp
卸载
登录到运行 Server Core 的计算机后,将拥有一个带有管理员命令提示符的受限制桌面环境。 可以使用此命令提示符启动卸载 SQL Server 的操作。 要卸载 SQL Server实例,请从命令提示符以完全静默模式(通过使用 /Q
参数)或简单静默模式(通过使用 /QS
参数)启动卸载。 /QS
参数将通过用户界面显示进度,但是不接受任何输入。 /Q
在没有任何用户界面的情况下以静默模式运行。
卸载 SQL Server的现有实例:
setup.exe /Q /Action=Uninstall /FEATURES=SQLEngine,AS,IS /INSTANCENAME=MSSQLSERVER
若要删除命名实例,请指定实例名,而不是前面示例中的 MSSQLSERVER
。
启动新命令提示符
如果您无意中关闭了命令提示符,可以使用以下步骤启动一个新的命令提示符:
- 按 Ctrl+Shift+Esc 以显示任务管理器。
- 在“应用程序”选项卡上,选择“新建任务”。
- 在“创建新任务”对话框中的“打开”字段中键入“cmd”,然后选择“确定”。