將服務應用程式升級到 SharePoint Server 2016
適用於:Subscription Edition SharePoint in Microsoft 365
當您從 SharePoint Server 2013 Service Pack 1 (SP1)升級至 SharePoint Server 2016 時,必須使用資料庫附加升級,這表示您僅會升級環境的內容,而不是組態設定。 設定 SharePoint Server 2016 環境,以及複製內容及服務應用程式資料庫之後,可以將服務應用程式升級至 SharePoint Server 2016。 本文包含升級服務應用程式所需採取的步驟。
升級程式的階段 3:升級服務應用程式:
階段 | 描述 |
---|---|
此為將 SharePoint Server 2013 Service Pack 1 (SP1) 資料及網站升級至 SharePoint Server 2016 之程序中的第三階段。 程序中包含下列必須依序完成的階段: 建立資料庫附加升級的 SharePoint Server 2016 伺服器陣列 將資料庫複製到新伺服器陣列以升級到 SharePoint Server 2016 將服務應用程式升級到 SharePoint Server 2016 (這個階段) 將內容資料庫升級到 SharePoint Server 2016 如需完整程序的概觀,請參閱< SharePoint Server 2016 升級程序概觀>。 |
開始之前
升級服務應用程式之前,請檢閱下列資訊,並採取任何建議的動作。
請確認您用來執行本文步驟的帳戶是管理中心的伺服器陣列管理員群組成員。
決定要用於升級服務應用程式的服務應用程式集區。 下列程式會針對「SharePoint Web 服務預設」的服務應用程式使用預設應用程式集區。 您可以使用 PowerShell 中的 Get-SPServiceApplicationPool Cmdlet 來檢視可用的服務應用程式集區清單。 或者,您可以使用 New-SPServiceApplicationPool Cmdlet 來建立服務應用程式集區。 如需詳細資訊,請參閱 Get-SPServiceApplicationPool 和 New-SPServiceApplicationPool。
提示
本文會在 PowerShell Cmdlet 中使用變數 (例如 $applicationPool、$sss、$upa 等等) 以節省時間和精力。 若您不想使用這些變數,則不一定要使用。 不過,若您不使用這些變數,必須在指定 identity 參數時,使用服務應用程式及服務應用程式 Proxy 的識別碼。 每個程式都有所使用變數的相關信息,或用來查閱任何必要標識碼的替代 Cmdlet。 此外,本文中許多程序還包含設定 $applicationPool 變數的步驟。 若您要在 PowerShell 的相同工作階段中執行所有這些程序,且您想要為所有服務應用程式使用相同的應用程式集區,不需要在每個程序中重複此步驟。 您可以在一開始設定此變數一次,然後將其用於本文的各個程序中。
注意事項
針對 SharePoint Server 2016 結構描述中推出之 SharePoint 2013 結構描述中的任何 Managed 屬性,您必須在升級之前重新命名該 Managed 屬性。 例如,如果您已建立名為 SPWebURL 的 Managed 屬性,請在 SharePoint Server 2016 升級前將之重新命名為 SPWebURL1。 升級成功完成之後,您可以將自訂 Managed 屬性名稱重新變更為原始值 (也就是將 SPWebURL1 重新命名為 SPWebURL)。 如需 SharePoint Server 2016 中所述之 Managed 屬性清單,請參閱在 SharePoint Server 2016 中新增 Managed 屬性。
關於升級服務應用程式資料庫
若要升級服務應用程式資料庫,您必須建立新服務應用程式並提供現有資料庫的名稱,才能使用新的服務應用程式。 建立服務應用程式,就能升級資料庫。 此程序有幾個步驟。
注意事項
[!附註] 無法升級 Word Automation Services 和 Machine Translation Service。 將需要建立新的服務執行個體。
重要事項
概述啟動服務執行個體的下列步驟,僅適用自訂伺服器角色類型。 如需伺服器角色類型的詳細資訊,請參閱 Planning for a MinRole server deployment in SharePoint Server 2016。
啟動服務執行個體
第一步是啟動五個可升級服務應用程式的服務執行個體:Business Data Connectivity Service、Managed Metadata Web Service、PerformancePoint Services 服務、Secure Store 服 與 Search Service。 這些服務執行個體大多可從 管理中心 啟動。 但是 SharePoint Server Search 服務執行個體必須使用 PowerShell 啟動。
建立服務應用程式並升級資料庫
啟動服務執行個體後,下一個步驟就是建立服務應用程式並升級資料庫。 您必須使用 PowerShell 來還原服務應用程式資料庫。
建立服務應用程式的 Proxy
升級服務應用程式資料庫後,您要建立服務應用程式的 Proxy,並將其加入預設 Proxy 群組。 您必須建立下列服務應用程式的 Proxy:
Managed Metadata Service 應用程式
Search Service 應用程式
Secure Store 服務應用程式
PerformancePoint Services 服務應用程式
Business Data Connectivity Service 應用程式會在您建立服務應用程式時自動建立 Proxy,並將其指派到預設的 Proxy 群組。
確認 Proxy 在預設群組中
下節提供完成這些步驟的程序。
啟動服務執行個體
下列程序會啟動服務執行個體。
若要從管理中心啟動服務應用程式實例:
啟動 SharePoint 2016 管理中心。
若為 Windows Server 2012 R2:
在 [ 開始] 畫面上,選取 [SharePoint 2016 管理中心]。
如果 [開始] 畫面上沒有 [SharePoint 2016 管理中心]:
- 以滑鼠右鍵按兩下 [ 計算機],選取 [ 所有應用程式],然後選取 [SharePoint 2016 管理中心]。
如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 中的一般管理工作和導覽。
在 SharePoint 2016 管理中心,於 [應用程式 管理 ] 頁面的 [ 服務應用程式 ] 區段中,選取 [ 管理伺服器上的服務]。
在 Business Data Connectivity 服務旁邊,選取 [ 啟動]。
在 [ 受控元數據 Web 服務] 旁,選取 [ 啟動]。
在 PerformancePoint Services 服務旁邊,選取 [ 啟動]。
在 Secure Store Service 旁邊,選取 [ 啟動]。
Search Service 執行個體必須透過 PowerShell 啟動,因為您無法從管理中心啟動,除非 Search Service 應用程式已存在。
若要使用PowerShell啟動搜尋服務實例:
確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2016 Cmdlet 的權限。
注意事項
[!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 許可權的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 2016 管理命令介面。
若為 Windows Server 2012 R2:
在 [ 開始] 畫面上,選取 [SharePoint 2016 管理命令介面]。
如果 [SharePoint 2016 管理命令介面] 不在 [開始] 畫面上:
- 以滑鼠右鍵按兩下 [ 計算機],選取 [ 所有應用程式],然後選取 [SharePoint 2016 管理命令介面]。
如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 中的一般管理工作和導覽。
若要啟動 Search Service 執行個體,請在 Microsoft PowerShell 命令提示字元處輸入下列命令,並在每個命令結尾按下 ENTER :
$SearchInst = Get-SPEnterpriseSearchServiceInstance # Stores the identity for the Search service instance on this server as a variable
Start-SPServiceInstance $SearchInst # Starts the service instance
如需詳細資訊,請參閱 Get-SPEnterpriseSearchServiceInstance 和 Start-SPServiceInstance。
升級 Secure Store 服務應用程式。
若要升級 Secure Store 服務應用程式,您可建立新的服務應用程式並升級資料庫、建立 Proxy 並將其加到預設 Proxy 群組,然後還原舊環境的複雜密碼。
若要使用 PowerShell 升級 Secure Store 服務應用程式:
確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2016 Cmdlet 的權限。
注意事項
[!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 許可權的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 2016 管理命令介面。
若為 Windows Server 2012 R2:
在 [ 開始] 畫面上,選取 [SharePoint 2016 管理命令介面]。
如果 [SharePoint 2016 管理命令介面] 不在 [開始] 畫面上:
- 以滑鼠右鍵按兩下 [ 計算機],選取 [ 所有應用程式],然後選取 [SharePoint 2016 管理命令介面]。
如需如何與 Windows Server 2012 R2Windows Server 2012 互動的詳細資訊,請參閱 Windows Server 2012 中的一般管理工作和導覽。
若要將您想使用的應用程式集區儲存為此服務應用程式的變數,請在 Microsoft PowerShell 命令提示字元處輸入下列命令:
$applicationPool = Get-SPServiceApplicationPool -Identity 'SharePoint Web Services default'
其中:
- SharePoint Web Services default 是將包含新服務應用程式的服務應用程式集區名稱。 此為預設的服務應用程式集區。 您可以指定其他服務應用程式集區。
此 Cmdlet 將服務應用程式集區設為變數,以便接下來的 Cmdlet 再次使用。 若您有多個應用程式集區,且必須為特定的服務應用程式使用不同的應用程式集區,可在程序中重複此步驟,以建立每個服務應用程式使用適當的應用程式集區。
若要升級 Secure Store 服務應用程式,請在 Microsoft PowerShell 命令提示字元處,輸入下列命令:
$sss = New-SPSecureStoreServiceApplication -Name 'Secure Store' -ApplicationPool $applicationPool -DatabaseName 'SecureStore_Upgrade_DB' -AuditingEnabled
其中:
SecureStore 是您要給新 Secure Store 服務應用程式的名稱。
$applicationpool 是您早先設定的變數,以識別要使用的服務應用程式集區。
提示
[!提示] 如果您不使用變數 $applicationPool,則必須以「 Application Pool Name」格式指定現有服務應用程式集區的名稱。 若要檢視服務應用程式集區清單,您可以執行 Get-SPServiceApplicationPool Cmdlet。
SecureStore_Upgrade_DB 是您要升級的服務應用程式資料庫名稱。
此命令會設定變數 $sss,您在稍後建立 Proxy 時會使用得到。
如需詳細資訊,請參閱 New-SPSecureStoreApplication。
輸入下列命令,建立 Secure Store 服務應用程式的 Proxy:
$sssp = New-SPSecureStoreServiceApplicationProxy -Name ProxyName -ServiceApplication $sss -DefaultProxyGroup
其中:
ProxyName 是要使用的 Proxy 名稱。
$sss 是您早先設定的變數,以識別新的 Secure Store 服務應用程式。
提示
[!提示] 如果您不使用變數 $sss,則必須以識別碼代替名稱來識別 Secure Store Service 應用程式。 若要找到識別碼,可執行 Get-SPServiceApplication Cmdlet 傳回所有服務應用程式識別碼清單。
DefaultProxyGroup 將 Secure Store 服務應用程式 Proxy 加入本機伺服器陣列的預設 Proxy 群組。
此命令會針對您還原複雜密碼時使用的服務應用程式 Proxy 設定變數 $sssp。
如需詳細資訊,請參閱 New-SPSecureStoreServiceApplicationProxy。
建立 Secure Store 服務應用程式和 Proxy 後,您必須重新整理加密金鑰。 如需如何重新整理加密金鑰的資訊,請參閱 重新整理 Secure Store 加密金鑰。
輸入下列命令,還原 Secure Store 服務應用程式的複雜密碼:
Update-SPSecureStoreApplicationServerKey -Passphrase <Passphrase> -ServiceApplicationProxy $sssp
其中:
<Passphrase> 是舊環境中 Secure Store 服務應用程式的「複雜密碼」。
$sssp 是您早先設定的變數,以識別新的 Secure Store Service 應用程式 Proxy。
提示
[!提示] 如果您不使用變數 $sssp,則必須以識別碼代替名稱來識別 Secure Store Service 應用程式 Proxy。 若要尋找識別碼,您可以執行 Get-SPServiceApplicationProxy Cmdlet 來傳回所有服務應用程式 Proxy 識別碼的清單。
如需詳細資訊,請參閱 Update-SPSecureStoreApplicationServerKey。
升級 Business Data Connectivity Service 應用程式
若要升級 Business Data Connectivity Service 應用程式,您必須建立新的服務應用程式並升級資料庫。 您不一定要建立 Business Data Connectivity Service 應用程式的 Proxy。 Business Data Connectivity Service 應用程式會在您建立服務應用程式時自動建立 Proxy,並將其指派到預設的 Proxy 群組。
若要使用 PowerShell 升級 Business Data Connectivity 服務應用程式:
確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2016 Cmdlet 的權限。
注意事項
[!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 許可權的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 2016 管理命令介面。
若為 Windows Server 2012 R2:
在 [ 開始] 畫面上,選取 [SharePoint 2016 管理命令介面]。
如果 [SharePoint 2016 管理命令介面] 不在 [開始] 畫面上:
- 以滑鼠右鍵按兩下 [ 計算機],選取 [ 所有應用程式],然後選取 [SharePoint 2016 管理命令介面]。
如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 中的一般管理工作和導覽。
若要將您想使用的應用程式集區儲存為此服務應用程式的變數,請在 Microsoft PowerShell 命令提示字元處輸入下列命令:
$applicationPool = Get-SPServiceApplicationPool -Identity 'SharePoint Web Services default'
其中:
- SharePoint Web Services 預設 是將包含新服務應用程式的服務應用程式集區名稱。
此 Cmdlet 將服務應用程式集區設為變數,以便接下來的 Cmdlet 再次使用。 若您有多個應用程式集區,且必須為特定的服務應用程式使用不同的應用程式集區,可在程序中重複此步驟,以建立每個服務應用程式使用適當的應用程式集區。
若要升級 Business Data Connectivity Service 應用程式,請在 Microsoft PowerShell 命令提示字元處,輸入下列命令:
New-SPBusinessDataCatalogServiceApplication -Name 'BDC Service' -ApplicationPool $applicationPool -DatabaseName 'BDC_Service_DB'
其中:
BDC Service 是您要給新 Business Data Connectivity Service 應用程式的名稱。
$applicationpool 是您早先設定的變數,以識別要使用的服務應用程式集區。
提示
[!提示] 如果您不使用變數 $applicationPool,則必須以「 Application Pool Name」格式指定現有服務應用程式集區的名稱。 若要檢視服務應用程式集區清單,您可以執行 Get-SPServiceApplicationPool Cmdlet。
BDC_Service_DB 是您要升級的服務應用程式資料庫名稱。
如需詳細資訊,請參閱 New-SPBusinessDataCatalogServiceApplication。
升級 Managed Metadata Service 應用程式
若要升級 Managed Metadata Service 應用程式,您必須建立新的服務應用程式並升級資料庫,然後建立 Proxy 並將其加入預設的 Proxy 群組。
若要使用PowerShell升級受控元資料服務應用程式:
確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2016 Cmdlet 的權限。
注意事項
[!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 許可權的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 2016 管理命令介面。
若為 Windows Server 2012 R2:
在 [ 開始] 畫面上,選取 [SharePoint 2016 管理命令介面]。
如果 [SharePoint 2016 管理命令介面] 不在 [開始] 畫面上:
- 以滑鼠右鍵按兩下 [ 計算機],選取 [ 所有應用程式],然後選取 [SharePoint 2016 管理命令介面]。
如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 中的一般管理工作和導覽。
若要將您想使用的應用程式集區儲存為此服務應用程式的變數,請在 Microsoft PowerShell 命令提示字元處輸入下列命令:
$applicationPool = Get-SPServiceApplicationPool -Identity 'SharePoint Web Services default'
其中:
- SharePoint Web Services 預設 是將包含新服務應用程式的服務應用程式集區名稱。
此 Cmdlet 將服務應用程式集區設為變數,以便接下來的 Cmdlet 再次使用。 若您有多個應用程式集區,且必須為特定的服務應用程式使用不同的應用程式集區,可在程序中重複此步驟,以建立每個服務應用程式使用適當的應用程式集區。
若要升級 Managed Metadata Service 應用程式,請在 Microsoft PowerShell 命令提示字元處,輸入下列命令:
$mms = New-SPMetadataServiceApplication -Name 'Managed Metadata Service Application' -ApplicationPool $applicationPool -DatabaseName 'Managed Metadata Service_DB'
其中:
Managed Metadata Service Application 是您要給新 Managed Metadata Service 應用程式的名稱。
$applicationpool 是您早先設定的變數,以識別要使用的服務應用程式集區。
提示
[!提示] 如果您不使用變數 $applicationPool,則必須以「 Application Pool Name」格式指定現有服務應用程式集區的名稱。 若要檢視服務應用程式集區清單,您可以執行 Get-SPServiceApplicationPool Cmdlet。
Managed Metadata Service_DB 是您要升級的服務應用程式資料庫名稱。
此命令會設定變數 $sss,您在稍後建立 Proxy 時會使用得到。
如需詳細資訊,請參閱 New-SPMetadataServiceApplication。
在 Microsoft PowerShell 命令提示字元處,輸入以下命令,建立 Managed Metadata Service 應用程式的 Proxy:
New-SPMetadataServiceApplicationProxy -Name ProxyName -ServiceApplication $mms -DefaultProxyGroup
其中:
Proxy 名稱 是要使用的 Proxy 名稱。
$mms 是您早先設定的變數,以識別新 Managed Metadata Service 應用程式。
提示
[!提示] 如果您不使用變數 $mms,則必須以識別碼代替名稱來識別 Managed Metadata Service 應用程式 Proxy。 若要找到識別碼,可執行 Get-SPServiceApplication Cmdlet 傳回所有服務應用程式識別碼清單。
DefaultProxyGroup 將 Managed Metadata service 服務應用程式 Proxy 加入本機伺服器陣列的預設 Proxy 群組。
如需詳細資訊,請參閱 New-SPMetadataServiceApplicationProxy。
升級 PerformancePoint Services 服務應用程式。
若要升級 PerformancePoint Services 服務應用程式,您必須建立新的服務應用程式並升級資料庫,然後建立 Proxy 並將其加入預設的 Proxy 群組。
若要使用 PowerShell 升級 PerformancePoint Services 服務應用程式:
確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2016 Cmdlet 的權限。
注意事項
[!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 許可權的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 2016 管理命令介面。
若為 Windows Server 2012 R2:
在 [ 開始] 畫面上,選取 [SharePoint 2016 管理命令介面]。
如果 [SharePoint 2016 管理命令介面] 不在 [開始] 畫面上:
- 以滑鼠右鍵按兩下 [ 計算機],選取 [ 所有應用程式],然後選取 [SharePoint 2016 管理命令介面]。
如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 中的一般管理工作和導覽。
若要將您想使用的應用程式集區儲存為此服務應用程式的變數,請在 Microsoft PowerShell 命令提示字元處輸入下列命令:
$applicationPool = Get-SPServiceApplicationPool -Identity 'SharePoint Web Services default'
其中:
- SharePoint Web Services 預設 是將包含新服務應用程式的服務應用程式集區名稱。
此 Cmdlet 將服務應用程式集區設為變數,以便接下來的 Cmdlet 再次使用。 若您有多個應用程式集區,且必須為特定的服務應用程式使用不同的應用程式集區,可在程序中重複此步驟,以建立每個服務應用程式使用適當的應用程式集區。
若要升級 PerformancePoint Services 服務應用程式,請在 Microsoft PowerShell 命令提示字元處,輸入下列命令:
$pps = New-SPPerformancePointServiceApplication -Name 'PerformancePoint Service' -ApplicationPool $applicationPool -DatabaseName 'PerformancePoint Service Application_DB'
其中:
PerformancePoint Service 是您要給新 PerformancePoint Services 服務應用程式的名稱。
$applicationpool 是您早先設定的變數,以識別要使用的服務應用程式集區。
提示
[!提示] 如果您不使用變數 $applicationPool,則必須以「 Application Pool Name」格式指定現有服務應用程式集區的名稱。 若要檢視服務應用程式集區清單,您可以執行 Get-SPServiceApplicationPool Cmdlet。
PerformancePoint Service Application_DB 是您要升級的 PerformancePoint Services 服務應用程式資料庫名稱。
此命令會設定變數 $pps,您在稍後建立 Proxy 時會使用得到。
如需詳細資訊,請參閱 New-SPPerformancePointServiceApplication。
輸入下列命令,建立 PerformancePoint Services 服務應用程式的 Proxy:
New-SPPerformancePointServiceApplicationProxy -Name ProxyName -ServiceApplication $pps -Default
其中:
Proxy 名稱 是要使用的 Proxy 名稱。
$pps 是您早先設定的變數,以識別新 PerformancePoint Services 服務應用程式。
提示
[!提示] 如果您不使用變數 $pps,則必須以識別碼代替名稱來識別 PerformancePoint Services 服務應用程式。 若要找到識別碼,可執行 Get-SPServiceApplication Cmdlet 傳回所有服務應用程式識別碼清單。
Default 將 PerformancePoint Services 服務應用程式 Proxy 加入本機伺服器陣列的預設 Proxy 群組。
如需詳細資訊,請參閱 New-SPPerformancePointServiceApplicationProxy。
升級 User Profile Service Application
在升級 User Profile Service Application 之前,先升級 Managed Metadata Service 應用程式。
若要升級 User Profile Service Application,您可以將 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列中的設定檔和社交資料庫複製到 SharePoint Server 2016 伺服器陣列,然後從 SharePoint Server 2016 伺服器陣列中的 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列建立新的 User Profile Service Application。 還原作業會觸發 SharePoint Server 2016 在 SharePoint Server 2016 伺服器陣列中建立新的 User Profile Service Application,並將其指向複製的使用者設定檔資料庫。 若要完成 User Profile Service Application 的升級,您會建立 Proxy 並將它新增至預設的 Proxy 群組。
注意事項
由於 SharePoint Server 2016 沒有 User Profile Synchronization Service,您不會複製同步處理資料庫。 而是會使用空白的結構描述建立新的資料庫。
若要使用 PowerShell 升級 User Profile Service 應用程式:
若要將 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列中的設定檔和社交資料庫複製到 SharePoint Server 2016 伺服器陣列,請遵循下列步驟:
重要事項
在 SharePoint Server 2013 Service Pack 1 (SP1) 環境中執行這些步驟。
確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2016 Cmdlet 的權限。
注意事項
[!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 許可權的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 管理命令介面。
針對 Windows Server 2012 R2:在 [ 開始 ] 畫面上,選取 [SharePoint 管理命令介面]。
如果 SharePoint 管理命令介面 不在 [開始 ] 畫面上,請以滑鼠右鍵按兩下 [ 計算機],選取 [ 所有應用程式],然後選取 [SharePoint 管理命令介面]。
如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 中的一般管理工作和導覽。
將使用者設定檔資料庫設為唯讀。 將 SharePoint Server 2013 Service Pack 1 (SP1) 資料及站台升級至 SharePoint Server 2016 程序的第二個階段中,您將所有其他資料庫設定為唯讀。
將 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列中的設定檔和社交資料庫複製到 SharePoint Server 2016 伺服器陣列,請遵循將資料庫複製到新伺服器陣列以升級到 SharePoint Server 2016 中的程序 (僅適用於搜尋管理資料庫)。
重要事項
在 SharePoint Server 2016 環境中執行接下來的步驟。
確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2016 Cmdlet 的權限。
注意事項
[!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 許可權的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 2016 管理命令介面。
針對 Windows Server 2012 R2:在 [ 開始 ] 畫面上,選取 [SharePoint 管理命令介面]。
如果 SharePoint 管理命令介面 不在 [開始 ] 畫面上,請以滑鼠右鍵按兩下 [ 計算機],選取 [ 所有應用程式],然後選取 [SharePoint 管理命令介面]。
如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 中的一般管理工作和導覽。
若要將您想使用的應用程式集區儲存為此服務應用程式的變數,請在 Microsoft PowerShell 命令提示字元處輸入下列命令:
$applicationPool = Get-SPServiceApplicationPool -Identity 'SharePoint Web Services default'
其中:
- SharePoint Web Services 預設 是將包含新服務應用程式的服務應用程式集區名稱。
此 Cmdlet 將服務應用程式集區設為變數,以便接下來的 Cmdlet 再次使用。 若您有多個應用程式集區,且必須為特定的服務應用程式使用不同的應用程式集區,可在程序中重複此步驟,以建立每個服務應用程式使用適當的應用程式集區。
若要還原 User Profile Service Application 並升級設定檔和社交資料庫,請在 Microsoft PowerShell 命令提示字元中,輸入下列命令:
New-SPProfileServiceApplication -Name '<UserProfileApplicationName>' -ApplicationPool $applicationPool -ProfileDBName '<ProfileDBName>' -SocialDBName '<SocialDBName>' -ProfileSyncDBName '<SyncDBName>'
其中:
UserProfileApplicationName 是 User Profile Service Application 的名稱。
$applicationpool 是您設定的變數,以識別要使用的服務應用程式集區。
提示
[!提示] 如果您不使用變數 $applicationPool,則必須以「 Application Pool Name」格式指定現有服務應用程式集區的名稱。 若要檢視服務應用程式集區的清單,您可以執行 Get-SPServiceApplicationPool Cmdlet。
ProfileDBName 是要升級的設定檔資料庫名稱。
SocialDBName 是要升級的社交資料庫名稱。
SyncDBName 是要升級的新同步處理資料庫名稱。
建立 User Profile Service Application Proxy,並完成這些動作,將它新增至預設的 Proxy 群組:
輸入下列命令以取得 User Profile Service Application 的識別碼,並將其儲存為變數:
$sa = Get-SPServiceApplication | ?{$_.TypeName -eq 'User Profile Service Application'}
如需詳細資訊,請參閱 Get-SPServiceApplication。
輸入下列命令,建立 User Profile Service Application 的 Proxy:
New-SPProfileServiceApplicationProxy -Name ProxyName -ServiceApplication $sa
其中:
Proxy 名稱 是要使用的 Proxy 名稱。
$sa 是您稍早設定的變數,以識別新 User Profile Service Application。
提示
如果您未使用變數$sa,則必須使用標識符來識別User Profile Service 應用程式,而不是名稱。 若要尋找識別碼,您可以執行 Get-SPServiceApplication Cmdlet 來傳回所有服務應用程式識別碼的清單。
如需詳細資訊,請參閱 New-SPProfileServiceApplicationProxy。
輸入下列命令,為剛建立的 Proxy 取得 Search Service 應用程式 Proxy 識別碼,並將其設定為變數 $ssap:
$proxy = Get-SPServiceApplicationProxy | ?{$_.TypeName -eq 'User Profile Service Application Proxy'}
如需詳細資訊,請參閱 Get-SPServiceApplicationProxy。
輸入下列命令,將 User Profile Service Application Proxy 新增至預設的 Proxy 群組:
Add-SPServiceApplicationProxyGroupMember -member $proxy -identity ""
其中:
$proxy 是您早先設定的變數,用以識別剛建立的 User Profile Service Application Proxy 識別碼。
提示
如果您未使用變數$proxy,則必須使用標識符來識別User Profile Service 應用程式 Proxy,而不是名稱。 若要尋找識別碼,您可以執行 Get-SPServiceApplicationProxy Cmdlet 來傳回所有服務應用程式 Proxy 識別碼的清單。
您使用空白的 Identity 參數 ("") 將其新增至預設群組。
如需詳細資訊,請參閱 Add-SPServiceApplicationProxyGroupMember。
升級 Search Service 應用程式
請先升級 User Profile Service 應用程式和 Managed Metadata Service 應用程式,再升級 Search Service 應用程式。
若要升級 Search Service 應用程式,將 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列中的搜尋管理資料庫複製到 SharePoint Server 2016 伺服器陣列,然後從 SharePoint Server 2016 伺服器陣列中的 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列還原 Search Service 應用程式。 還原作業會觸發 SharePoint Server 2016 在 SharePoint Server 2016 伺服器陣列中建立新的 Search Service 應用程式,並將其指向複製的搜尋管理資料庫。 若要完成 Search Service 應用程式的升級,您需建立 Proxy 並將其加入預設的 Proxy 群組,然後確定新連結資料庫和新搜尋拓撲的設定與 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列中的設定相同。
SharePoint Server 2016 通常會在建立新的搜尋服務應用程式時,使用所有搜尋元件和資料庫建立新的搜尋拓撲。 在 還 原 Search Service 應用程式期間,SharePoint Server 2016 會建立新的搜尋拓撲,但會升級已還原的搜尋管理資料庫,而不是建立新的搜尋管理資料庫。 升級的搜尋管理資料庫會保留 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣組對搜尋架構、結果來源和查詢規則所做的任何新增或修改。
注意事項
[!附註] 在升級期間,搜尋不會對您 SharePoint Server 2013 Service Pack 1 (SP1) 中的內容進行編目。 如果搜尋結果的更新與否相當重要,您可以在開始升級前先熟悉這些步驟以節省時間。
重要事項
[!重要事項] 因為 SharePoint Server 2016 伺服器陣列中的搜尋拓撲是新的,所以索引是空的。 當您已升級所有內容來源後 (將 SharePoint Server 2013 Service Pack 1 (SP1) 資料與站台升級至 SharePoint Server 2016 程序中的第四階段),您必須對整個編製索引的主體執行完整編目。
若要使用 PowerShell 升級 Search Service 應用程式:
若要將 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列中的搜尋管理資料庫複製到 SharePoint Server 2016 伺服器陣列,請遵循下列步驟:
注意事項
[!附註] 在升級到 SharePoint Server 2016 程序的前面步驟中,您已複製 SharePoint Server 2013 Service Pack 1 (SP1) 環境內的所有其他內容和服務資料庫。 我們建議您在較後面的階段複製搜尋管理資料庫,因為複製搜尋管理資料庫時,您必須暫停 SharePoint Server 2013 Service Pack 1 (SP1) 環境中的 Search Service 應用程式。
重要事項
在 SharePoint Server 2013 Service Pack 1 (SP1) 環境中執行這些步驟。
確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2016 Cmdlet 的權限。
注意事項
[!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 許可權的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 管理命令介面。
針對 Windows Server 2012 R2:在 [ 開始 ] 畫面上,選取 [SharePoint 管理命令介面]。
如果 SharePoint 管理命令介面 不在 [開始 ] 畫面上,請以滑鼠右鍵按兩下 [ 計算機],選取 [ 所有應用程式],然後選取 [SharePoint 管理命令介面]。
如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 中的一般管理工作和導覽。
將搜尋管理資料庫設為唯讀。 將 SharePoint Server 2013 Service Pack 1 (SP1) 資料及站台升級至 SharePoint Server 2016 程序的第二個階段中,您將所有其他資料庫設定為唯讀。 現在請依循相同指示設定搜尋管理資料庫。
暫停執行 Search Service 應用程式。 在 Windows PowerShell 命令提示字元處,輸入下列命令:
$ssa = Get-SPEnterpriseSearchServiceApplication <SearchServiceApplicationName> Suspend-SPEnterpriseSearchServiceApplication -Identity $ssa
其中:
- SearchServiceApplicationName 是您想暫停之 Search Service 應用程式的名稱。
注意事項
[!附註] Search Service 應用程式暫停時,SharePoint Server 2013 Service Pack 1 (SP1) 環境中的索引不會更新。 這表示升級到 SharePoint Server 2016 的期間,搜尋結果可能不是最新的。
將 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列中的搜尋管理資料庫複製到 SharePoint Server 2016 伺服器陣列,請遵循 將資料庫複製到新伺服器陣列以升級到 SharePoint Server 2016 中的程序 (僅適用於搜尋管理資料庫)。
重要事項
在 SharePoint Server 2016 環境中執行接下來的步驟。
確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2016 Cmdlet 的權限。
注意事項
[!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 許可權的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 2016 管理命令介面。
針對 Windows Server 2012 R2:在 [ 開始 ] 畫面上,選取 [SharePoint 管理命令介面]。
如果 SharePoint 管理命令介面 不在 [開始 ] 畫面上,請以滑鼠右鍵按兩下 [ 計算機],選取 [ 所有應用程式],然後選取 [SharePoint 管理命令介面]。
如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 中的一般管理工作和導覽。
若要將您想使用的應用程式集區儲存為此服務應用程式的變數,請在 Microsoft PowerShell 命令提示字元處輸入下列命令:
$applicationPool = Get-SPServiceApplicationPool -Identity 'SharePoint Web Services default'
其中:
- SharePoint Web Services 預設 是將包含新服務應用程式的服務應用程式集區名稱。
此 Cmdlet 將服務應用程式集區設為變數,以便接下來的 Cmdlet 再次使用。 若您有多個應用程式集區,且必須為特定的服務應用程式使用不同的應用程式集區,可在程序中重複此步驟,以建立每個服務應用程式使用適當的應用程式集區。
若要還原 Search Service 應用程式並升級搜尋管理資料庫,請在 Microsoft PowerShell 命令提示字元中,輸入下列命令:
$searchInst = Get-SPEnterpriseSearchServiceInstance -local # Gets the Search service instance and sets a variable to use in the next command Restore-SPEnterpriseSearchServiceApplication -Name '<SearchServiceApplicationName>' -applicationpool $applicationPool -databasename '<SearchServiceApplicationDBName>' -databaseserver <ServerName> -AdminSearchServiceInstance $searchInst
其中:
Search Service 應用程式名稱 是 Search Service 應用程式的名稱。
$applicationpool 是您設定的變數,以識別要使用的服務應用程式集區。
提示
[!提示] 如果您不使用變數 $applicationPool,則必須以「 Application Pool Name」格式指定現有服務應用程式集區的名稱。 若要檢視服務應用程式集區清單,您可以執行 Get-SPServiceApplicationPool Cmdlet。
SearchServiceApplicationDBName 是您要升級之搜尋管理資料庫的名稱,而此 Search Service 應用程式將會使用。
$searchInst 是您設定以識別新 Search Service 應用程式執行個體的變數。
附註 :由於網路或 SQL Server 延遲等狀況,Search Service 應用程式升級可能會失敗。 升級期間若出現錯誤訊息,請執行以下操作:
刪除您嘗試要升級的「搜尋管理」資料庫。
使用您建立的「搜尋管理」資料庫備份複本,僅針對 Search Service 應用程式,重複執行以下本文所述的程序:
在 Microsoft PowerShell 命令提示字元處輸入命令,以再次升級 Search Service 應用程式。
如需詳細資訊,請參閱 Restore-SPEnterpriseSearchServiceApplication。
建立 Search Service Application Proxy,並完成這些動作,將它新增至預設的 Proxy 群組:
輸入下列命令以取得 Search Service 應用程式的識別碼,並將其儲存為變數:
$ssa = Get-SPEnterpriseSearchServiceApplication
如需詳細資訊,請參閱 Get-SPEnterpriseSearchServiceApplication。
輸入下列命令,建立 Search Service 應用程式的 Proxy:
New-SPEnterpriseSearchServiceApplicationProxy -Name ProxyName -SearchApplication $ssa
其中:
Proxy 名稱 是要使用的 Proxy 名稱。
$sss 是您早先設定的變數,以識別新的 Search Service 應用程式。
提示 :如果您不使用變數 $ssa,則必須以識別碼代替名稱來識別 Search Service 服務應用程式。 若要尋找識別碼,您可以執行 Get-SPServiceApplication Cmdlet 來傳回所有服務應用程式識別碼的清單。
如需詳細資訊,請參閱 New-SPEnterpriseSearchServiceApplicationProxy。
輸入下列命令,為剛建立的 Proxy 取得 Search Service 應用程式 Proxy 識別碼,並將其設定為變數 $ssap:
$ssap = Get-SPEnterpriseSearchServiceApplicationProxy
如需詳細資訊,請參閱 Get-SPEnterpriseSearchServiceApplicationProxy。
輸入下列命令,將 Search Service 應用程式 Proxy 加入預設的 Proxy 群組:
Add-SPServiceApplicationProxyGroupMember -member $ssap -identity ""
其中:
$ssap 是您早先設定的變數,用以識別剛建立的 Search Service 應用程式 Proxy 識別碼。
提示 :如果您不使用變數 $ssap,則必須以識別碼代替名稱來識別 Search Service 服務應用程式 Proxy。 若要尋找識別碼,您可以執行 Get-SPServiceApplicationProxy Cmdlet 來傳回所有服務應用程式 Proxy 識別碼的清單。
您使用空白的 Identity 參數 ("") 將其新增至預設群組。
如需詳細資訊,請參閱 Add-SPServiceApplicationProxyGroupMember。
如果 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列使用分割的連結資料庫,請以同樣方式分割 SharePoint Server 2016 伺服器陣列中的連結資料庫。 若要了解執行方式,請參閱<Move-SPEnterpriseSearchLinksDatabases>。
(選擇性) 保留 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列的搜尋相關設定。 由於升級的 Search Service 應用程式會有新建且空白的索引,SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列的搜尋分析資料無法完全保留。 複製 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列的分析報表資料庫,並將其附加至 SharePoint Server 2016伺服器陣列中的 Search Service 應用程式:
在 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列中,複製分析報表資料庫。
在 SharePoint Server 2016 伺服器陣列中,將備份的資料庫還原至新的資料庫伺服器。
在 SharePoint Server 2016 伺服器陣列中,將還原的資料庫附加至新的 Search Service 應用程式。
確認新 SharePoint Server 2016 伺服器陣列上的搜尋拓撲與 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列上的相似。 如果您的搜尋要求已變更,現在正是時候擴充新 SharePoint Server 2016 伺服器陣列的搜尋拓撲。
恢復 SharePoint Server 2013 Service Pack 1 (SP1) 環境中的 Search Service 應用程式。
在 PowerShell 命令提示字元中,輸入下列命令:
$ssa = Get-SPEnterpriseSearchServiceApplication <SearchServiceApplicationName> $ssa.Resume()
其中:
- SearchServiceApplicationName 是您想恢復之 Search Service 應用程式的名稱。
確認所有的新 Proxy 都已在預設 Proxy 群組中
依照下列程序確認建立 Proxy 並加入預設 Proxy 群組的步驟皆可正常運作。
若要使用 PowerShell 確認所有新的 Proxy 都位於預設 Proxy 群組中:
確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2016 Cmdlet 的權限。
附註 :如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 許可權的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 2016 管理命令介面。
若為 Windows Server 2012 R2:
在 [ 開始] 畫面上,選取 [SharePoint 2016 管理命令介面]。
如果 SharePoint 2016 管理命令介面 不在 [開始 ] 畫面上,請以滑鼠右鍵按兩下 [ 計算機],選取 [ 所有應用程式],然後選取 [SharePoint 2016 管理命令介面]。
如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 中的一般管理工作和導覽。
在 PowerShell 命令提示字元處,輸入下列命令:
$pg = Get-SPServiceApplicationProxyGroup -Identity "" $pg.Proxies
其中:
$pg 是您設定的變數,用來代表預設 Proxy 群組。
您使用空白的 Identity 參數 ("") 指定預設 Proxy 群組。
這樣會傳回預設 Proxy 群組的所有 Proxy 清單、顯示名稱與識別碼。
如需詳細資訊,請參閱 Get-SPServiceApplicationProxyGroup。
服務應用程式既已升級,您便可開始執行程序,升級內容資料庫。 第一步就是建立各個內容資料庫需要的 Web 應用程式。
階段 | 描述 |
---|---|
此為將 SharePoint Server 2013 Service Pack 1 (SP1) 資料及網站升級至 SharePoint Server 2016 之程序中的第三階段。 如需完整程序的概觀,請參閱<SharePoint Server 2016 升級程序概觀>。 |
下一個階段:將內容資料庫升級到 SharePoint Server 2016
另請參閱
概念
建立資料庫附加升級的 SharePoint Server 2016 伺服器陣列
將資料庫複製到新伺服器陣列以升級到 SharePoint Server 2016
將內容資料庫升級到 SharePoint Server 2016
SharePoint Server 2016 的服務升級概觀