將內容資料庫升級至 SharePoint Server 2019
適用於:Subscription Edition SharePoint in Microsoft 365
當您從 SharePoint Server 2016 升級至 SharePoint Server 2019 時,必須使用資料庫附加升級,這表示您僅會升級環境的內容,而不是組態設定。 設定 SharePoint Server 2016 環境、複製內容與服務應用程式資料庫,以及升級服務應用程式之後,您可以將內容資料庫附加及升級到 SharePoint Server 2019。 本文說明將內容資料庫附加及升級到 SharePoint Server 2019 所採取的步驟。
升級程序階段 4:升級內容資料庫
階段 | 描述 |
---|---|
此為將 SharePoint Server 2016 產品資料及網站升級至 SharePoint Server 2019 之程序的第四階段。 程序中包含必須依序完成的下列階段: 建立資料庫連結升級的 SharePoint Server 2019 伺服器陣列 將資料庫複製到新伺服器陣列以升級到 SharePoint Server 2019 將服務應用程式升級到 SharePoint Server 2019 將內容資料庫升級到 SharePoint Server 2019 (這個階段) 如需完整程序的概觀,請參閱SharePoint Server 2019 升級程序概觀。 |
開始之前
附加及升級內容資料庫之前,請檢閱下列資訊,並採取建議的動作。
請確定附加資料庫所用帳戶為所有要升級之資料庫的 db_owner 固定資料庫角色成員。
請確認您用來建立 Web 應用程式的帳戶是管理中心中的伺服器陣列管理員群組成員。
建立 Web 應用程式
為 SharePoint Server 2016 環境中的每一個 Web 應用程式各建立 Web 應用程式。 對於每個 Web 應用程式,請執行下列作業:
使用相同的 URL (包含名稱、連接埠和主機標頭) 並設定備用存取對應設定。
如果使用不同的 URL,Office 應用程式可能無法正確重新導向至新的 URL,而且任何舊的 URL 的書籤也無法運作。
使用相同驗證方法。
因為宣告式驗證現在是 SharePoint Server 2019 的預設選項,您必須使用 Microsoft PowerShell 才能建立使用 Windows 傳統驗證的 Web 應用程式。 .
重新建立受管理的路徑。
重新建立配額範本。
設定 Web 應用程式的電子郵件設定。
針對在舊版環境中使用自助網站架設的所有 Web 應用程式,啟用此功能。 重新建立所有自助網站架設設定。
針對 Web 應用程式上主控 我的網站 的 我的網站 (/personal) 建立受管理路徑。 我的網站 只可在 SharePoint Server 取得。
重新建立您已在舊環境中設定的 Web 應用程式原則是或其他 Web 應用程式設定。
重新套用自訂
升級期間常見的失敗原因之一,就是新環境缺少自訂的功能、解決方案或其他元素。 請務必確認 SharePoint Server 2016 環境的所有自訂元素皆已在您升級內容資料庫前,安裝到前端網頁伺服器。
在此步驟,您需手動將所有自訂項目轉移到新的伺服器陣列中。 請務必安裝網站賴以正常運作的所有元件,例如下列項目:
自訂網站定義
自訂樣式表,例如階層式樣式表與圖像
自訂網頁組件
自訂網頁服務
自訂功能與解決方案
自訂組件
Web.config 變更 (例如安全性)
確定您已將 Web.config 檔案中針對各 Web 應用程式的所有唯一設定轉移至新的伺服器。
InfoPath 的管理員核准之表單範本 (.xsn 檔案) 與資料連線檔案 (.udcx 檔案)。
網站依存的其他所有元件或檔案。
SharePoint Server 2019 的安裝會繼續使用 16 作為其主要版本號碼,檔案系統路徑也會如此。
驗證自訂元件
若要確認是否已識別所有環境的自訂元件,請使用 SharePoint Server 2016 環境中的 Stsadm -o enumallwebs 操作,並使用 includefeatures 與 includewebparts 參數。 此作業可報告各網站所使用的範本、功能、網頁組件與其他自訂元素。 如需如何使用 enumallwebs 操作的詳細資訊,請參閱 Enumallwebs: Stsadm 作業 (Office SharePoint Server)。
您也可以在 SharePoint Server 2016 環境中使用 Get-SPWeb Cmdlet,查看各網站相關聯的範本,然後確認 SharePoint Server 2019 環境已安裝範本。 如需此作業的詳細資訊,請參閱 Get-SPWeb。
將內容資料庫附加到 Web 應用程式之前,請使用 Test-SPContentDatabase Cmdlet,確認您具有該資料庫要求的所有自訂元件。
使用 PowerShell 驗證自訂元件是否可用
- 確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2016 Cmdlet 的權限。
注意事項
[!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 權限的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 2019 管理命令介面。
在 PowerShell 命令提示字元中,輸入下列命令:
Test-SPContentDatabase -Name DatabaseName -WebApplication URL
Where:
DatabaseName 是要測試的資料庫名稱。
URL 是要架設網站的 Web 應用程式 URL。
如需詳細資訊,請參閱<Test-SPContentDatabase>。
將內容資料庫附加到 Web 應用程式,並升級該資料庫
附加內容資料庫時,請升級資料庫,並將該資料庫中的網站集合新增至您指定的 Web 應用程式。 在升級資料庫之後,預設會自動啟動網站集合升級程序。
附加內容資料庫時,若 Web 應用程式跨越多個內容資料庫,請先確認您已附加包含根網站集合的內容資料庫。 換句話說,即先檢查 SharePoint Server 2016 伺服器陣列中的 Web 應用程式根網站,判斷第一個網站集合後,再繼續作業。 附加包含根網站的資料庫之後,即可依任何順序為 Web 應用程式附加其他內容資料庫。 附加資料庫前,無須建立任何網站集合來儲存內容。 此程序會附加資料庫內容的內容資料庫與網站集合。 還原所有內容資料庫之前,請勿增加任何新的網站集合。
提示
[!提示] 內容資料庫的所有網站集合都有 GUID,登錄在設定資料庫並與網站集合相關聯。 因此,即使在不同的 Web 應用程式中,亦不可重複將相同的網站集合新增至伺服器陣列。 雖然在此情況下仍可成功附加資料庫,卻無法瀏覽網站集合。 > 如果您必須在相同伺服器陣列中擁有網站集合的複本,請先將包含網站集合的資料庫附加至個別的伺服器陣列,然後使用 Backup-SPSite 和 Restore-SPSite PowerShell Cmdlet 將網站集合複製到另一個伺服器數位。 備份與還原程序會建立網站集合的新 GUID。 如需這些 Cmdlet 的詳細資訊,請參閱 Backup-SPSite 與 Restore-SPSite。
如果是 我的網站,請在附加包含 我的網站 的資料庫前,附加包含 我的網站 主機的內容資料庫。
根據預設,您在新 SharePoint Server 2019 環境建立 Web 應用程式時,各 Web 應用程式會建立內容資料庫。 附加 SharePoint Server 2016 資料庫後,便可忽略這些預設資料庫,也可刪除預設資料庫。
重要事項
如果跨網域或樹系移動內容資料庫,或將內容資料庫移至其他具有不同服務帳戶的環境,請確認這些服務帳戶的權限在您附加資料庫之前仍是正確的。
注意事項
升級期間常見的失敗原因之一,是環境缺少自訂的功能、解決方案或其他元素。 請務必確認 SharePoint Server 2016 環境的所有自訂元素皆已在您升級內容資料庫前,安裝到 SharePoint Server 2019 環境的伺服器。 請使用 Test-SPContentDatabase Cmdlet 識別網站可能遺失的自訂元素。
使用 PowerShell 將內容資料庫附加到 Web 應用程式
您必須使用 Mount-SPContentDatabase Cmdlet 將內容資料庫附加到 Web 應用程式。 升級作業不支援使用 SharePoint 管理中心頁面附加內容資料庫。
如果想要延後網站升級,您可以使用 Mount-SPContentDatabase Cmdlet 的 SkipSiteUpgrade 參數。
注意事項
使用 Mount-SPContentDatabase Cmdlet 附加內容資料庫是在 SharePoint Server 2016 升級資料庫和網站集合的建議行為和選項。
請確認您附加資料庫所使用的帳戶是 db_owner 待更新內容資料庫的固定資料庫角色成員。
確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2019 Cmdlet 的權限。
注意事項
[!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 權限的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 2019 管理命令介面。
在 PowerShell 命令提示字元處輸入下列命令,然後按 ENTER :
Mount-SPContentDatabase -Name DatabaseName -DatabaseServer ServerName -WebApplication URL
Where:
DatabaseName 是要升級的資料庫名稱。
ServerName 是儲存資料庫所在的伺服器。
URL 是要架設網站的 Web 應用程式 URL。
如需詳細資訊,請參閱 Mount-SPContentDatabase。 在升級資料庫之後,網站集合會自動升級。 如需如何升級網站集合的詳細資訊,請參閱將網站集合升級到 SharePoint Server 2019。
驗證第一個資料庫的升級
附加資料庫之後,您可以使用管理中心中的 [升級狀態] 頁面來檢查您資料庫的升級狀態。 當升級程序完成之後,您可以檢閱升級記錄檔來查看升級是否造成問題。 You can use a PowerShell cmdlet to check the upgrade status for all the content databases. 如需對升級進行驗證和疑難排解的詳細資訊,請參閱在 SharePoint Server 2019 中驗證資料庫升級。
檢視「升級狀態」頁面
確認執行此程序的使用者帳戶為 db_owner 固定資料庫角色的成員。
在管理中心中,按一下 [升級與移轉],然後按一下 [檢查升級狀態]。
檢視升級記錄檔
升級錯誤記錄檔及升級記錄檔位於 %COMMONPROGRAMFILES%\Microsoft Shared\web server extensions\16\LOGS。 升級記錄檔包含的資訊比升級錯誤記錄檔要詳細。 請務必查看記錄檔下方的摘要,了解整體狀態與檔案的警告與錯誤計數相關資訊。
記錄檔為文字檔,並依下列格式命名:
Upgrade-YYYYMMDD-HHMMSS-SSS-error.log
Upgrade-YYYYMMDD-HHMMSS-SSS.log
其中
YYYYMMDD 是日期
HHMMSS-SSS 是時間 (24 小時制的時、分、秒及毫秒)
例如,升級錯誤記錄檔為 Upgrade-20120105-132126-374-error.log,升級記錄檔為 Upgrade-20120105-132126-374.log。
注意事項
[!附註] SharePoint Server 2016 升級記錄檔的格式結構與 ULS 相同。 > 升級記錄檔包含要升級的內容資料庫名稱。
使用 PowerShell 檢視所有資料庫的升級狀態
- 確認您具備下列成員身分:
SQL Server 執行個體上的 securityadmin 固定伺服器角色。
所有要更新之資料庫上的 db_owner 固定資料庫角色。
正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。
系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2019 Cmdlet 的權限。
注意事項
[!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 權限的其他資訊,請參閱 Add-SPShellAdmin。
啟動 SharePoint 2019 管理命令介面。
在 PowerShell 命令提示字元中,輸入下列命令:
Get-SPContentDatabase | ft Name, NeedsUpgradeIncludeChildren
此 Cmdlet 會傳回伺服器陣列資料庫的表格樣式清單,說明資料庫是否需要升級至 SharePoint Server 2019。
附加其餘資料庫
還原第一個內容資料庫並驗證成功後,您可繼續還原並更新其他資料庫。 您可執行平行資料庫附加升級,一次可為一個以上的資料庫升級。 請使用個別的 Microsoft PowerShell 命令來執行多個升級作業。 建議您讓每個新資料庫升級工作階段的開始時間相隔數分鐘,避免在附加時發生 Web 應用程式遭暫時鎖定的問題。 否則您可能收到升級工作階段的錯誤。 清除暫時鎖定的等候時間須視網站集合數目,或是資料庫伺服器硬體速度而有所不同。
驗證其他資料庫的升級
升級所有其他資料庫後,請檢視「升級狀態」頁面,監視進度並確認該升級程序已完成。 檢閱記錄檔,找出其他問題。
後續步驟
升級資料庫後,您可能會想執行其他步驟來確認伺服器陣列已準備就緒。 例如:
必要時,將使用者帳戶移轉到宣告驗證。
根據預設,SharePoint Server 2019 中的新 Web 應用程式是使用宣告驗證。 若在舊環境中使用傳統驗證,則必須將使用者移轉到宣告驗證。
更新所有升級 InfoPath 表單範本中所用的連結。
若為資料庫附加升級,在您建立新的環境時,會匯出及匯入環境中所有 InfoPath 表單範本。 升級後,可使用 Microsoft PowerShell Cmdlet,更新這些升級表單範本中所用的連結,以指向正確的 URL。
InfoPath 只能在 SharePoint Server 中使用。
執行完整編目
如需詳細資訊,請參閱<Start, pause, resume, or stop a crawl in SharePoint Server>。
備份伺服器陣列
如需詳細資訊,請參閱<在 SharePoint Server 中備份伺服器陣列>。
階段 | 描述 |
---|---|
此為將 SharePoint Server 2016 產品資料及網站升級至 SharePoint Server 2019 之程序的第四階段。 如需完整程序的概觀,請參閱SharePoint Server 2019 升級程序概觀。 |