將內容資料庫升級到 SharePoint Server 2016

 

**適用版本:**SharePoint Server 2016

**上次修改主題的時間:**2017-05-30

**摘要:**了解如何將內容資料庫從 SharePoint 2013 升級到 SharePoint Server 2016。

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

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

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

123 steps

此為將 SharePoint Server 2013 Service Pack 1 (SP1) 資料及網站升級至 SharePoint Server 2016 之程序中的第四階段。程序中包含下列必須依序完成的階段:

  1. 建立資料庫附加升級的 SharePoint Server 2016 伺服器陣列

  2. 將資料庫複製到新伺服器陣列以升級到 SharePoint Server 2016

  3. 將服務應用程式升級到 SharePoint Server 2016

  4. 將內容資料庫升級到 SharePoint Server 2016 (這個階段)

如需完整程序的概觀,請參閱<SharePoint Server 2016 升級程序概觀>。

開始之前

附加及升級內容資料庫之前,請檢閱下列資訊,並採取建議的動作。

  • 請確定附加資料庫所用帳戶為所有要升級之資料庫的 db_owner 固定資料庫角色成員。

  • 請確認您用來建立 Web 應用程式的帳戶是管理中心中的伺服器陣列管理員群組成員。

建立 Web 應用程式

針對存在 SharePoint Server 2013 Service Pack 1 (SP1) 環境中的每個 Web 應用程式建立 Web 應用程式。對於每個 Web 應用程式,請執行下列作業:

  • 使用相同的 URL (包含名稱、連接埠和主機標頭) 並設定備用存取對應設定。

    如果使用不同的 URL,Office 應用程式可能無法正確重新導向至新的 URL,而且任何舊的 URL 的書籤也無法運作。

  • 使用相同驗證方法。

    例如,若您在舊環境中使用 Windows 傳統驗證,而您想繼續使用,則必須建立使用 Windows 傳統驗證的 Web 應用程式。因為宣告式驗證現在是 SharePoint Server 2016 的預設選項,您必須使用 PowerShell 才能建立使用 Windows 傳統驗證的 Web 應用程式。

  • 重新建立受管理的路徑。

  • 重新建立配額範本。

  • 設定 Web 應用程式的電子郵件設定。

  • 針對在舊版環境中使用自助網站架設的所有 Web 應用程式,啟用此功能。重新建立所有自助網站架設設定。

  • 針對 Web 應用程式上主控 我的網站 的 我的網站 (/personal) 建立受管理路徑。我的網站 只可在 SharePoint Server 取得。

  • 重新建立您已在舊環境中設定的 Web 應用程式原則是或其他 Web 應用程式設定。

重新套用自訂

升級期間常見的失敗原因之一,就是新環境缺少自訂的功能、解決方案或其他元素。請務必確認 SharePoint Server 2013 Service Pack 1 (SP1) 環境的所有自訂元素皆已在您升級內容資料庫前,安裝到前端網頁伺服器。

在此步驟,您需手動將所有自訂項目轉移到新的伺服器陣列中。請務必安裝網站賴以正常運作的所有元件,例如下列項目:

  • 自訂網站定義

  • 自訂樣式表,例如階層式樣式表與圖像

  • 自訂網頁組件

  • 自訂網頁服務

  • 自訂功能與解決方案

  • 自訂組件

  • Web.config 變更 (例如安全性)

    確定您已將 Web.config 檔案中針對各 Web 應用程式的所有唯一設定轉移至新的伺服器。

  • InfoPath 的管理員核准之表單範本 (.xsn 檔案) 與資料連線檔案 (.udcx 檔案)。InfoPath 只可在 SharePoint Server 2010 取得。

  • 網站依存的其他所有元件或檔案。

安裝包含許多元素的 SharePoint Server 2013 Service Pack 1 (SP1) 與 SharePoint Server 2016 版本。檔案系統目錄的 15 與 16 路徑皆為重複項目,例如:

  • Web Server Extensions/15/TEMPLATE/Features

  • Web Server Extensions/16/TEMPLATE/Features

IIS 也有兩個版本支援目錄:_Layouts、_Layouts/16 與 _ControlTemplates、_ControlTemplates/16。

請務必將自訂安裝到新伺服器陣列的正確位置。例如 SharePoint Server 2013 Service Pack 1 (SP1) 的其他樣式表應安裝於 /15 路徑,而非新 /16 路徑,這樣您還未升級的網站集合才能使用。如果您想在這兩個路徑中提供解決方案,請安裝兩次,並在第二次安裝時使用 CompatibilityLevel 參數以安裝至 /16 路徑。如需詳細資訊,請參閱 Install-SPSolution

驗證自訂元件

若要確認是否已識別所有環境的自訂元件,請使用 SharePoint Server 2013 Service Pack 1 (SP1) 環境中的 Stsadm -o enumallwebs 操作,並使用 includefeaturesincludewebparts 參數。此作業可報告各網站所使用的範本、功能、網頁組件與其他自訂元素。如需如何使用 enumallwebs 操作的詳細資訊,請參閱<Enumallwebs: Stsadm 作業 (Office SharePoint Server)>與<升級到 SharePoint 2013 之前清理環境>。

您也可以在 SharePoint Server 2013 Service Pack 1 (SP1) 環境中使用 Get-SPWeb Cmdlet ,查看各網站相關聯的範本,然後確認 SharePoint Server 2016 環境已安裝範本。如需此作業的詳細資訊,請參閱 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>。

  2. 啟動 SharePoint 2016 管理命令介面。

    • 若為 Windows Server 2012 R2:

      • 在 [開始] 畫面上,按一下 [SharePoint 2016 管理命令介面]。

        如果 [SharePoint 2016 管理命令介面] 不在 [開始] 畫面上:

      • 以滑鼠右鍵依序按一下 [電腦]、[所有應用程式] 與 [SharePoint 2016 管理命令介面]

    如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 的常見管理工作及瀏覽方式

  3. 在 PowerShell 命令提示字元中,輸入下列命令:

    Test-SPContentDatabase -Name DatabaseName -WebApplication URL
    

    其中:

    • DatabaseName 是要測試的資料庫名稱。

    • URL 是要架設網站的 Web 應用程式 URL。

如需詳細資訊,請參閱 Test-SPContentDatabase。

將內容資料庫附加到 Web 應用程式,並升級該資料庫

附加內容資料庫時,請升級資料庫,並將該資料庫中的網站集合新增至您指定的 Web 應用程式。在升級資料庫之後,預設會自動啟動網站集合升級程序。

附加內容資料庫時,若 Web 應用程式跨越多個內容資料庫,請先確認您已附加包含根網站集合的內容資料庫。換句話說,即先檢查 SharePoint Server 2013 Service Pack 1 (SP1) 伺服器陣列中的 Web 應用程式根網站,判斷第一個網站集合後,再繼續作業。附加包含根網站的資料庫之後,即可依任何順序為 Web 應用程式附加其他內容資料庫。附加資料庫前,無須建立任何網站集合來儲存內容。此程序會附加資料庫內容的內容資料庫與網站集合。還原所有內容資料庫之前,請勿增加任何新的網站集合。

提示

內容資料庫的所有網站集合都有 GUID,登錄在設定資料庫並與網站集合相關聯。因此,即使在不同的 Web 應用程式中,亦不可重複將相同的網站集合新增至伺服器陣列。雖然在此情況下仍可成功附加資料庫,卻無法瀏覽網站集合。
若您必須要有同一個伺服器陣列中的網站集合複本,首先將包含網站集合的資料庫附加到不同的伺服器陣列,然後使用 Backup-SPSiteRestore-SPSite PowerShell Cmdlet 將網站集合複製到其他伺服器陣列。備份與還原程序會建立網站集合的新 GUID。如需這些 Cmdlet 的詳細資訊,請參閱 Backup-SPSiteRestore-SPSite

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

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

重要

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

注意

升級期間常見的失敗原因之一,是環境缺少自訂的功能、解決方案或其他元素。請務必確認 SharePoint Server 2013 Service Pack 1 (SP1) 環境的所有自訂元素皆已在您升級內容資料庫前,安裝到 SharePoint Server 2016 環境的前端網頁伺服器。請使用 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 2016 Cmdlet 之權限的系統管理員。

    注意

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

  2. 啟動 SharePoint 2016 管理命令介面。

    • 若為 Windows Server 2012 R2:

      • 在 [開始] 畫面上,按一下 [SharePoint 2016 管理命令介面]。

        如果 [SharePoint 2016 管理命令介面] 不在 [開始] 畫面上:

      • 以滑鼠右鍵依序按一下 [電腦]、[所有應用程式] 與 [SharePoint 2016 管理命令介面]

    如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 的常見管理工作及瀏覽方式

  3. 在 PowerShell 命令提示字元處輸入下列命令,然後按 ENTER

    Mount-SPContentDatabase -Name DatabaseName -DatabaseServer ServerName -WebApplication URL
    

    其中:

    • DatabaseName 是要升級的資料庫名稱。

    • ServerName 是儲存資料庫所在的伺服器。

    • URL 是要架設網站的 Web 應用程式 URL。

如需詳細資訊,請參閱 Mount-SPContentDatabase。在升級資料庫之後,網站集合會自動升級。如需如何升級網站集合的詳細資訊,請參閱<將網站集合升級到 SharePoint Server 2016>。

驗證第一個資料庫的升級

附加資料庫之後,您可以使用管理中心的 [升級狀態] 頁面,檢查資料庫的狀態。升級程序完成後,您可以檢閱升級記錄檔,檢查升級期間是否有任何問題。您可使用 PowerShell Cmdlet 檢查所有內容資料庫的升級狀態。如需驗證與疑難排解升級的詳細資訊,請參閱<在 SharePoint Server 2016 中驗證資料庫升級>。

檢視「升級狀態」頁面

  • 確認執行此程序的使用者帳戶為 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 2016 Cmdlet 之權限的系統管理員。

    注意

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

  2. 啟動 SharePoint 2016 管理命令介面。

    • 若為 Windows Server 2012 R2:

      • 在 [開始] 畫面上,按一下 [SharePoint 2016 管理命令介面]。

        如果 [SharePoint 2016 管理命令介面] 不在 [開始] 畫面上:

      • 以滑鼠右鍵依序按一下 [電腦]、[所有應用程式] 與 [SharePoint 2016 管理命令介面]

    如需如何與 Windows Server 2012 R2 互動的詳細資訊,請參閱 Windows Server 2012 的常見管理工作及瀏覽方式

  3. 在 PowerShell 命令提示字元處,輸入下列命令:

    Get-SPContentDatabase | ft Name, NeedsUpgradeIncludeChildren
    

此 Cmdlet 會傳回伺服器陣列資料庫的表格樣式清單,說明資料庫是否需要升級至 SharePointAll_2nd_CurrentVer。

附加其餘資料庫

還原第一個內容資料庫並驗證成功後,您可繼續還原並更新其他資料庫。您可執行平行資料庫附加升級,一次可為一個以上的資料庫升級。請使用個別的 Microsoft PowerShell 命令來執行多個升級作業。建議您讓每個新資料庫升級工作階段的開始時間相隔數分鐘,避免在附加時發生 Web 應用程式遭暫時鎖定的問題。否則您可能收到升級工作階段的錯誤。清除暫時鎖定的等候時間須視網站集合數目,或是資料庫伺服器硬體速度而有所不同。

驗證其他資料庫的升級

升級所有其他資料庫後,請檢視「升級狀態」頁面,監視進度並確認該升級程序已完成。檢閱記錄檔,找出其他問題。

後續步驟

升級資料庫後,您可能會想執行其他步驟來確認伺服器陣列已準備就緒。例如:

  • 必要時,將使用者帳戶移轉到宣告驗證。

    根據預設,SharePoint Server 2016 中的新 Web 應用程式是使用宣告驗證。若在舊環境中使用傳統驗證,則必須將使用者移轉到宣告驗證。

  • 更新所有升級 InfoPath 表單範本中所用的連結。

    若為資料庫附加升級,在您建立新的環境時,會匯出及匯入環境中所有 InfoPath 表單範本。升級後,可使用 Microsoft PowerShell Cmdlet,更新這些升級表單範本中所用的連結,以指向正確的 URL。

    InfoPath 只能在 SharePoint Server 中使用。

  • 執行完整編目

    如需詳細資訊,請參閱<Start, pause, resume, or stop a crawl in SharePoint Server>。

  • 備份伺服器陣列

    如需詳細資訊,請參閱<在 SharePoint Server 中備份伺服器陣列>。

123 steps

此為將 SharePoint 2010 產品 資料及網站升級至 SharePoint Server 2016 之程序中的第四階段。

如需完整程序的概觀,請參閱<SharePoint Server 2016 升級程序概觀>。