將資料還原至相同的位置
您可以將備份的資料還原至與資料備份所在之 Team Foundation 相同的伺服器和 SQL Server 執行個體。 例如,您可能想要將損毀的一組資料庫還原為其上次已知良好狀態。
提示
如果原始部署使用 Enterprise Edition 或 Datacenter Edition 的 SQL Server,但您想要將資料庫還原到執行 Standard Edition 的伺服器,則必須使用以停用 SQL Server 壓縮方式所建立的備份組。除非您停用資料壓縮,否則無法順利將 Enterprise Edition 或 Datacenter Edition 的資料庫還原到執行 Standard Edition 的伺服器。若要關閉壓縮,請遵循 Microsoft 知識庫文章中的步驟。
如果要將資料還原至另一部伺服器或另一個 SQL Server 執行個體,請參閱 將部署還原至新硬體。
注意事項 |
---|
如果您在部署中使用 SharePoint 產品,則還原資料時不需要還原根據每個 Team 專案資料自動產生的網站。Team 專案入口網站的資料包含在您還原的資料庫中。 |
將資料還原至一部或多部相同伺服器的步驟,會根據 Team Foundation Server 的安裝和設定方式而不同。 為求簡化,本主題中之程序的結構是針對 Team Foundation Server 的中度複雜部署 (如下圖所示):
如果您的拓撲未完全符合此範例,則可能需要調整此程序中的步驟,才能順利依照此程序進行。 例如,如果您的部署是所有元件都安裝在單一實體伺服器上,則會在該伺服器上執行所有的程序。 如果 Team 專案集合的資料庫是部署至多部伺服器,則您必須執行步驟,以還原適當伺服器上的每個集合資料庫。 如需每部伺服器上可能部署哪些元件的詳細資訊,請參閱下列主題:
本主題內容
必要的權限
停止 TFS 所使用的服務
重新命名您要還原的資料庫
還原 Team Foundation 資料庫
更新所有服務帳戶
還原倉儲
清除伺服器上的資料快取
重新啟動 Team Foundation Server 所使用的服務
重新整理用戶端電腦上的資料快取
必要的權限
若要執行這個程序,您必須是下列群組的成員或擁有下列使用權限:
一部或多部執行 Team Foundation 管理主控台之伺服器上的 [Administrators] 安全性群組成員。
將裝載資料庫之 SQL Server 執行個體上的 [SQL Server 系統管理員] 安全性群組成員,或是 [SQL Server 執行備份及建立維護計畫] 權限必須設為 [允許]。
Team Foundation 之資料庫執行個體及倉儲資料庫之 Analysis Services 執行個體的 sysadmin 安全性群組成員。
TFS_Warehouse 資料庫的授權使用者。
TFSEXECROLE 資料庫角色的成員。
如果部署使用 SharePoint 產品,則是還原 SharePoint 產品資料庫之伺服器陣列的 [Farm Administrators] 群組成員
如需詳細資訊,請參閱 Microsoft 網站上的下列網頁:使用者帳戶控制。
停止 TFS 所使用的服務
停止服務,有助於保護資料免於在還原流程期間遺失或損毀,特別是重新命名資料庫時。
在執行 Team Foundation 之應用程式層服務的伺服器上,開啟 [命令提示字元] 視窗,並將目錄變更為 Drive:\%programfiles%\Microsoft Team Foundation Server 12.0\Tools。
輸入下列命令:
TFSServiceControl quiesce
如需詳細資訊,請參閱TFSServiceControl 命令。
重新命名您要還原的資料庫
您必須先讓 Team Foundation Server 的資料庫離線,然後將其重新命名,之後您才能使用還原精靈還原該資料庫。
停止 Team Foundation Server 所使用的資料庫
開啟 SQL Server Management Studio。
注意事項 如需如何還原資料庫的詳細資訊,請參閱 Microsoft 網站上的下列網頁:實作 SQL Server 資料庫的還原實例。
[連接至伺服器] 對話方塊隨即開啟。
在 [伺服器類型] 中,選擇 [資料庫引擎]。
在 [伺服器名稱] 中,選擇或輸入資料層伺服器的名稱和資料庫執行個體,然後選擇 [連接]。
注意事項 如果 SQL Server 安裝在叢集上,那麼伺服器名稱應該是這個叢集的名稱,而不是電腦的名稱。
[SQL ServerManagement Studio] 隨即開啟。
展開 [資料庫] 節點,顯示構成 Team Foundation 資料層的資料庫清單。
重新命名,然後停止每個您要還原的資料庫 (遵循您 SQL Server 版本的指引)。 指定資料庫名稱,表示這是您將以還原版本取代的舊版資料庫。 例如,您可能將 TFS_DefaultCollection 重新命名為 TFS_DefaultCollection_Old。
還原 Team Foundation 資料庫
您可以在 TFS 的管理主控台中使用還原精靈還原 Team Foundation Server 的資料。 還原精靈也會還原報告所用的加密金鑰。
還原資料庫
開啟 TFS 管理主控台並巡覽至 [排程備份],以啟動始還原精靈。
指定備份組的路徑,並選擇您要用來進行還原作業的集合。
完成精靈並還原資料庫。
更新所有服務帳戶
您必須更新 Team Foundation Server 的服務帳戶 (TFSService) 和資料來源帳戶 (TFSReports)。 即使這些帳戶未變更,您還是必須更新資訊,以確定帳戶的身分識別和格式正確無誤。
若要更新服務帳戶
在執行 SQL Server Reporting Services 的伺服器上,開啟 [電腦管理],並啟動下列元件 (如果尚未啟動的話):
ReportServer 或 ReportServer$InstanceName (應用程式集區)
SQL Server Reporting Services (TFSINSTANCE)
在應用程式層伺服器上,開啟 [命令提示字元] 視窗,並將目錄變更為 磁碟機:\%programfiles%\ Microsoft Team Foundation Server 12.0\Tools。
在命令提示字元中,輸入下列命令以新增 Team Foundation 的服務帳戶,其中 DatabaseName 是組態資料庫的名稱 (預設是 TFS_Configuration):
**TfsConfig Accounts /add /AccountType:ApplicationTier /account:**AccountName
如需如何使用此命令的詳細資訊,請參閱 Accounts 命令。
如果您的部署使用這些資源,請使用 Accounts 命令來加入報表伺服器的資料來源帳戶和 Team Foundation Server Proxy 的 Proxy 帳戶。
重建倉儲
您可以重建資料倉儲,而不是還原 TFS_Warehouse 和 TFS_Analysis 資料庫。 如果您的部署包含大量資料,則重建倉儲將需要相當長的時間。 但是,該策略可協助確保適當地同步處理所有資料。 當您重建倉儲時,Team Foundation Server 會建立它的執行個體,接著您必須處理該執行個體,以從作業存放區填入資料。
注意事項 |
---|
如果您已在上節還原 TFS_Warehouse 和 TFS_Analysis 資料庫,則不需要執行下列程序。 |
若要重建倉儲
在執行 Team Foundation 之應用程式層服務的伺服器上,開啟 [命令提示字元] 視窗,並將目錄變更為 磁碟機:\%programfiles%\Microsoft Team Foundation Server 12.0\Tools。
輸入下列命令:
TFSConfig rebuildwarehouse /all /ReportingDataSourcePassword:密碼
其中密碼是 Reporting Services (TFSReports) 資料來源帳戶的密碼。
等候直到命令成功完成。
注意事項 如果命令沒有成功完成,您應檢查是否擁有所有的必要權限。如需詳細資訊,請參閱Troubleshooting the Data Warehouse。
在報表伺服器上,開啟 Internet Explorer,並於 [網址] 列中輸入下列字串:
http://localhost:8080/VirtualDirectory/TeamFoundation/Administration/v3.0/WarehouseControlService.asmx
對於 VirtualDirectory,輸入安裝 Team Foundation Server 時所指定之 Internet Information Services (IIS) 的虛擬目錄。 根據預設,此目錄名稱為 tfs。
[WarehouseControlWebService] 頁面隨即開啟。
注意事項 Microsoft Team Foundation Server 應用程式集區必須執行中,才能使用倉儲控制 Web 服務。
選擇 [GetProcessingStatus],然後選擇 [叫用]。
重要
服務應針對所有工作傳回 [閒置] 值,其表示目前尚未處理 Cube。如果傳回不同的值,請重複此步驟,直到針對所有工作都傳回 [閒置]。
選擇 [WarehouseControlWebService] 頁面上的 [ProcessAnalysisDatabase],然後選擇 [叫用]。
瀏覽器視窗隨即開啟。 當此服務順利開始處理 Cube 時會傳回 [True],如果未順利開始或者目前仍在處理 Cube 則傳回 [False]。
若要判斷何時已處理 Cube,請回到 [WarehouseControlWebService] 頁面,選擇 [GetProcessingStatus],然後選擇 [叫用]。
當 [GetProcessingStatus] 服務針對所有工作傳回 [閒置] 值時,表示處理已完成。
在 Team Foundation 的應用程式層伺服器上,開啟 Computer Management,然後啟動 [Visual Studio Team Foundation 背景工作服務]。
清除伺服器上的資料快取
您的 Team Foundation 部署中的每個應用程式層伺服器都會使用檔案快取,讓使用者可以從資料層伺服器快速下載檔案。 當您還原部署時,應該在每個應用程式層伺服器上清除這個快取。 否則,當使用者從版本控制下載檔案時,不相符的檔案 ID 可能會造成問題。 如果您的部署使用 Team Foundation Server Proxy,您還必須在每一部設定為 Proxy 的伺服器上清除資料快取。
注意事項 |
---|
藉由清除資料快取,將有助於防止在版本控制中下載不正確版本的檔案。除非您要在還原過程中更換部署上的所有硬體,否則應該定期執行這項作業。如果您要更換所有的硬體,則可以略過此程序。 |
清除資料快取
在執行 Team Foundation 應用程式層服務或以 Team Foundation Server Proxy 設定的伺服器上,開啟 [命令提示字元] 視窗,並將目錄變更為 磁碟機:\%programfiles%\Microsoft Team Foundation Server 12.0\Application Tier\Web Services\_tfs_data。
刪除 _tfs_data 目錄中的所有項目。
針對部署中每部應用程式層伺服器及每部執行 Team Foundation Server Proxy 的伺服器,重複這些步驟。
重新啟動 Team Foundation Server 所使用的服務
還原資料之後,您必須重新啟動服務,讓伺服器恢復運作。
若要重新啟動 Team Foundation Server 所使用的服務
在執行 Team Foundation 之應用程式層服務的伺服器上,開啟 [命令提示字元] 視窗,並將目錄變更為 磁碟機:\%programfiles%\Microsoft Team Foundation Server 12.0\Tools。
輸入下列命令:
TFSServiceControl unquiesce
如需詳細資訊,請參閱TFSServiceControl 命令。
重新整理用戶端電腦上的快取
若要重新整理用戶端電腦上的追蹤工作項目快取
在新伺服器上開啟 Internet Explorer。
在 [網址] 列中輸入下列位址,以連接至 [ClientService] Web 服務:
http://PublicURL/VirtualDirectory:8080/WorkItemTracking/v3.0/ClientService.asmx
注意事項 即使您已使用系統管理認證登入,還是必須以系統管理員的身分啟動 Internet Explorer,才會出現認證的提示。
選擇 [StampWorkitemCache],然後選擇 [叫用]。
注意事項 StampWorkitemCache 方法不會傳回任何資料。
若要重新整理用戶端電腦上的版本控制快取
在用戶端電腦上,以系統管理權限開啟 [命令提示字元] 視窗,然後將目錄變更為:磁碟機:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE。
在命令提示字元中輸入下列命令以及集合的 URL,其中包括新伺服器的伺服器名稱和連接埠號碼:
**tf workspaces /collection:http://**ServerName:Port/VirtualDirectoryName/CollectionName
在部署範例中,開發人員必須重新整理屬於 DefaultCollection 集合成員之專案的版本控制快取 (此集合裝載於 Team Foundation Server 的 FabrikamPrime 部署中)。 輸入下列字串:
tf workspaces /collection:http://FabrikamPrime:8080/tfs/DefaultCollection
如需詳細資訊,請參閱Workspaces Command。
請參閱
概念
Team Foundation Server 中的服務帳戶與相依性