本文為機器翻譯文章。如需檢視英文版,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

在 SharePoint 2013 中疑難排解資料庫的升級問題

 

適用版本:SharePoint Foundation 2013, SharePoint Server 2013

上次修改主題的時間:2016-12-16

摘要:了解如何解決將資料庫升級至 SharePoint 2013 之後可能發生的問題。

即使在您測試升級程序找出潛在問題之後,從 SharePoint 2010 產品升級為 SharePoint 2013 期間,還是有可能會遇到未預期的問題。若在升級後遇到問題,愈早偵測並修正問題,使用者經驗會愈佳。

本文包含常見問題的清單,並說明找出及解決升級問題的一般原則,同時包括常見問題清單。在找出並解決問題之後,即可繼續升級。如需如何繼續升級的詳細資訊,請參閱<重新啟動升級到 SharePoint 2013 的資料庫附加升級或網站集合升級>。

檢查升級狀態以找出升級停止位置 (若已停止),並查看記錄檔以找出錯誤或警告。接著,解決所發現的問題,然後再繼續升級。

升級狀態指示及記錄檔可指示出您升級程序期間發生錯誤的地方。建議您謹慎檢閱記錄在升級記錄檔中的所有錯誤。警告不一定表示問題,但您應全部加以檢閱,以判斷是否有任何警告可能導致更多問題。

  1. 檢閱 SharePoint 管理中心網站中的 [升級狀態] 頁面。

    如需如何檢查升級狀態的詳細資訊,請參閱<在 SharePoint 2013 中驗證資料庫的升級>。

  2. 請檢閱下列記錄檔:

    • 升級錯誤記錄檔及升級記錄檔 (包含比升級錯誤記錄檔更詳細的資訊)。

    • ULS 或追蹤記錄檔。

      這些檔案儲存在 %COMMONPROGRAMFILES%\Microsoft Shared\Web Server Extensions\15\LOGS 資料夾中,名為 Servername_YYYYMMDD-MMSS.log。

    • 應用程式事件記錄檔。

      使用 [事件檢視器] 可檢視此檔案。

    如需升級記錄檔的詳細資訊,請參閱在 SharePoint 2013 中驗證資料庫的升級。如需在追蹤記錄檔的詳細資訊,請參閱 MSDN 上的追蹤記錄檔

某些問題的影響力比其他問題高。例如,缺少伺服器端檔案會在網站層級上造成許多看似無關的錯誤。

依下列順序解決問題:

  1. 缺少伺服器端檔案或自訂,例如功能或網頁組件。

    請務必安裝所有伺服器端自訂,如功能、網頁組件等等。請務必將自訂安裝至新伺服器陣列中的正確位置。例如,SharePoint 2010 產品必要的其他樣式表必須安裝到 /14 路徑而不是新的 /15 路徑,這樣尚未升級的網站集合才能使用它們。另外也請確定已將 Web.config 檔案中針對每一個 Web 應用程式的所有唯一設定轉移至新的伺服器。

  2. 伺服器陣列、Web 應用程式或服務應用程式中的設定問題,例如管理路徑或尚未啟動的服務應用程式。

  3. 您對照網站所發現的其他問題,從易注意到或非常重要的網站開始。

在您找出並修正最上層的問題之後,可嘗試重新執行升級,以了解升級程序之後發生的任何問題是否也已修正。

查看是否有下列任一問題導致升級錯誤或警告。

  • A:不支援從 SharePoint 2013 測試版升級至 SharePoint 2013 發行版。

    測試版僅供測試,不應該用於生產環境中。也不支援從測試版升級至另一個測試版。

  • A:在升級前識別所有伺服器端自訂並安裝它們

升級期間一項常見的錯誤是遺失伺服器端檔案,包括隨 SharePoint 2010 產品安裝的檔案或自訂檔案。當您準備升級時,應建立網站必需之伺服器端自訂的詳細目錄,例如網站定義、範本、功能、網頁組件、組件。查看此詳細目錄,確定新的環境中已安裝自訂所需的所有檔案。

您可以在升級資料庫前使用 test-spcontentdatabaseWindows PowerShell Cmdlet 找出所有遺失的檔案。您也可以使用 Stsadm.exe 中的 enumallwebs 作業,找出所使用的伺服器端自訂。

在升級記錄檔中,可能會看到如下錯誤:

  • 錯誤:在 ContentDatabase (內容資料庫名稱) 中,找到使用缺少之網站範本 (網站範本識別碼 (lcid:網站範本語言碼)) 的參考計數網站。

  • 錯誤:找到缺少的功能識別碼 = [功能識別碼]

  • 警告:檔案 [相對檔案路徑] 已在資料庫中參照 [參照計數] 次,但尚未安裝在目前的伺服器陣列上。

  • 警告:網頁組件類別 [網頁組件識別碼] 已在資料庫中參照 [參照計數] 次,但尚未安裝在目前的伺服器陣列上。

  • 警告:已在資料庫中參照組件 [組件路徑],但尚未安裝在目前的伺服器陣列上。

  • 警告:無法升級功能。例外狀況:找不到功能定義識別碼 '功能識別碼'

若可取得遺失的伺服器端檔案或相依項目,請加以安裝後再針對受影響的網站重新執行升級。若檔案或相依項目 (例如網頁組件) 已遭取代,即必須調查是否要重新建立網站、頁面或網頁組件,以使用不同的範本、功能或網頁組件。若可使用尚未遭取代的相依項目重新進行自訂,即可針對受影響的網站重新執行升級。若無法移除相依項目,則無法升級該網站。

安裝遺失的檔案或相依項目之後,請在測試伺服器上使用 test-SPContentDatabaseWindows PowerShell Cmdlet,判斷該資料庫是否還有其他任何遺失的檔案。若只重新執行升級,錯誤雖然仍可能持續發生,但記錄檔中可能不會顯示該錯誤。

  • A:確認您的伺服器陣列和 Web 應用程式設定。

  • A:建立並啟動遺失的服務應用程式。

  • A:確認每個 Web 應用程式的管理路徑 (包含的路徑) 均已正確設定。

在升級記錄檔中,可能會看到如下錯誤:

  • 錯誤:由於例外狀況,無法存取範本 範本 ID: SPSite 識別碼=網站識別碼。略過範本升級的 SPWeb 識別碼=網頁識別碼。例外狀況:System.IO.FileNotFoundException:找不到識別碼網站識別碼的網站。

    此錯誤表示管理路徑遺失。請將網站集合的管理路徑新增至 Web 應用程式,並重新啟動包含此網站集合之內容資料庫的升級。

  • A:確認電源連接以及與網路和 SQL Server 的連線。遺失與資料來源的連線會導致錯誤。若伺服器無法連線至資料庫,則無法升級。

  • A:重試升級之前先清理孤立網站、清單及其他資料庫毀損。如需如何清理資料問題的詳細資訊,請參閱<升級到 SharePoint 2013 之前清理環境>。

    在升級記錄檔中,可能會看到如下錯誤:

    • 警告:孤立的網站可能會造成升級失敗。

    • 錯誤:資料庫 [內容資料庫名稱] 含有在網站地圖上找不到的網站 (識別碼 = [網站集合識別碼],Url = [網站集合 URL])。

    修正任何孤立項目或資料庫損毀,然後再重新執行升級。

  • A:請釋放一些空間,或增加交易記錄檔的大小,然後再繼續升級。若空間用盡 (例如因為資料庫伺服器上的交易記錄檔案),升級將無法繼續。

    如需詳細資訊,請參閱 <管理交易記錄檔的大小

  • A:確定 Web 應用程式使用正確的驗證方法。

不相符的驗證方法會在升級時導致問題。如果您的驗證方法不相符,下列資源能夠提供協助:

  • A:若出現有關不明帳戶的錯誤,或資料庫未升級,請檢查資料庫的權限。特別是 SQL Server 的執行個體之間,務必確認安全性已正確設定。請檢查您使用的登入帳戶對於資料庫,是否具有適當的固定角色及權限,以及當您跨網域執行升級作業時,該帳戶是否仍然有效。

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

  • A:確認資料庫不是設為唯讀。唯讀資料庫無法進行升級。附加和升級資料庫之前,請確定將資料庫設為讀-寫。

  • A: 在還原階段重新命名資料庫的時候,必須也要重新命名檔案系統 (MDF 與 LDF 檔案) 中資料庫和記錄檔的名稱,這樣它們的名稱才會相符。

  • A: 可以備份 Search Service 應用程式管理資料庫之前,必須先停止 SharePoint Server 2010 伺服器陣列上的 Search Service。若要停止 Search Service,在原始的伺服器陣列上,依序按一下 [開始] 功能表、[系統管理工具]、[服務]。以滑鼠右鍵按一下 [SharePoint Server Search 14],然後按一下 [停止]。請務必在備份資料庫之後才重新啟動服務。

  • A: 升級後您必須手動為 Excel Services 建立所有信任的資料連線。

  • A: 確認「工作流程自動清除」計時器工作是關閉的。若您已在 SharePoint 2010 產品 環境中停用「工作流程自動清除」計時器工作,請務必在新的環境中也停用這個計時器工作。若此計時器工作在新環境中是啟用的,但在 SharePoint 2010 產品環境中是停用的,那麼當您升級時可能會遺失工作流程關聯性。

  • 答:關於使用者設定檔方面的問題,請確定已執行「使用者設定檔至 SharePoint 完整同步處理」工作。

    如果您在移轉程序尚未完成時就啟動「使用者設定檔至 SharePoint 完整同步處理」工作 (自動或手動),部分使用者可能不會受到移轉。您可以等移轉完成之後,在 Windows PowerShell 中執行下列 Cmdlet 來清除同步資料,然後就可以重新執行「使用者設定檔至 SharePoint 完整同步處理」工作來納入這些未移轉的使用者。

    $database = Get-SPContentDatabase "DatabaseName"
    [Microsoft.Office.Server.UserProfiles.WSSProfileSynch]::ClearSyncDataForContentDatabase($database)
    

    其中,DatabaseName 是與過期使用者設定檔相關聯之網站集合的內容資料庫名稱。

  • 問:確認使用者是否存在於 Active Directory 網域中。

    如果使用者不存在,您可以在 UserInfo 表格中將使用者標示為已刪除。如果使用者存在,您可以重新執行移轉。如需詳細資訊,請參閱<在 SharePoint 2013 中從傳統模式移轉至宣告式驗證>。

https://technet.microsoft.com/zh-tw/library/ff382638.aspx
顯示: