利用試驗升級發掘現潛在的問題 (SharePoint Server 2010)

 

適用版本: SharePoint Server 2010

上次修改主題的時間: 2016-11-30

開始從 Microsoft Office SharePoint Server 2007 升級至 Microsoft SharePoint Server 2010 的程序之前,您可能會想要測試升級程序,以確保確實了解成功升級所需執行的作業。使用試驗升級測試程序,即可了解:

  • 環境中的自訂,以規劃升級期間如何處理這些自訂。

  • 是否應升級硬體,以更有效率且快速地執行升級。

  • 升級的時機,或在您的環境中升級所需的時間。

  • 在作業方面必須規劃的項目,例如可用的資源。

此外,您可以使用試驗升級,以熟悉升級工具及程序本身,讓您可預期執行實際程序時的情況。透過測試,您可以了解:

  • 哪些特殊案例適用於您的環境,以及哪些升級方法對您最有效率?

  • 升級使用者介面的外觀為何?如何了解您已完成一個階段並進入另一個階段?

  • 記錄檔的位置以及讀取方式?提供的資訊包含?

  • 可用於減少停機時間的技術為何?

本文提供測試升級的基本步驟,亦提供建議以檢閱結果,並根據您在測試期間的了解調整升級計劃。

本文內容:

  • 設定測試環境

  • 識別及安裝自訂

  • 將實際資料複製到測試環境並嘗試升級

  • 檢閱結果

  • 調整計劃並重新測試

此外,下列資源可能有助於測試升級程序:

設定測試環境

您可以使用虛擬硬體或實體硬體測試升級程序。每一個環境都是唯一的,因此並沒有針對升級時間長短或升級特定自訂之難度的一般準則。執行一連串的試驗升級是掌握升級程序的最佳作法。

建立測試環境時:

  • 讓測試伺服器陣列儘可能類似實際伺服器陣列,例如在硬體、軟體及可用空間等方面。

  • 在測試伺服器陣列中使用與實際伺服器陣列相同的 URL。(否則,您會浪費時間診斷與實際升級中不會出現之 URL 相關的問題。)

  • 請務必將所有設定與自訂轉移到測試環境。<識別及安裝自訂>一節提供收集此資訊的相關資訊。

使用虛擬測試環境

使用虛擬環境測試時,不需要過多的硬體。您可以只使用兩部執行 Hyper-V 的伺服器複製環境。其中一部伺服器具有前端網頁伺服器與應用程式伺服器的映像,而另一部伺服器具有資料庫伺服器的映像。

試驗升級的虛擬測試環境

使用實體測試環境

使用實體環境進行測試時,必須以儘可能接近環境的方式複製整個伺服器陣列環境。若過度簡化前端網頁伺服器、應用程式伺服器或資料庫伺服器的數目,則無法正確評估升級程序所需的時間,且您可能無法以相同的角色,對因伺服器之間互動所發生的複雜情況負責 (例如 SQL Server 交易)。若在原始伺服器陣列的角色中有多部伺服器,請在測試伺服器陣列中至少使用該角色的兩部伺服器,測試此類問題。

試驗升級的實體測試伺服器陣列

資料庫附加升級的其他測試環境

若使用資料庫附加升級方法,可能需要建立一個額外的測試環境:執行 Office SharePoint Server 2007 的單一伺服器陣列,您可以使用該軟體執行升級前檢查程式,再嘗試升級資料。

您可以在現有的實際執行伺服器陣列上執行升級前檢查程式,以避免此步驟。

識別及安裝自訂

為能有正確的測試程序,必須找出目前環境中的所有自訂,然後將這些自訂複製到測試環境。如需必須識別之自訂類型的詳細資訊,請參閱<決定如何處理自訂 (SharePoint Server 2010)>。

  • 使用升級前檢查程式以識別環境中的網站定義、網站範本及功能。

    升級前檢查程式會逐一檢查各個網站集合,並產生各網站狀態的報告。其亦會儲存各清單的清單定義資訊。您可以在進行升級程序之前先檢閱報告,從中找出問題並加以處理。升級前檢查程式不同於 Office SharePoint Server 2007 的升級前掃描工具,其僅為唯讀工具,而不會變更網站。如需此工具及其執行步驟的詳細資訊,請參閱進行未來版本的升級前掃描和報告 (Office SharePoint Server) 及<執行升級前檢查程式 (SharePoint Server 2010)>。

  • 針對 Office SharePoint Server 2007 環境中所有的內容資料庫,執行 Stsadm –o enumallwebs 作業,找出子網站中特有的自訂項目。此作業會列出環境中每個網站集合與子網站的識別碼,以及網站所使用的範本。此作業最早出現於 Office SharePoint Server 2007 Service Pack 2 (SP2)。如需詳細資訊,請參閱 Enumallwebs:Stsadm 作業 (Office SharePoint Server)

  • 使用 WinDiff 等工具 (大部分 Microsoft 作業系統皆會提供的工具),以比較實際執行環境的伺服器與測試伺服器陣列的伺服器。您可以使用此工具查看伺服器上存在的檔案及檔案間的不同之處。

  • 檢查 web.config 檔案是否有任何變更,並在 SafeControls 元素中尋找任何自訂控制項。

  • 使用 SharePoint 診斷工具 (SPDiag) 尋找部署方案。如需詳細資訊,請參閱 SharePoint 診斷工具 (SPDiag)

  • 建立您所找到之所有自訂的清單。並在可能的情況下,找出自訂的來源。例如,是否有協力廠商增益集或公司內部自訂的範本?找出來源之後,即可接著檢查這些自訂有無更新或升級的版本。您可以使用工作表,根據從升級前檢查程式的結果及針對自訂的研究所找出之資料,填入環境的資訊。請從 https://go.microsoft.com/fwlink/?linkid=179928&clcid=0x404(可能為英文網頁) 下載工作表,並加以自訂以符合您的需求。

提示

有關不是您所建立之自訂應連絡誰?

  • 若在使用從 Microsoft 網站下載的範本 (如 Windows SharePoint Services 3.0 應用程式範本) 時發生問題,請連絡 Microsoft。

  • 若在使用協力廠商所提供的舊版範本或元件時發生問題,請連絡協力廠商解決方案廠商。該廠商可能會有升級的版本。

找出所有自訂之後,請將這些自訂複製到測試伺服器陣列中適當的伺服器上。將資料庫附加到 SharePoint Server 2010 之前,可使用 Windows PowerShell Cmdlet test-spcontentdatabase,判斷環境中是否缺少任何自訂。將資料庫還原至資料庫伺服器之後,請對每個資料庫執行此命令,再執行升級。請注意,此 Cmdlet 會在背景中執行,除非發生錯誤,否則不會傳回任何資訊。

將實際資料複製到測試環境並嘗試升級

除非使用實際資料,否則無法達成測試目標。您可以使用下列方法建立資料的複本:

若要了解升級時可能會發生的情況,最好的方法就是對所有資料的複本進行測試;但是,這對初始測試不一定是實際可行的選擇。您可以一次測試一個資料庫將測試分段 (若資料庫很大),以確定測試內容皆是該資料集的相關唯一內容,也可組合來自環境中代表性網站的資料子集合。若要先使用資料子集合進行測試,請確定該子集合具有下列特性:

  • 資料子集合包含環境中一般所支援的網站。

  • 資料子集合的大小與複雜性非常類似環境的實際大小與複雜性。

重要

測試資料的子集合時,不會產生處理環境的整個資料量所需之時間的有效基準。

複製資料之後,請先執行一次升級程序以查看會有什麼影響。這只是第一回合。

嘗試就地升級

若要嘗試就地升級方法,請使用下列步驟測試升級程序:

  1. 建立伺服器陣列的備份。

  2. 將備份還原至測試伺服器陣列。

    如需詳細資訊,請參閱備份及還原整個伺服器陣列 (Office SharePoint Server 2007)

  3. 執行升級前檢查程式。記下發現的所有問題。您需要在原始環境中解決這些問題,再於實際執行伺服器陣列中執行實際升級。如需詳細資訊,請參閱<執行升級前檢查程式 (SharePoint Server 2010)>。

  4. 遵循<執行就地升級 (SharePoint Server 2010)>中的步驟,嘗試就地升級。

  5. 檢閱結果。

嘗試資料庫附加升級

  1. 建立內容資料庫及共用服務提供者 (SSP) 資料庫的 SQL Server 備份。

  2. 使用 SQL Server 可在單一伺服器測試伺服器陣列中還原備份,並將內容資料庫附加至該環境。

    如需詳細資訊,請參閱備份及還原資料庫 (Office SharePoint Server)

  3. 執行升級前檢查程式。記下發現的所有問題及進行的所有變更。您需要在原始環境中解決這些問題並進行這些變更後,再於實際執行伺服器陣列中執行實際升級。如需詳細資訊,請參閱<執行升級前檢查程式 (SharePoint Server 2010)>。

  4. 遵循<準備新的 SharePoint Server 2010 環境升級資料庫連結>中的步驟,設定資料庫附加升級的測試環境。

  5. 遵循<連結資料庫並升級為 SharePoint Server 2010>中的步驟,嘗試資料庫附加升級程序。

檢閱結果

完成測試升級之後,即可檢閱結果並重新檢視您的計劃。請檢視記錄檔、檢視已升級的網站,再查看您的自訂。升級對您的環境有什麼效果?您了解哪些內容?需要重新考慮的升級計劃內容為何?

檢閱記錄檔

請檢閱下列記錄檔:

  • 升級前檢查程式記錄檔。

    升級前檢查程式的記錄檔 (stsadm -o preupgradecheck) 位於 %COMMONPROGRAMFILES%\Microsoft Shared\Web server extensions\12\LOGS。記錄檔的命名格式如下:PreUpgradeCheck_YYYYMMDD-HHMMSS-SSS-亂數.log,其中 YYYYMMDD 是日期、HHMMSS-SSS 是時間 (24 小時制的小時、分鐘、秒及毫秒),而亂數則用於區分可能同時執行升級前檢查程式的嘗試。

  • SharePoint 產品設定精靈 (Psconfig.exe) 記錄檔 (在試驗就地升級過程中執行此精靈時產生)。

    PSCDiagnostics 記錄檔位於 %COMMONPROGRAMFILES%\Microsoft Shared\Web server extensions\14\LOGS。

  • 升級記錄檔與升級錯誤記錄檔 (執行升級時產生)。

    升級記錄檔 (.log) 與升級錯誤記錄檔 (.err) 位於 %COMMONPROGRAMFILES%\Microsoft Shared\Web server extensions\14\LOGS。記錄檔的命名格式如下:Upgrade-YYYYMMDD-HHMMSS-SSS.log,其中 YYYYMMDD 是日期,而 HHMMSS-SSS 是時間 (24 小時制的小時、分鐘、秒及毫秒)。

若要檢閱記錄檔以找出問題並進行疑難排解,請從檔案頂端開始。若環境中有數個網站集合發生錯誤或警告,或錯誤或警告封鎖了整個升級程序,則可能會重複出現錯誤或警告。例如,若無法連線至設定資料庫,升級程序會嘗試 (並失敗) 多次,而這些嘗試會列於記錄檔中。

搜尋或用眼掃視下列項目:

  • Finished upgrading SPFarm Name= <設定資料庫的名稱>

  • In-place upgrade session finishes. Root object = SPFarm= <設定資料庫的名稱> , recursive = True. 0 errors and 0 warnings encountered.

如有出現這些項目,即表示安裝成功。

若在上一個步驟中找不到這些項目,可以透過搜尋或用眼掃視 Upgrade.log 檔案尋找下列字詞,藉此找出可能與失敗有關的問題:

  • 在記錄檔中搜尋 ERROR,以尋找任何錯誤 (例如,失敗的元件或無效的資料庫連線)。

  • 搜尋 WARNING,以尋找缺少功能或元件等問題。

若要尋找升級問題,使用記錄剖析器對記錄檔執行查詢相當有用。

請視需要重新啟動升級

在資料庫附加升級期間,會略過所有無法升級的網站。在就地升級期間,若伺服器重新啟動或升級失敗,則需要重新啟動升級程序以升級剩餘的網站。

若要確認升級過程有無遺漏或跳過任何網站,可對 SharePoint Server 2010 伺服器陣列中每部前端網頁伺服器,執行下列 Stsadm 作業:stsadm -o localupgradestatus。如需此作業的詳細資訊,請參閱 Localupgradestatus:Stsadm 作業 (Office SharePoint Server)(可能為英文網頁)

若升級略過了任何網站集合,可以使用下列 Windows PowerShell Cmdlet,針對包含該網站集合的資料庫,重新啟動升級程序:upgrade-spcontentdatabase -id <GUID>。如需此 Cmdlet 的詳細資訊,請參閱<Upgrade-SPContentDatabase>。

如需詳細資訊,請參閱<繼續升級 (SharePoint Server 2010)>。

檢閱已升級的網站

檢閱已升級的網站,找出需要在實際執行環境中執行升級程序之前,所要解決的任何問題。如需尋找之特定內容的詳細資訊,請參閱<驗證升級與檢閱升級的網站 (SharePoint Server 2010)>。

調整計劃並重新測試

重複測試程序,直到您確定已找到所有可能面臨的問題,並了解如何解決問題為止。您的目標在於了解計劃內容,若現在是星期天下午 4:00,而您必須在星期一上午恢復連線,但過程不順利。是否有無法返回的部分?請測試回復計劃並確定有效,再開始實際的升級。