閱讀英文

共用方式為


在 Server Core 環境中設定 SQL Server

適用於:SQL Server - 僅限 Windows

此文章涵蓋在 Server Core 安裝上設定 SQL Server 的詳細資料。

在 Windows Server 上設定及管理 Server Core

本節提供有助於設定及管理 Server Core 安裝的文章參考。

並非所有 SQL Server 功能都在 Server Core 模式中受到支援。 部分功能可以安裝在用戶端電腦或是未執行 Server Core 的另一部伺服器上,並且連接到 Server Core 上安裝的 Database Engine 服務。

如需遠端設定及管理 Server Core 安裝的詳細資訊,請參閱以下文章:

安裝 SQL Server 更新

此節提供在 Windows Server Core 機器上安裝 SQL Server 更新的相關資訊。 建議客戶及時評估並安裝最新的 SQL Server 更新,以確保系統會保持最新狀態且具有最新的安全性更新。 如需在 Windows Server Core 機器上安裝 SQL Server 的詳細資訊,請參閱在 Server Core 上安裝 SQL Server

以下是安裝產品更新的兩種狀況:

在進行新安裝時安裝 SQL Server 的更新

SQL Server 安裝程式只支援 Server Core 作業系統上的命令提示字元安裝。 如需詳細資訊,請參閱 從命令提示字元安裝 SQL Server

SQL Server 安裝程式整合了最新產品更新與主要產品安裝,因此可同時安裝主要產品及其適用的更新。

當安裝程式找到最新版本的適用更新後,會使用目前的 SQL Server 安裝流程進行下載與整合。 產品更新可以引入累計更新、服務包,或服務包加上累計更新。

指定 UpdateEnabled 和 UpdateSource 參數在主要產品安裝中包含最新的產品更新。 請參考下列範例,以在 SQL Server 安裝期間啟用產品更新:

Setup.exe /qs /ACTION=Install /FEATURES=SQLEngine /INSTANCENAME=MSSQLSERVER /SQLSVCACCOUNT="<DomainName\UserName>" /SQLSVCPASSWORD="<StrongPassword>" /SQLSYSADMINACCOUNTS="<DomainName\UserName>" /AGTSVCACCOUNT="NT AUTHORITY\Network Service" /UpdateEnabled=True /UpdateSource="<SourcePath>" /IACCEPTSQLSERVERLICENSETERMS  

從 SQL Server 2022 (16.x) 開始,請閱讀 Microsoft SQL Server 軟體授權條款,網址為aka.ms/useterms

安裝 SQL Server 後的更新

在安裝的 SQL Server 執行個體上,建議您套用最新的安全性更新和重大更新,包括一般發行版本 (GDR) 和 Service Pack (SP)。 您應該根據需求並逐案採用個別的累計更新和安全性更新。 請評估更新,如有需要,則套用它。

在命令提示字元中套用更新,並以您的更新套件名稱取代 <package_name>:

  • 更新 SQL Server 的單一執行個體和所有共用元件。 您可以使用 InstanceName 參數或 InstanceID 參數指定執行個體。

    <package_name>.exe /qs /IAcceptSQLServerLicenseTerms /Action=Patch /InstanceName=MyInstance  
    
  • 僅更新 SQL Server 共用元件:

    <package_name>.exe /qs /IAcceptSQLServerLicenseTerms /Action=Patch  
    
  • 更新電腦上的所有 SQL Server 執行個體和所有共用元件:

    <package_name>.exe /qs /IAcceptSQLServerLicenseTerms /Action=Patch /AllInstances  
    

啟動/停止 SQL Server 服務

Sqlservr 應用程式可從命令提示字元啟動、停止、暫停和繼續執行 SQL Server 的執行個體。

您也可以使用 Net 服務來啟動及停止 SQL Server 服務。

啟用 Always On 可用性群組

啟用 Always On 可用性群組,是伺服器執行個體將可用性群組用來作為高可用性和災害復原解決方案的必要條件。 如需管理 Always On 可用性群組的詳細資訊,請參閱啟用和停用 Always On 可用性群組 (SQL Server)

遠端使用 SQL Server 組態管理員

這些步驟要在執行用戶端版的 Windows 電腦或已安裝伺服器圖形化介面的 Windows Server 上執行。

  1. 開啟 [電腦管理]。 若要開啟 [電腦管理],請選取 [開始]、輸入 ,然後選取 [確定]。

  2. 在主控台樹狀目錄中,使用滑鼠右鍵按一下 [電腦管理],然後選取 [連線到另一台電腦]。

  3. 在 [選取電腦] 對話方塊中,輸入要管理的 Server Core 機器名稱,或選取 [瀏覽] 來找到它,然後選取 [確定]。

  4. 在主控台樹狀目錄中,於 Server Core 機器的 [電腦管理] 底下,選取 [服務與應用程式]。

  5. 按兩下 SQL Server 組態管理員

  6. 在 [SQL Server 組態管理員] 中,選取 [SQL Server 服務]、使用滑鼠右鍵按一下 [SQL Server (執行個體名稱)],其中 執行個體名稱< 是要啟用 Always On 可用性群組的本機伺服器執行個體名稱,然後選取 [屬性]。

  7. 選取 [Always On 高可用性] 索引標籤。

  8. 確認 [Windows 容錯移轉叢集名稱] 欄位包含本機容錯移轉叢集節點的名稱。 如果此欄位空白,表示此伺服器執行個體目前不支援 Always On 可用性群組。 有可能本機電腦不是叢集節點、WSFC 叢集已經關閉,或者此 SQL Server 版本不支援 Always On 可用性群組。

  9. 選取 [啟用 Always On 可用性群組] 核取方塊,然後選取 [確定]。

  10. SQL Server 組態管理員會儲存您的變更。 然後您必須手動重新啟動 SQL Server 服務。 這讓您可以選擇最適合您業務需求的重新啟動時間。 當 SQL Server 服務重新啟動時,將啟用可用性群組,且 IsHadrEnabled 伺服器屬性將設定為 1。

注意

  • 您必須擁有適當的使用者權限,或者必須已被委派目標電腦的適當權限,才能連接該部電腦。
  • 您要管理的電腦名稱會出現在主控台樹狀目錄中 [電腦管理] 旁邊的括號內。

使用 PowerShell Cmdlet 啟用 Always On 可用性群組

PowerShell Cmdlet Enable-SqlAlwaysOn 是用來在 SQL Server 執行個體上啟用 Always On 可用性群組。 如果您在 SQL Server 服務執行時啟用 Always On 可用性群組功能,就必須重新啟動資料庫引擎服務,才能完成變更。 除非您指定 -Force 參數,否則,此 Cmdlet 會提示您是否想要重新啟動服務;如果取消,就不會進行任何作業。

您必須擁有系統管理員權限,才能執行這個 Cmdlet。

您可以使用下列其中一個語法,針對 SQL Server 執行個體啟用 Always On 可用性群組:

PowerShell
Enable-SqlAlwaysOn [-Path <string>] [-Credential <PSCredential>] [-Force] [-NoServiceRestart] [-Confirm] [-WhatIf] [<Common Parameters>]  
PowerShell
Enable-SqlAlwaysOn -InputObject <Server> [-Credential <PSCredential>] [-Force] [-NoServiceRestart] [-Confirm] [-WhatIf] [<Common Parameters>]  
PowerShell
Enable-SqlAlwaysOn [-ServerInstance <string>] [-Credential <PSCredential>] [-Force] [-NoServiceRestart] [-Confirm] [-WhatIf] [<Common Parameters>]  

下列 PowerShell 命令會在 SQL Server 的執行個體 (機器\執行個體) 上啟用 Always On 可用性群組:

PowerShell
Enable-SqlAlwaysOn -Path SQLSERVER:\SQL\Machine\Instance  

設定在 Server Core 上執行之 SQL Server 的遠端存取

執行以下描述的動作,以設定在 Windows Server Core 上執行之 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 服務

根據預設,Browser 服務是停用的。 如果在 Server Core 上執行的 SQL Server 執行個體已停用它,請從命令提示字元執行下列命令以啟用它:

sc config SQLBROWSER start= auto

啟用後,請從命令提示字元執行下列命令,以啟動服務:

net start SQLBROWSER

在 Windows 防火牆中建立例外狀況

若要在 Windows 防火牆中建立 SQL Server 存取的例外狀況,請遵循設定 Windows 防火牆以允許 SQL Server 存取中指定的步驟。

在 SQL Server 的執行個體上啟用 TCP/IP

您可以為 Server Core 上的 SQL Server 執行個體,透過 Windows PowerShell 啟用 TCP/IP 通訊協定。 請遵循下列步驟:

  1. 在執行 Windows Server Core 的電腦上,啟動 [工作管理員]。

  2. 在 [應用程式] 索引標籤上,選取 [新增工作]。

  3. 在 [建立新工作] 對話方塊的 [開啟] 欄位中,輸入 sqlps.exe,然後選取 [確定]。 隨即開啟 [Microsoft SQL Server Powershell] 視窗。

  4. 在 [Microsoft SQL Server Powershell] 視窗中,執行下列指令碼以啟用 TCP/IP 通訊協定:

PowerShell
$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  

SQL Server Profiler

在遠端電腦上啟動 SQL Server Profiler,且從 [檔案] 功能表中選取 [新增追蹤] 時,應用程式會顯示 [連接到伺服器] 對話方塊,供您指定要連線的 SQL Server 執行個體 (位於 Server Core 機器上)。 如需詳細資訊,請參閱 啟動 SQL Server Profiler

如需執行 SQL Server Profiler 所需權限的詳細資訊,請參閱執行 SQL Server Profiler 所需的權限

如需 SQL Server Profiler 的其他詳細資料,請參閱 SQL Server Profiler

SQL Server 稽核

您可以遠端使用 SQL Server Management Studio 或 Transact-SQL 來定義稽核。 在建立及啟用稽核之後,目標將會收到記錄。 如需建立和管理 SQL Server 稽核的詳細資訊,請參閱 SQL Server 稽核 (資料庫引擎)

命令列工具

您可以使用下列命令提示字元公用程式,讓您可在 Server Core 機器上編寫 SQL Server 作業的指令碼。 下表針對 Server Core 列出 SQL Server 隨附的命令提示字元公用程式清單:

公用程式 說明 安裝位置
bcp 公用程式 用來在 Microsoft SQL Server 執行個體和使用者指定格式的資料檔案之間複製資料。 < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
dtexec 公用程式 用來設定和執行 Integration Services 套件。 < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\DTS\Binn
dtutil 公用程式 用來管理 SSIS 封裝。 < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\DTS\Binn
osql 公用程式 可讓您在命令提示字元中輸入 Transact-SQL 陳述式、系統程序和指令碼檔案。 < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
sqlagent90 應用程式 用來從命令提示字元啟動 SQL Server Agent。 <磁碟>:\Program Files\Microsoft SQL Server\<instance_name>\MSSQL\Binn
sqlcmd 公用程式 可讓您在命令提示字元中輸入 Transact-SQL 陳述式、系統程序和指令碼檔案。 < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
SQLdiag 公用程式 用來收集可供 Microsoft 客戶服務與支援部門使用的診斷資訊。 < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
sqlmaint 公用程式 用來執行舊版 SQL Server 中所建立的資料庫維護計畫。 <磁碟機>:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Binn
sqlps 公用程式 用來執行 PowerShell 命令和指令碼。 載入並註冊 SQL Server PowerShell 提供者和 Cmdlet。 < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\Tools\Binn
sqlservr 應用程式 用來在命令提示字元下啟動和停止資料庫引擎實例,以進行疑難排解。 <磁碟機>:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Binn

使用疑難排解工具

您可以使用 SQLdiag 公用程式,從 SQL Server 和其他類型的伺服器收集記錄與資料檔案,並用它來監視您的伺服器一段時間,或針對伺服器的特定問題進行疑難排解。 SQLdiag 用於加速和簡化 Microsoft 客戶支援服務部門對診斷資訊的收集過程。

您可以在 Server Core 上的系統管理員命令提示字元中,使用下列文章中指定的語法來啟動此公用程式:SQLdiag 公用程式

另請參閱

在 Server Core 上安裝 SQL Server
安裝的使用說明文章