Share via


HOW TO:重建 Team System Cube

更新:2007 年 11 月

若要存取高階報表,每次移動、還原、重新命名 Team Foundation 資料層伺服器或對其進行容錯移轉時,您都必須重建 Team System Cube。Team System Cube 支援 SQL Server Reporting Services,而且包含 Team System 資料倉儲之關聯式資料庫中的資枓。如需詳細資訊,請參閱瞭解資料倉儲架構。 

必要的使用權限

您必須具有 SQL Server 中的下列使用權限,才能執行這些程序:

  • 您必須是 Team Foundation 之資料庫執行個體 (Instance) 中以及 Team System 資料倉儲之 Analysis Services 資料庫執行個體中的 sysadmin 安全性群組的成員。

  • 您必須是 TfsWarehouse 關聯式資料庫的使用者。

  • 您必須是 TFSEXECROLE 資料庫角色的成員。

此外,您也必須是 [Team Foundation Administrators] 安全性群組的成員,或是必須將伺服器層級的 [Administer warehouse] 使用權限設定為 [Allow]。如需詳細資訊,請參閱 Team Foundation Server 使用權限

除了這些使用權限之外,在執行 Windows Server 2008 或 Windows Vista 的電腦上,您可能還必須滿足下列需求:

  • 若要依照命令列程序執行,您可能必須開啟較高權限的命令提示字元,方法是按一下 [開始],以滑鼠右鍵按一下 [命令提示字元],再按一下 [以系統管理員身分執行]。

  • 若要依照需要用到 Internet Explorer 的程序執行,您可能必須以系統管理員的身分啟動 Internet Explorer,方法是按一下 [開始],再按一下 [所有程式],以滑鼠右鍵按一下 [Internet Explorer],然後按一下 [以系統管理員身分執行]。

  • 若要編輯 web.config 檔案,您可能必須以系統管理員的身分啟動文字編輯器,方法是按一下 [開始],再按一下 [所有程式],以滑鼠右鍵按一下編輯器,然後按一下 [以系統管理員身分執行]。

  • 若要存取 Reporting Services 的報表管理員、報表或網站,您可能必須將這些網站加入至 Internet Explorer 中的信任網站清單,或是以系統管理員的身分啟動 Internet Explorer。

如需詳細資訊,請參閱 Microsoft 網站 (英文)。

若要重建 Team System Cube,您必須依下列順序執行步驟:

  1. 確認服務和應用程式集區正在執行且 SQL Server 已啟用 TCP/IP

  2. 重新建立 Team System Cube

  3. 處理 Team System Cube

  4. 重新啟動服務

  5. 驗證是否可存取報表

確認服務和應用程式集區正在執行且 SQL Server 已啟用 TCP/IP

SQL Server 所需的服務和應用程式集區必須在執行中,才能完成本程序的步驟。請停止 Reporting Services,這樣當您重建 Team System Cube 時,使用者就不會存取報表。此外,針對雙重伺服器部署,SQL Server 資料庫的每個執行個體都必須啟用 TCP/IP 通訊協定。

注意事項:

根據預設,當您安裝 SQL Server 時,會停用 TCP/IP。

若要確認服務和應用程式集區正在執行且 SQL Server 已啟用 TCP/IP

  1. 登入適當的伺服器,開啟電腦管理員,並驗證下表中的服務和應用程式集區是否正在執行:

    登入裝載 (Host) 此程式的伺服器

    元件

    SQL Server Analysis Services

    • SQL Server Analysis Services (MSSQLSERVER 或 TFSInstance)

    Team Foundation 資料庫

    • SQL Server (MSSQLSERVER 或 TFSInstance)

    • SQL Server Agent (MSSQLSERVER 或 TFSInstance)

    應用程式層

    • Microsoft Team Foundation Server 應用程式集區

    如需詳細資訊,請參閱 HOW TO:停止和啟動服務、應用程式集區和網站

  2. 登入裝載 Reporting Services 的伺服器,並停止下列服務:

    • SQL Server Reporting Services (TFSINSTANCE)

    • ReportServer 或 ReportServer$InstanceName (應用程式集區)

      注意事項:

      您可以管理 SQL Server 2005 的 ReportServer,但不能管理 SQL Server 2008 的 ReportServer。

  3. 確定資料層伺服器上的 SQL Server 已啟用 TCP/IP。如需詳細資訊,請參閱 HOW TO:啟用資料庫執行個體的 TCP/IP 通訊協定

重新建立 Team System Cube

當您重新建立 Team System Cube 時,Team Foundation Server 會捨棄舊 Cube 並建立 Cube 的另一個執行個體。您接著必須處理 Cube,以從 Team System 的作業存放區填入資料。

若要重新建立 Team System Cube

  1. 在應用程式層伺服器上,開啟電腦管理員,然後停止 Visual Studio Team Foundation Server 工作排程器服務。

  2. 開啟 [命令提示字元] 視窗,並將目錄切換到 Drive:%Program Files%\Microsoft Visual Studio 2008 Team Foundation Server\Tools。

  3. 輸入下列命令:

    SetupWarehouse.exe -o -sDataTierServerName-dTFSWarehouse -c warehouseschema.xml -ra TFSReportServiceAccount -a TFSServiceAccount -mturl http://ApplicationTierServerName:Port-lLogFileName

    其中:

    引數

    說明

    DataTierServerName

    裝載 Team Foundation 關聯式資料庫的伺服器名稱。 

    如果您已移動、容錯移轉或還原資料到執行 SQL Server 的伺服器,請指定伺服器的名稱。

    TFSReportServiceAccount

    Reporting Services 的服務帳戶名稱,格式為 Domain\UserName。

    TFSServiceAccount

    Team Foundation Server 的服務帳戶名稱,格式為 Domain\UserName。

    ApplicationTierServerName

    Team Foundation 應用程式層伺服器的名稱。

    Port

    Team Foundation 依賴的 Web 服務通訊埠編號。預設值為 8080。

    LogFileName

    (選擇項) 輸出的記錄檔。

  4. 等候直到命令成功完成。

    注意事項:

    如果命令沒有成功完成,您應檢查是否擁有所有的必要權限。您也可以查看 setupwarehouse.log 檔案 (只有先前指定它做為選項時才有) 和資料倉儲疑難排解

處理 Team System Cube

藉由處理 Team System Cube,您可以協助確保查詢和報表是依存於 Cube 的最新資料。當您處理 Cube 時,也會同時處理 Team System 資料倉儲的 Analysis Services 資料庫。完成處理所需的時間取決於資料倉儲的關聯式資料庫中有多少資料。

注意事項:

Microsoft Team Foundation Server 應用程式集區必須在執行中,才能使用倉儲控制器 Web 服務。

若要處理 Team System Cube

  1. 登入應用程式層伺服器。

  2. 開啟 Internet Explorer,在 [網址] 列中輸入下列字串,然後按 ENTER:

    https://localhost:8080/Warehouse/v1.0/warehousecontroller.asmx

    [ControllerService] 頁面隨即開啟。

  3. 按一下 [GetWarehouseStatus],然後按一下 [叫用]。

    重要事項:

    服務應傳回 [閒置] 值,表示目前未處理 Cube。如果傳回不同的值,請重複此步驟,直到傳回 [閒置]。

  4. 回到 [ControllerService] 頁面,按一下 [執行],然後按一下 [叫用]。

    此步驟會啟始 Cube 處理。當服務成功啟動控制器時,會傳回 [True],否則為 [False]。[False] 值表示目前正在處理 Cube。

  5. 若要判斷 Cube 何時處理完成,請回到 [ControllerService] 頁面,然後按一下 [GetWarehouseStatus],再按一下 [叫用]。這個服務會傳回下列狀態值:

    • ProcessingAdapters (正在處理結構描述修改或正在提取資料)

    • ProcessingOlap (正在處理結構描述修改或正在處理 Cube)

    • 閒置 (處理已完成)

    當 [GetWarehouseStatus] 服務傳回 [閒置] 值時,表示 Cube 處理已完成。

注意事項:

在一般作業期間,Visual Studio Team Foundation Server 工作排程器服務會根據預先設定的重新整理頻率 (預設為一小時),呼叫 [ControllerService] Web 方法和處理 Cube。若要變更頻率,請參閱 HOW TO:變更 Team System 資料倉儲的重新整理頻率

重新啟動服務

若要重新啟動服務

  • 登入適當的伺服器,開啟電腦管理員,並啟動下表中的元件:

    登入裝載 (Host) 此程式的伺服器

    啟動此元件

    Reporting Services

    • SQL Server Reporting Services (TFSINSTANCE)

    • (僅適用於 SQL Server 2005) ReportServer 或 ReportServer$InstanceName (應用程式集區)

    應用程式層伺服器

    • Visual Studio Team Foundation Server 工作排程器服務

驗證是否可存取報表

若要驗證是否可存取報表

  1. 登入裝載 Reporting Services 的伺服器,開啟 Internet Explorer,並於 [網址] 列中輸入下列字串,然後按 ENTER:

    https://localhost/Reports

    如果您已經在資料層伺服器上部署了具名執行個體,請改為輸入下列字串:

    **https://localhost/Reports_**TFSInstance

    [報表管理員] 頁面隨即開啟。

  2. 在 [內容] 中按一下任何專案,然後按一下專案內的其中任何一個預設報表,再確認報表的顯示是否正確。

請參閱

工作

HOW TO:容錯移轉至鏡像資料層伺服器

HOW TO:從單一伺服器移至雙重伺服器部署

概念

瞭解資料倉儲架構

資料倉儲疑難排解

HOW TO:還原 Team Foundation 的資料

參考

SetupWarehouse

其他資源

HOW TO:啟用資料庫執行個體的 TCP/IP 通訊協定

HOW TO:刪除應用程式層伺服器上的版本控制快取

管理資料