共用方式為


還原資料庫

本主題 -「還原單一伺服器」教學課程的第二個部分教導如何使用原始伺服器的備份,來還原新伺服器的資料庫和 SharePoint 陣列。然後新的伺服器準備好,可以在伺服器上設定 Team Foundation Server (TFS)。

您可以使用您所做的原始部署還原從該部署的資料到新的伺服器。當還原資料時,請確定所有的資料庫和SharePoint伺服器陣列還原至相同的時間點。如果您當時遵循 建立備份排程和計劃的指引,在 TFS 資料庫標示的異動與 TFS 和 SharePoint Foundation 2010 的同步處理排程備份,可確保所有資料都已還原到相同的時間,因此,減少發生資料衝突的機會。

重要事項重要事項

如果原始部署使用 SQL Server 的 Enterprise 或 Datacenter Edition,但您想要將資料庫還原到執行 Standard Edition 的伺服器,則必須使用以停用 SQL Server 壓縮方式所建立的備份。除非您停用資料壓縮,否則無法順利將 Enterprise 或 Datacenter Edition 資料庫還原到執行 Standard Edition 的伺服器。若要關閉壓縮,請依照 Microsoft 知識庫文件中的步驟進行。

在還原資料庫之後,您必須使用命令列工具,將其設定為與 TFS 搭配使用。

提示提示

Team Foundation Server 2012 有適用的備份與還原強大工具。使用這個工具可以大幅簡化維護和還原部署的工作。如果您使用了強大工具來備份資料,則應該使用工具的還原部分還原資料庫,並略過本主題的這個部分。您可以在這裡找到強大工具的最新版本。

在教學課程主題中的範例遵照Jill Frank, 虛構公司Fabrikam Fiber的IT系統管理員,因為她復原如同從準備到執行單一伺服器安裝 [教學課程]中所描述的原始部署的硬體故障。若對教學課程及其中描述的架構熟悉,這樣可協助您遵循本教學課程中的程序。

本主題內容

  • 還原 Team Foundation Server 資料庫

  • 還原 SharePoint 陣列

  • 準備好 Team Foundation Server 的資料庫

必要的使用權限

若要執行這個程序,您必須是下列群組的成員或擁有下列使用權限:

  • 伺服器上的 [Administrators] 安全性群組成員

  • [SQL Server 系統管理員] 安全性群組成員,或是 [SQL Server 執行備份及建立維護計畫] 權限必須設為 [允許]。

  • Team Foundation 資料庫的 [sysadmin] 安全性群組成員。

  • [Farm Administrators] 群組的成員。

還原 Team Foundation Server 資料庫

安裝和設定的軟體不足以還原部署。在使用者可以工作之前,您必須將資料庫還原。您可以使用 SQL Server 提供的工具來復原 Team Foundation Server 的資料。SQL Server Management Studio 會協助您使用同一組備份來還原 TFS 使用的所有資料庫。您可以套用完整和累加備份,以及異動記錄備份,在新的部署。

注意事項注意事項

這個程序特別為 SQL Server 的 TFS 資料庫而設計的。如需如何在 SQL Server 2008 R2 中還原資料庫以及其他還原方法的詳細資訊,請參閱 Microsoft 網站上的下列網頁:實作 SQL Server 資料庫的還原實例

若要開啟還原資料庫對話方塊

  1. 依序選擇 [開始]、[所有程式]、[Microsoft SQL Server 2008],然後按一下 [SQL Server Management Studio]。

    [連接至伺服器] 對話方塊隨即開啟。

  2. 在 [伺服器類型] 清單中,選擇 [資料庫引擎]。

  3. 在 [伺服器名稱],請指定伺服器名稱,然後選取 [連接]。

    注意事項注意事項

    在部署的範例中,Jill 指定 FABRIKAMPRIME 做為伺服器的名稱。她使用了預設的執行個體,因此她沒有指定執行個體名稱。

    [SQL Server Management Studio] 隨即開啟。

  4. 展開 [Databases] 節點。

對 Team Foundation Server 用於部署的每個資料庫來完成下一個程序「還原資料庫」。在部署的範例中, Jill 還原下列資料庫:

  • TFS_Warehouse

  • TFS_DefaultCollection

    這是此集合資料庫的預設名稱。如果您自訂了該名稱,請確定使用該名稱。

  • TFS_Configuration

  • ReportServer

  • ReportServerTempDB

若要還原資料庫

  1. 在 [物件總管] 中,反白顯示 [資料庫],開啟子功能表,然後選取 [還原資料庫]。

    [還原資料庫] 對話方塊隨即開啟。

  2. 在 [到資料庫] 中指定您要還原的資料庫名稱,例如:TFS Configuration。選擇 [還原的來源] 底下的 [來源裝置],然後選擇省略符號 () 按鈕。

  3. 在 [指定備份] 對話方塊中,選擇 [加入]。對要還原的資料庫指定備份檔案的位置,然後選取兩次 [確定] 。

    您必須先還原完整備份,然後還原差異備份,接著還原交易記錄備份,按照當初建立的順序還原。

  4. 在 [選取要還原的備份集] 下,選取要還原的備份集核取方塊。

    如果您以標示的交易建立備份組,請務必還原完整、差異和交易記錄資料庫。

  5. 在 [選取頁面] 窗格中,選擇 [選項],然後選取 [覆寫現有的資料庫] 核取方塊。

  6. 在 [將資料庫檔案還原為] 清單中,確認路徑與您目前的資料庫路徑相符。

  7. 在 [復原狀態] 在下, 選取 [離開] 非操作的資料庫並且不要復原未認可異動。無法還原其他異動記錄。(RESTORE WITH RECOVERY),然後選擇 [確定]。

    進度圖示隨即出現。

  8. 當 [SQL Server Management Studio] 對話方塊出現並確認還原成功時,選擇 [確定] 回到 [物件總管]。

  9. 開啟剛還原資料庫的捷徑功能表,然後選取 [工作]、 [重新啟動] ,再選擇 [異動記錄]。

    [還原交易記錄] 視窗隨即開啟。

  10. 在 [一般] 頁面上,請確定在 [資料庫] 清單中反白顯示適當的資料庫。

  11. 在 [選取要還原的交易記錄備份] 底下,選取您要還原之記錄旁邊的核取方塊。

  12. 選擇 [還原至] 底下的 [標示的異動]。

    [選取標示的交易] 視窗隨即開啟。

  13. 在 [選取標示的異動作為停止還原的位置] 清單中,選取您要用來進行還原作業之異動標示旁邊的核取方塊,然後選擇 [確定]。

    重要事項重要事項

    您必須使用在所有資料庫上具有相同日期和時間的相同交易標示,才能順利還原資料。

  14. 在 [還原異動記錄] 視窗中,選擇 [確定]。

    進度圖示隨即出現。

  15. 當 [SQL Server Management Studio] 對話方塊出現並確認還原成功時,請選擇 [確定]。

    如需詳細資訊,請參閱 Microsoft 網站上的下列網頁:套用交易記錄備份

當您已還原所有資料庫之後,必須還原報告資料庫的加密金鑰。

若要還原 Reporting Services 的加密金鑰。

  1. 依序 [開始], [所有程式]、[Microsoft SQL Server R2] 和 [組態工具],然後選擇 [Reporting Services 組態管理員]。

  2. 在 [Reporting Services 設定連接],請指定伺服器名稱,然後選取 [連接]。

    在部署的範例,在 [伺服器名稱。]中, Jill 在 [伺服器名稱] 中輸入 FABRIKAMPRIME。由於她使用了預設的執行個體,則不需要從預設 MSSQLSERVE 變更執行個體名稱。

  3. 在 [連接] 窗格中,選取 [金鑰],然後在 [金鑰] 窗格中,選取 [還原]。

    [還原加密金鑰] 視窗隨即開啟。

  4. 在 [檔案位置],請指定加密金鑰的備份檔案位置。在 [密碼] 中,指定備份加密金鑰時所使用的程式碼,然後選取 [確定]。

  5. 還原狀態會出現在 結果中。當 [結果] 區域顯示加密金鑰已還原時,請關閉 Reporting Services 組態管理員。

還原 SharePoint 陣列

不同於 Team Foundation Server 資料庫,您無法使用 SQL Server Management Studio 工具還原您的伺服器陣列。您必須使用 Windows PowerShell 的 Restore-SPFarm 命令還原您執行 SharePoint 伺服器陣列的備份。在某些情況下,您可以選擇使用管理中心網站,來還原陣列而不是還原SPFarm,不過,PowerShell 命令是還原陣列的慣用方法。

若要還原陣列,則您登入帳戶必須是 Farm Administrators 群組的成員帳戶,或者您必須是該群組的成員並提供提示字元中的帳戶認證。

若要使用 Restore-SPFarm,還原 SharePoint Foundation 2010 的陣列

  1. 開啟 Windows PowerShell 或 SharePoint 2010 管理 Shell。

  2. 在 Windows PowerShell 命令提示字元中,輸入下列命令,其中 UNCPath 是一個陣列備份所在的目錄之完整 UNC 路徑:

    Restore-SPFarm –Directory UNCPath –RestoreMethod Overwrite

    這個命令會使用可用且最新的備份來還原陣列。如果您要使用差異備份,您必須指定要還原哪一個備份,方式是使用具有特定備份的 GUID 及 –BackupID 參數。

  3. 在 Windows PowerShell 命令提示字元中,輸入下列命令, ServiceApplicationID 是還原陣列的 GUID:

    Start-SPServiceInstance –Identity ServiceApplicationID

    提示提示

    如果您不知道 GUID,您可以使用 取得 SPServiceInstance 命令去列出伺服器上所有 SharePoint 應用程式的服務執行個體 GUID。

  4. 如需備份和還原陣列的詳細資訊,請參閱 還原伺服陣列(SharePoint Server 2010)還原 SPFarm

若要使用 SharePoint 管理中心,還原陣列

  1. 開啟 SharePoint 管理中心,然後在 [首頁] 頁面的 [備份和還原] 區段中,選取 [從備份還原]。

    [還原精靈] 隨即開啟。

  2. 在 [從備份還原–步驟 3 之 1] 頁面上,選取您要還原的陣列備份工作,然後選取 [下一步]。

  3. 在 [從備份還原–步驟 3 之 2] 頁面,請在陣列選取旁邊的核取方塊,然後選取 [下一步]。

  4. 在 [從備份還原 – 步驟 3 之 3] 頁面的 [還原元件] 中,請確定 [陣列] 出現在 [還原下列元件] 清單。在 [只還原組態設定] 區段中,選取 [還原內容和組態設定]。在 [還原選項] 區段中,將 [還原的型別]底下,選取 [相同組態]。在對話方塊要求您確認您的選擇時,選取 [確定],然後選取 [啟動還原]。

  5. 監視復原的一般狀況,它會出現 [備份和還原工作狀態] 頁面的 [整備] 部分。狀態每 30 秒會自動更新。您也可以選取功能表上的 [重新整理]手動更新狀態。

  6. 當還原完成後,將回管理中心的 [首頁] 頁面。在 [應用程式管理],選取 [管理伺服器上的服務]。

  7. 在 [伺服器上的服務] 頁面,請尋找還原陣列的服務應用程式,然後在 [動作] 資料行中,選取每個服務應用程式的 [啟動] 。

  8. 如需備份和還原陣列的詳細資訊,請參閱 還原伺服陣列(SharePoint Server 2010)

Hh529829.collapse_all(zh-tw,VS.110).gif準備好 Team Foundation Server 的資料庫

在已還原的資料庫正確運作之前,您必須使用命令 TFSConfig RemapDBs ,來將 TFS 組態資料庫重新對應至 SQL Server 的新執行個體。您也必須使用 TFSConfig Accounts ResetOwner 命令,將已還原資料庫的資料庫擁有者登入變更為目前使用者。最後,您必須使用命令 TFSConfig Accounts 來重新整理資料庫的服務帳戶資訊,即使您將繼續使用和上一個伺服器相同的服務帳戶。

如果有可能,請確定執行命令時您使用的帳戶是跟您在原始伺服器上安裝 Team Foundation Server 時使用的帳戶是相同的。至少,要還原備份時,在原始伺服器的中必須使用的帳戶,它必須曾是 Team Foundation Server的 [Team Foundation Administrators] 群組的成員及 SQL Server 的 sysadmin 群組的成員。

由於 Jill 在原始伺服器上使用了她的帳戶來安裝和設定 Team Foundation Server ,並在新的伺服器保留了 sysadminTeam Foundation Administrators 群組的成員,她就可以依然使用自己帳戶來登入,並可以執行下列命令。不過,她會需要以系統管理員身分去執行命令提示字元,才能成功地完成命令列程序。

若要重新對應至:資料庫

  1. 以系統管理員身分執行並開啟命令提示字元視窗,然後將目錄變更到 Drive:\%programfiles%\Microsoft Team Foundation Server 11.0\Tools。

  2. 輸入下列命令,其中 DatabaseName 是組態資料庫的名稱,包括裝載資料庫的伺服器和 SQL Server 執行個體名稱,格式為 ServerName 或 ServerName\InstanceName,而 InstanceName 是 SQL Server 執行個體名稱:

    **TFSConfig RemapDBs /databaseName:**DatabaseName **/sqlInstances:**InstanceName

    在部署的範例中, Jill 將所有 Team Foundation Server 的資料庫都還原到同一部伺服器,因此,則只需要執行這個命令一次即可。由於她使用了預設的執行個體,則不需要指定執行個體名稱,只指定伺服器名稱即可。她在命令列上輸入 TFSConfig RemapDBs /databaseName:FabrikamPrime;TFS_Configuration /sqlInstances:FabrikamPrime

若要將已還原資料庫的擁有權變更為目前使用者

  • 在命令指示下,輸入下列命令,其中 ServerName 是裝載 Team Foundation Server 組態資料庫的 SQL Server 執行個體名稱,而 DatabaseName 則是還原的組態資料庫名稱。

    **TFSConfig Accounts /ResetOwner /SQLInstance:**ServerName **/DatabaseName:**DatabaseName

    在部署的範例中,Jill 輸入以下命令: TFSConfig Accounts /ResetOwner /SQLInstance:FABRIKAMPRIME /DatabaseName:TFS_Configuration

    此命令列會變更 Team Foundation Server 使用之所有資料庫的擁有權。

若要更新服務帳戶

  1. 在命令提示字元中,輸入下列命令來更新 Team Foundation Server 的服務帳戶,其中 DatabaseName 是組態資料庫的名稱 (預設是 TFS_Configuration):

    **TfsConfig Accounts /add /AccountType:ApplicationTier /account:**AccountName **/SQLInstance:**ServerName **/DatabaseName:**DatabaseName

    在部署的範例中, Jill 輸入以下命令:TFSConfig Accounts /add /AccountType:ApplicationTier /account:"Network Service" /SQLInstance:FABRIKAMPRIME /DatabaseName:TFS_Configuration

  2. 在命令提示字元中輸入下列命令,即可更新資料來源帳戶:

    **TfsConfig Accounts /add /AccountType:ReportingDataSource /account:AccountName/SQLInstance:**ServerName **/DatabaseName:**DatabaseName

    在部署的範例中, Jill 輸入以下命令:TFSConfig Accounts /add /AccountType:ReportingDataSource /account:SVCSPTRS /SQLInstance:FABRIKAMPRIME /DatabaseName:TFS_Configuration

    如需詳細資訊,請參閱Accounts 命令

首頁 | 準備新硬體 | 還原資料庫 | 安裝和設定 Team Foundation Server | 重新連接服務和使用者