共用方式為


將內容資料庫升級至 SharePoint Server 2019

適用於:no-img-13 2013yes-img-16 2016yes-img-19 2019no-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

當您從 SharePoint Server 2016 升級至 SharePoint Server 2019 時,必須使用資料庫附加升級,這表示您僅會升級環境的內容,而不是組態設定。 設定 SharePoint Server 2016 環境、複製內容與服務應用程式資料庫,以及升級服務應用程式之後,您可以將內容資料庫附加及升級到 SharePoint Server 2019。 本文說明將內容資料庫附加及升級到 SharePoint Server 2019 所採取的步驟。

升級程序階段 4:升級內容資料庫

升級程序階段 4:升級內容資料庫

階段 描述
123 步驟 此為將 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 操作,並使用 includefeaturesincludewebparts 參數。 此作業可報告各網站所使用的範本、功能、網頁組件與其他自訂元素。 如需如何使用 enumallwebs 操作的詳細資訊,請參閱 Enumallwebs: Stsadm 作業 (Office SharePoint Server)

您也可以在 SharePoint Server 2016 環境中使用 Get-SPWeb Cmdlet,查看各網站相關聯的範本,然後確認 SharePoint Server 2019 環境已安裝範本。 如需此作業的詳細資訊,請參閱 Get-SPWeb

將內容資料庫附加到 Web 應用程式之前,請使用 Test-SPContentDatabase Cmdlet,確認您具有該資料庫要求的所有自訂元件。

使用 PowerShell 驗證自訂元件是否可用

  1. 確認您具備下列成員身分:
  • SQL Server 執行個體上的 securityadmin 固定伺服器角色。

  • 所有要更新之資料庫上的 db_owner 固定資料庫角色。

  • 正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。

    系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2016 Cmdlet 的權限。

    注意事項

    [!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 權限的其他資訊,請參閱 Add-SPShellAdmin

  1. 啟動 SharePoint 2019 管理命令介面。

  2. 在 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-SPSiteRestore-SPSite PowerShell Cmdlet 將網站集合複製到另一個伺服器數位。 備份與還原程序會建立網站集合的新 GUID。 如需這些 Cmdlet 的詳細資訊,請參閱 Backup-SPSiteRestore-SPSite

如果是 我的網站,請在附加包含 我的網站 的資料庫前,附加包含 我的網站 主機的內容資料庫。

根據預設,您在新 SharePoint Server 2019 環境建立 Web 應用程式時,各 Web 應用程式會建立內容資料庫。 附加 SharePoint Server 2016 資料庫後,便可忽略這些預設資料庫,也可刪除預設資料庫。

重要事項

如果跨網域或樹系移動內容資料庫,或將內容資料庫移至其他具有不同服務帳戶的環境,請確認這些服務帳戶的權限在您附加資料庫之前仍是正確的。

注意事項

升級期間常見的失敗原因之一,是環境缺少自訂的功能、解決方案或其他元素。 請務必確認 SharePoint Server 2016 環境的所有自訂元素皆已在您升級內容資料庫前,安裝到 SharePoint Server 2019 環境的伺服器。 請使用 Test-SPContentDatabase Cmdlet 識別網站可能遺失的自訂元素。

使用 PowerShell 將內容資料庫附加到 Web 應用程式

  1. 您必須使用 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

  1. 啟動 SharePoint 2019 管理命令介面。

  2. 在 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 檢視所有資料庫的升級狀態

  1. 確認您具備下列成員身分:
  • SQL Server 執行個體上的 securityadmin 固定伺服器角色。

  • 所有要更新之資料庫上的 db_owner 固定資料庫角色。

  • 正在執行 PowerShell Cmdlet 之所在伺服器上的系統管理員群組。

    系統管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint Server 2019 Cmdlet 的權限。

    注意事項

    [!附註] 如果您不具備上述權限,請連絡安裝程式系統管理員或 SQL Server 系統管理員要求權限。 如需 PowerShell 權限的其他資訊,請參閱 Add-SPShellAdmin

  1. 啟動 SharePoint 2019 管理命令介面。

  2. 在 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 中備份伺服器陣列>。

階段 描述
123 步驟 此為將 SharePoint Server 2016 產品資料及網站升級至 SharePoint Server 2019 之程序的第四階段。
如需完整程序的概觀,請參閱SharePoint Server 2019 升級程序概觀