共用方式為


SQL Server 預設和具名實例的檔案位置

只適用於SQL Server - 僅限 Windows。

本文說明 SQL Server 已安裝元件的檔案位置。

概觀

SQL Server 的安裝由一個或多個不同的執行個體所組成。 不論是預設執行個體或具名執行個體,都會有自己的一組程式和資料檔案,以及在電腦上所有 SQL Server 執行個體之間共用的一組共同檔案。

對於包含資料庫引擎、Analysis Services和 Reporting Services 的 SQL Server 執行個體來說,每個元件都有一組完整的資料和可執行檔,以及所有元件共用的共同檔案。

為了隔離開每一個元件的安裝位置,會為給定的 SQL Server 執行個體內的每一個元件,產生唯一的執行個體識別碼。

局限性

程式檔和數據檔無法安裝在卸載式磁碟驅動器上、不能安裝在使用壓縮的檔系統上、無法安裝到系統檔案所在的目錄,也不能安裝在故障轉移叢集實例上的共用磁碟驅動器上。

您可能需要設定掃描軟體,例如防毒和反間諜軟體應用程式,以排除 SQL Server 資料夾和檔案類型。 如需詳細資訊,請檢閱此支援文章: 設定防病毒軟體以使用 SQL Server

系統資料庫 (mastermodelmsdb、 和 ), 與 tempdbDatabase Engine 使用者資料庫可以安裝伺服器訊息塊 (SMB) 檔案伺服器作為記憶體選項。 這一點同時適用於 SQL Server 獨立和 SQL Server 容錯移轉叢集安裝 (FCI)。 如需詳細資訊,請參閱 使用 SMB 檔案共用記憶體安裝 SQL Server

請勿刪除下列任何目錄或其內容:Binn、、DataFtdata、、 HTML1033。 如有必要,您可以刪除其他目錄。 不過,若未卸載再重新安裝 SQL Server,您可能無法擷取任何遺失的功能或數據。 請勿刪除或修改 HTML 目錄中的任何 .htm 檔案。 這些檔案是 SQL Server 工具得以正常運作不可或缺的要素。

所有 SQL Server 實例的共享檔案

單一電腦上所有執行個體使用的共用檔案,都會安裝在 <磁碟機>:\Program Files\Microsoft SQL Server\nnn\ 資料夾中。 < 磁碟機> 是元件安裝所在的磁碟機代號。 預設通常是磁碟機 C。nnn 則代表版本。

下表描述了路徑的版本。 {nn} 是在執行個體識別碼及登錄路徑中使用的版本值。

版本 nnn {nn}
SQL Server 2022 (16.x) 160 16
SQL Server 2019 (15.x) 150 15
SQL Server 2017 (14.x) 140 14
SQL Server 2016 (13.x) 130 13
SQL Server 2014 (12.x) 120 12
SQL Server 2012 (11.x) 110 11

檔案位置和登錄對應

在 SQL Server 安裝期間,系統會為每一個伺服器元件產生一個執行個體識別碼。 此 SQL Server 版本中的伺服器元件,是資料庫引擎、Analysis Services 和 Reporting Services。

預設執行個體識別碼是使用以下格式建構的:

  • 對於資料庫引擎,首先是 MSSQL,接著是主要版本號碼,然後是下劃線及次要版本(如果適用),再加上句點,最後是執行個體名稱。

  • 對 Analysis Services 來說是 MSAS,後面接著主要版本號碼、底線、次要版本 (如果適用的話) 和句點,然後再接著執行個體名稱。

  • 在 Reporting Services 中,MSRS 之後接著主要版本號碼,然後是底線和次要版本(如果適用),再接著句點,然後是執行個體名稱。

此 SQL Server 版本中的預設執行個體識別碼範例如下:

  • SQL Server 的預設執行個體為 MSSQL{nn}.MSSQLSERVER。

  • SQL Server Analysis Services 的預設執行個體為 MSAS{nn}.MSSQLSERVER。

  • SQL Server 名為 "MyInstance" 的具名執行個體為 MSSQL{nn}.MyInstance。

包含資料庫引擎和 Analysis Services 的 SQL Server 具名執行個體 (名稱為 "MyInstance") 的目錄結構,且會安裝到如下所示的預設目錄:

  • C:\Program Files\Microsoft SQL Server\MSSQL{nn}.MyInstance\

  • C:\Program Files\Microsoft SQL Server\MSAS{nn}.MyInstance\

您可以為執行個體識別碼指定任何值,但是請避免特殊字元和保留關鍵字。

您可以在 SQL Server 安裝期間,指定非預設的執行個體識別碼。 如果使用者選擇變更預設安裝目錄,可以不要使用 \{Program Files}\Microsoft SQL Server,而改用 <自訂路徑>\Microsoft SQL Server。 不支援以底線 (_) 開頭或包含數字符號 (#) 或貨幣符號 ($) 的實例識別碼。

注意

Integration Services 和用戶端元件不會感知實例,因此不會指派實例標識碼。 根據預設,不會感知執行個體的元件會安裝至單一目錄:<磁碟機>:\Program Files\Microsoft SQL Server\nnn\。 變更某個共用元件的安裝路徑也會變更其他共用元件的安裝路徑。 後續安裝會將非執行個體感知的元件安裝到與原始安裝相同的目錄。

SQL Server Analysis Services 是唯一支援安裝後可重新命名執行個體的 SQL Server 元件。 如果重新命名了 Analysis Services 執行個體,執行個體識別碼並不會變更。 當執行個體重新命名完成之後,目錄和登錄機碼將會繼續使用安裝期間所建立的執行個體識別碼。

可感知執行個體的元件,其登錄區會建立在 HKLM\Software\Microsoft\Microsoft SQL Server\<執行個體識別碼> 之下。 例如,

  • HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL{nn}.MyInstance

  • HKLM\Software\Microsoft\Microsoft SQL Server\MSAS{nn}.MyInstance

  • HKLM\Software\Microsoft\Microsoft SQL Server\MSRS{nn}.MyInstance

註冊表也會維護實例 ID 到實例名稱的對應關係。 執行個體 ID 與執行個體名稱的對應維護如下:

  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\SQL] "<執行個體名稱>"="MSSQL{nn}"

  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\OLAP] "<執行個體名稱>"="MSAS{nn}"

  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\RS] "<執行個體名稱>"="MSRS{nn}"

指定檔案路徑

在安裝期間,您可以變更下列功能的安裝路徑:

只有具有使用者可設定目的資料夾的功能,其安裝路徑才會顯示在安裝程式中:

元件 預設路徑 可設定或固定路徑
資料庫引擎伺服器元件 \Program Files\Microsoft SQL Server\MSSQL{nn}.<執行個體 ID>\ 可設定
資料庫引擎資料檔案 \Program Files\Microsoft SQL Server\MSSQL{nn}.<InstanceID>\ 可設定
Analysis Services 伺服器 \Program Files\Microsoft SQL Server\MSAS{nn}.<InstanceID>\ 可設定
Analysis Services 資料檔案 \Program Files\Microsoft SQL Server\MSAS{nn}.<InstanceID>\ 可設定
Reporting Services 報表伺服器 \Program Files\Microsoft SQL Server\MSRS{nn}.<執行個體識別碼>\Reporting Services\ReportServer\Bin\ 可設定
Reporting Services 報表管理員 \Program Files\Microsoft SQL Server\MSRS{nn}.<InstanceID>\Reporting Services\ReportManager\ 固定路徑
整合服務 <安裝目錄>\nnn\DTS\ 1 可配置
用戶端元件 (和 bcp.exesqlcmd.exe除外) <安裝目錄>\nnn\Tools\ 1 可自訂
用戶端元件 (bcp.exesqlcmd.exe <安裝目錄>\Client SDK\ODBC\nnn\Tools\Binn 固定路徑
複寫和伺服器端 COM 物件 < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\COM\ 2 固定路徑
Integration Services 的元件 DLL,用於資料轉換執行階段引擎、資料轉換管線引擎和 dtexec 命令提示字元公用程式。 < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\DTS\Binn 固定路徑
為 Integration Services 提供受控連線支援的 DLL < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\DTS\Connections 固定路徑
Integration Services 支援的每種列舉程式類型的 DLL < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\DTS\ForEachEnumerators 固定路徑
SQL Server Browser 服務,WMI 提供者 < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\Shared\ 固定路徑
所有 SQL Server 執行個體之間共用的元件 < 磁碟機>:\Program Files\Microsoft SQL Server\nnn\Shared\ 固定路徑

警告

請確定 \Program Files\Microsoft SQL Server\ 資料夾有權限限制的保護。

檔案位置的預設磁碟機是系統磁碟機,一般來說是磁碟機 C。而子功能的安裝路徑由父功能的安裝路徑來決定。

1 在 Integration Services 與用戶端元件之間共用單一安裝路徑。 變更一個元件的安裝路徑也會變更其他元件的安裝路徑。 後續安裝會將元件安裝到與原始安裝相同的位置。

2 電腦上 SQL Server 的所有執行個體,都使用此目錄。 如果您將更新項目套用至電腦的任何執行個體,則此資料夾之檔案若有任何變更,電腦上所有執行個體都會受到影響。 當您將功能新增至現有的安裝時,您無法變更先前安裝功能的位置,也無法指定新功能的位置。 您必須將其他功能安裝到安裝程式所建立的目錄中,或解除安裝後再重新安裝本產品。

注意

如果是叢集組態,您必須選取該叢集的每一個節點上可用的本機磁碟機。

當您在安裝期間指定伺服器元件或資料檔案的安裝路徑時,除了程式和資料檔案的指定位置之外,安裝程式還會使用執行個體識別碼。 安裝程式不會使用工具和其他共用檔案的實例標識碼。 安裝程式也不會針對 Analysis Services 程式和數據檔使用任何實例標識碼,雖然它確實使用 Analysis Services 存放庫的實例識別碼。

如果設定了資料庫引擎功能的安裝路徑,SQL Server 安裝程式就會使用該路徑作為此安裝作業所有執行個體專用資料夾的根目錄,包括 SQL 資料檔案在內。 在此情況下,如果將根目錄設定為 "C:\Program Files\Microsoft SQL Server\MSSQL{nn}.<執行個體名稱>\MSSQL\",則執行個體專用目錄會加到該路徑的結尾處。

選擇在 SQL Server 安裝精靈 (安裝程式 UI 模式) 中使用 USESYSDB 升級功能的客戶,很容易讓自己進入產品會安裝到遞迴資料夾結構的情況。 例如,<SQLProgramFiles>\MSSQL14\MSSQL\MSSQL10_50\MSSQL\Data\。 若要改用 USESYSDB 功能,請設定 SQL 資料檔案功能 (而非資料庫引擎功能) 的安裝路徑。

注意

資料檔案通常預期會在名為 Data 的子目錄中找到。 例如,指定 C:\Program Files\Microsoft SQL Server\MSSQL{nn}.<執行個體名稱>\,以在升級期間作為系統資料庫的資料目錄的根目錄,當資料檔案位於 C:\Program Files\Microsoft SQL Server\MSSQL{nn}.<執行個體名稱>\MSSQL\Data 下時。