镜像规划服务器

规划服务器系统镜像指的是将一个规划服务器系统安装复制到另一个系统安装。规划服务器系统中的数据是完全相同的副本。

不过,规划服务器系统数据库服务器名称将随其他与配置相关的必要数据一同更改。对于要设置并运行的新镜像规划服务器,必须进行这些更改。

通过备份源规划服务器数据库(如果使用 Windows SharePoint Services,则包含 SharePoint 数据库),然后将这些源数据库还原到其他数据库服务器作为目标系统,即可实现规划服务器系统镜像目标。备份和还原之后,修改必要的配置数据即可产生新的规划服务器系统。

应将镜像与计划服务器的迁移进行比较。本文档对“镜像”进行了详细介绍,镜像将现有规划系统从一个环境复制到另一个环境。这意味着,镜像过程将移动过所有应用程序、模型站点、模型、维度、用户、安全性、循环、分配和报表。该过程还将完全替换目标环境内容(如果存在)。相反,迁移是将单个规划应用程序从一个规划系统移动到另一个规划系统。目标规划系统必须已配置,并可以创建和接受新应用程序。使用迁移可将被移动的应用程序添加到该目标系统。迁移不移动报表、工作流、分配、循环、作业、用户或安全角色。以下方案和说明用于介绍将规划服务器从一个环境镜像到一个全新环境。典型的情况是从开发环境移动到测试环境。这两个环境应该分别有自己的物理硬件,不共享任何计算机。

注意注意:

在 PerformancePoint Server 文档中,我们统一使用 Windows SharePoint Services 和 SharePoint Services 这两个术语来分别指代 Office SharePoint Server 2007 和 Windows SharePoint Services 3.0。

镜像规划服务器

  1. 备份源规划服务器系统中的所有数据库,包括 PPSPlanningService 数据库、PPSPlanningSystem 数据库和所有应用程序数据库以及临时数据库。有关详细信息,请参阅备份和还原规划服务器数据库

  2. 复制要在镜像过程中移动到目标系统的所有表单和报表。表单和报表存储的默认位置是在规划管理控制台中创建应用程序时设置的。

  3. 将源 PPSPlanning Service 数据库和 PPSPlanningSystem 数据库还原到运行规划服务器和 Microsoft SQL Server 2005 的目标服务器。

  4. 将表单和报表粘贴到目标系统中的默认位置。

  5. 将还原后的数据库的数据库所有者 (DBO) 更改为规划流程服务的服务标识帐户 (SI)。

    USE [PPSPlanningService]
    Exec sp_changedbowner 'SI Account'
    GO
    USE [PPSPlanningSystem]
    Exec sp_changedbowner 'SI Account'
    GO
    
  6. 准备要用作目标规划服务器系统的新计算机。运行规划服务器设置和配置管理器来准备新计算机。有关为规划服务器系统准备计算机的信息,请参阅PerformancePoint Server 2007 部署指南

    重要说明重要:

    准备规划服务器系统时,确保选择规划服务器配置管理器向导“安装选项”页上的“分布式配置”选项,并清除“规划系统数据库”选项。在该向导的“系统数据库”页上,输入目标计算机(即,要向其还原现有规划系统数据库和规划服务数据的计算机)的名称。

  7. 向 SI 帐户授予 dbcreator 权限。

    只有您希望应用程序数据库的自动创建功能在规划管理控制台和规划业务建模器中起作用时,才需要执行此操作。如果数据库管理员将手动为您创建应用程序数据库,则不需要执行此步骤。

     --Grant dbcreator permissions to SI account
          USE [master]
          GO
          GRANT ALTER TRACE TO [DOMAIN\User1]
          GO
    
  8. 在服务器的 Analysis Services 部分,右键单击 Analysis Services 服务器连接,单击“属性”,选择“安全性”****,然后向该角色添加服务标识帐户。

    对于多计算机部署方案,您可能需要在运行 SQL Server、Analysis Services 和 Windows SharePoint Services 的计算机之间配置安全性设置。有关在多计算机部署方案中配置安全性设置的信息,请参阅PerformancePoint Server 2007 部署指南

  9. 设置好目标系统后,即可继续将所有应用程序数据库和临时数据库从源系统还原到目标系统。如果使用 Windows SharePoint Services,则还需要还原 Windows SharePoint Services 数据库。

  10. 更改已还原的应用程序数据库和临时数据库上的数据库所有者。USE [PPS_APP] Exec sp_changedbowner 'SI Account' GO USE [PPS_STG] Exec sp_changedbowner 'SI Account' GO

  11. 修复与配置有关的数据,如数据库和配置文件中的数据库服务器名称。

    下例是基于五台服务器的设置,说明如何修复与配置有关的数据以便实现镜像(还原之后)。

    服务器 1:SQL Server 数据库

    服务器 2:OLAP 服务器

    服务器 3:Windows SharePoint Services 服务器

    服务器 4:规划 Web 服务服务器、可选的规划管理控制台服务器

    服务器 5:规划流程服务服务器

    下面的配置仅用于举例说明:

    • 规划系统数据库和规划服务数据库位于同一数据库服务器上。

    • 规划服务器应用程序数据库位于不同的数据库服务器上(每应用程序)。

    • 规划服务器 OLAP 数据库位于不同的数据库服务器上(可以每个模型站点对应一个数据库,也可以每个应用程序对应一个数据库)。

    注意注意:

    不再使用 BizSystem 表中的 [ViewWorkFlowDBServer] 列。请忽略 BizSystem 表中此列的值。

    1. 手动更新 PPSPlanningSystem 数据库中的 BizSystem 表,以反映 SQL 实例更改和数据库名称更改。

      UPDATE BizSystem
      SET ReferenceDBServerName = @NewAppDBServer,
      ReferenceDBName = @NewAppDBName, -- can remain the same
      StagingDBServerName = @NewStagingDBServer,
      StagingDBName = @NewStagingDBName, -- can remain the same
      WHERE BizApplicationLabel = @BizApplicationLabel
      
    2. 在该表中,更改表单和报表的默认存储位置。

      UPDATE BizSystem
      SET 
      --AssignmentFormsUrl = @NewAssignmentFormsUrl,
      --AssignmentMasterFormsUrl = @NewAssignmentMasterFormsUrl,
      FormTemplatesUrl = @NewFormTemplatesUrl,
      ReportUrl = @NewReportUrl
      WHERE BizApplicationLabel = @BizApplicationLabel
      
      提示提示:

      因为当前不再使用 AssignmentsFormsURLAssignmentMasterFormsURL,所以这两个字段已被注释掉 (--)。

    3. 在应用程序数据库的 BizAppNodes 表中手动更新 OLAP 服务器名称。

      UPDATE BizAppNodes
      SET OLAPServerName = @NewOLAPServerName
      WHERE BizAppNodeLabel = @BizAppNodeLabel
      
    4. 在应用程序数据库的 DeployInfo 表中手动更新 SQL 实例名称和数据库名称。

      
      UPDATE
      SET AppNodeSQLStoreDBServer = @NewAppNodeSQLStoreDBServer,
      AppNodeSQLStoreDBName = @NewAppNodeSQLStoreDBName, -- can remain the same
      AppNodeOLAPStoreDBServer = @NewAppNodeOLAPStoreDBServer,
      AppNodeOLAPStoreDBName = @NewAppNodeOLAPStoreDBName -- can remain the same
      FROM 
      dbo.DeployInfo d inner join
      dbo.BizAppNodes n on
      BizAppNodeID = @BizAppNodeID
      WHERE n.BizAppNodeLabel = @BizApplicationLabel
      
    5. 如果希望移动表单,则需要在应用程序数据库的 Workbooks 表中更新 *.xlsx 文件的位置。使用替换功能手动更新 Workbooks 表中的 StorageUrl 列。之所以需要替换,是因为 StorageUrl 存储表单路径 \\computername\sharedfolder\ 和表单名称 (form.xlsx)。表单名称必须保持不变,但需要更新路径。

      UPDATE dbo.Workbooks
      SET StorageUrl = REPLACE(StorageUrl, @OldStorageUrlPath, @NewStorageUrlPath
      WHERE [StoreageUrl] is Not NULL
      
      注意注意:

      Workbooks 表包含 AssignmentDefinitions 表(由 WorkbookID 联接)和 BizForms(由作为 WorkbookID 的 FormID 联接)使用的所有存储 URL。

      源系统表可能具有很多不同 StorageUrl 值,以便用于上面说明中提到的两个表中的各种用途。但是对于目标系统,您只需将所有存储 URL 放入一个 URL 位置以便开始。文件复制任务可能很困难,因为您需要将这些文件从所有 URL 位置复制到一个位置。

    6. 重命名规划流程服务服务器。

      在该应用程序数据库中,使用新规划流程服务服务器名称替换 AsyncWorkItems 表中的 MachineName 列。

      UPDATE AsyncWorkItems
      SET MachineName = @NewAsyncServerName
      WHERE MachineName IS NOT NULL
      
    7. 更新 OLAP 数据库连接字符串。

    8. 在 SQL Server Management Studio 中展开 OLAP 数据库层次结构:

      • 展开每个数据名称,然后展开 Data Sources 文件夹。

      • 右键单击各子节点,选择“属性”,单击“连接字符串”****,然后单击“连接字符串”框对应的省略号。

      • 在“服务器名称”字段中****输入新 SQL Server 名称。

      • 对所有 OLAP 数据库重复上述步骤。如果不移动 OLAP 数据库,并在镜像过程完成后执行“部署模型站点”也可实现此操作。

  12. 在规划 Web 服务和规划流程服务服务器上,对位于 C:\Program Files\Microsoft Office PerformancePoint ServerTemp\3.0\Config 文件夹中的默认 PerformancePoint.Config 文件进行以下更改。

    1. 将数据库服务器项更改为正在运行 SQL Server 的计算机的新名称。

    2. 将 OLAP 服务器项更改为正在运行 OLAP 服务器的计算机的新名称。

      注意注意:

      只需在单服务器设置中执行此操作,因为该项是由此方案中的设置命令设置的。对于多服务器部署,此字段为空;无需修改。

  13. 在运行 SQL Server 的计算机上,执行以下 SQL Server 查询,以便在所有规划服务器应用程序数据库上手动启用 SQL Server Service Broker:

    ALTER DATABASE [PPSApplicationDatabaseName] SET ENABLE_BROKER
    
    注意注意:

    如果规划流程服务已启动,则停止该服务,以便可以启用 Service Broker。启用 Service Broker 后,重新启动该服务。有时候,以前的 enable_broker SQL 语句好像被锁定了,该语句总是无法完成。要解决该问题,请重新启动 SQL Server 服务,然后重试该 SQL 语句。

  14. 通过运行以下脚本更新 XML blob:

    Use [PPSPlanningSystem]
    Select CAST(CAST(XML as VARBINARY(MAX)) as XML) AS Configuration_XML
    From dbo.Configuration
       Copy all text to notepad.
       Make changes to the following highlighted parameters as needed:
          …audit.log" writerMachineName="machinename" />
          …defaultOlapServer="machinename"…
          …Trace Log\server.log" writerMachineName="machinename" />
       Copy ALL the updated xml text.
       Run the following update statement with your changed xml text.
    Use [PPSPlanningSystem]
    Update dbo.Configuration
    Set XML = convert(XML, ‘PASTE ENTIRE CHANGED XML TEXT HERE’)
    
  15. 在规划 Web 服务服务器和规划流程服务服务器上的 Windows 命令提示符下运行 IISRESET。

  16. 在服务器 4(规划 Web 服务服务器)和服务器 5(规划流程服务 服务器)上,重新启动规划流程服务。这样可确保服务器能够选取对配置文件所做所有更改。

  17. 重新连接 Windows SharePoint Services(可选步骤,只有具有 Windows SharePoint Services 服务器时才需要执行此步骤)。

    完成还原后,必须重新连接到规划服务器系统拓扑。此过程包括将运行 Windows SharePoint Services 的计算机指回其配置和内容数据库。要将 Windows SharePoint Services 服务器指回其数据库,请执行以下步骤:

    1. 在服务器 3(Windows SharePoint Services 服务器)上,打开 Internet Information Services。

    2. 展开列表并打开 Web Sites 文件夹。

    3. 右键单击“SharePoint 管理中心”,然后选择“浏览”****。

    4. 单击“设置配置数据库服务器”。

    5. 将服务器名称更改为新 SQL Server 名称。

    6. 选择“连接到现有配置数据库”。****

    7. 单击“确定”。

    8. 选择“设置默认内容数据库服务器”****,并验证新名称是否正确。如果不正确,请将该名称更新为新数据库服务器名称,然后单击“确定”。

如果重新连接失败

如果上述步骤在重新连接到 Windows SharePoint Services 服务器时失败,才需要执行以下步骤。如果无法重新连接 Windows SharePoint Services 服务器,则唯一的选择是从安装点删除该服务,然后重新安装。

删除并重新安装 Windows SharePoint Service

  1. 在服务器 3(Windows SharePoint Services 服务器)上,使用“添加或删除程序” 卸载 Windows SharePoint Services****。

  2. 在服务器 4(Planning Web Service 服务器)上,打开 Internet 信息服务管理器,删除 SharePoint 网站和 StsAdminAppPool。

  3. 在服务器上安装 Windows SharePoint Services。有关详细信息,请参阅恢复 Windows SharePoint Services

  4. 重命名 Windows SharePoint Services 服务器(可选)。

    注意注意:

    只有具有运行 Windows SharePoint Services 的服务器时,才需要执行此步骤。

  5. 将所有文件从源系统 URL 手动复制到新 URL 位置。

  6. 重命名规划 Web 服务服务器。

    对于连接到规划 Web 服务服务器的所有用户,都应告知该新名称,以便他们可以连接到服务器。

另请参阅