可以使用此过程将 BAM 主导入数据库迁移到另一台服务器。 从端到端场景的角度来看,迁移 BAM 主导入数据库涉及两个主要步骤:
先决条件
必须使用作为 SQL Server sysadmin 固定服务器角色成员的帐户登录才能执行此过程。
移动 BAM 主要导入数据库
执行以下过程中的步骤以移动 BAM 主导入数据库。
将 BAM 主要导入数据库移动
停止任何 BAM 多维数据集更新和数据维护 SSIS 包,或阻止它们运行,直到还原 BAM 主导入数据库。
停止所有 BizTalk Server 服务。 有关详细信息,请参阅 BizTalk Server 帮助中的“如何启动”、“停止”、“暂停”、“恢复”或“重启 BizTalk Server 服务 ”主题https://go.microsoft.com/fwlink/?LinkId=154394。
停止 IIS 服务。
停止 BAM 警报通知服务:
单击“开始” ,再单击“运行” ,键入 cmd,然后单击“确定” 。
在命令提示符下,键入:
Net stop NS$BamAlerts
备份旧服务器上的 BAM 主数据库。 有关备份数据库的说明,请参阅 SQL Server 在线丛书中的如何:备份数据库(SQL Server Management Studio)(https://go.microsoft.com/fwlink/?LinkId=156510)以跟随提供的说明进行操作。
将 BAM 主导入数据库复制到新的 SQL Server 服务器。
在新服务器上还原 BAM 主要导入数据库。 有关还原数据库的说明,请按照 SQL Server 联机丛书中如何还原数据库备份(SQL Server Management Studio) (https://go.microsoft.com/fwlink/?LinkId=156511)的指示进行操作。
注释
如果从备份还原 BAM 主导入数据库,则还应使用早于 BAM 主备份的备份还原 BAM 存档、BAM 星型架构和 BAM 分析数据库。
更新对 BAM 新导入数据库的引用
移动数据库后,必须更新所有指向新 BAM 主数据库的引用。 必须更新以下引用:
使用新的服务器名称更新所有 BizTalk 数据库。 可以使用 UpdateDatabase.vbs 脚本执行此作。 请参阅 使用新的服务器名称更新 BizTalk 数据库。
更新 BAM 门户的 Web.config 文件。 请参阅 更新 BAM 门户的 Web.config 文件。
在所有 BAM Livedata Microsoft Excel 文件中更新对 BAM 主导入数据库的引用。 请参阅 在 BAM Livedata Microsoft Excel 文件中更新引用。
在所有 BAM 分析 SSIS 包中更新新的服务器和数据库名称。 请参阅 更新所有 BAM SSIS 包中的服务器和数据库名称。
为所有 OLAP 多维数据集更新数据源中的新服务器和数据库名称。 查看 如何更新所有 OLAP 多维数据集数据源中的服务器和数据库名称。
使用新的服务器名称更新 BizTalk 数据库
在运行 BizTalk Server 的计算机上,浏览到以下文件夹:
如果 BizTalk Server 安装在 64 位版本的 Windows Server 上:
%ProgramFiles(x86)%\Microsoft BizTalk Server 2010\bins32\Schema\Restore
如果 BizTalk Server 安装在 32 位版本的 Windows Server 上:
%ProgramFiles%\Microsoft BizTalk Server 2010\Schema\Restore
右键单击 SampleUpdateInfo.xml,然后单击“ 编辑”。
注释掉除 BizTalkMgmtDb、OldPrimaryImportDatabase、PrimaryImportDatabase、ArchivingDatabase、AnalysisDatabase、StarSchemaDatabase 和 Alert 外的所有数据库部分。
在
OldPrimaryImportDatabase
文件的节中,对于ServerName
该属性,请将 SourceServer 替换为数据库所在的现有服务器的名称。在
PrimaryImportDatabase
文件的节中,对于ServerName
该属性,请将 DestinationServer 替换为已移动 BAM 主导入数据库的服务器的名称对于 BizTalkMgmtDb、ArchivingDatabase、AnalysisDatabase、StarSchemaDatabase 和警报部分,请将“SourceServer”和“目标服务器”设置为这些数据库所在的现有服务器的名称。
重要
在源系统和目标系统的名称周围包括引号。
注释
如果重命名了任何 BizTalk Server 数据库,则还必须根据需要更新数据库名称。
完成文件编辑后,保存并退出。
单击“开始” ,再单击“运行” ,键入 cmd,然后单击“确定” 。
在命令提示符下,导航到以下目录:
如果 BizTalk Server 安装在 64 位版本的 Windows Server 上:
%ProgramFiles(x86)%\Microsoft BizTalk Server 2010\Schema\Restore
如果 BizTalk Server 安装在 32 位版本的 Windows Server 上:
%ProgramFiles%\Microsoft BizTalk Server 2010\Schema\Restore
在命令提示符下,键入:
cscript UpdateDatabase.vbs SampleUpdateInfo.xml
为 BAM 门户更新 Web.config 文件
在运行 BizTalk Server 的计算机上,更新 drive>:\Program Files\Microsoft BizTalk Server 2010\BAMPortal\BAMManagementService\Web.Config 下的< Web.config 文件。更新 Web.config的以下部分中的服务器和数据库名称:
<appSettings> <add key="BamServer" value="<ServerName>" /> <add key="BamDatabase" value="<DatabaseName>" /> </appSettings>
在运行 BizTalk Server 的计算机上,更新 drive>:\Program Files\Microsoft BizTalk Server 2010\BAMPortal\BAMQueryService\Web.Config 下的< Web.config 文件。更新 Web.config的以下部分中的服务器和数据库名称:
<appSettings> <add key="BamServer" value="<ServerName>" /> <add key="BamDatabase" value="<DatabaseName>" /> <add key="MaxResultRows" value="2000" /> </appSettings>
保存并关闭文件。
更新 BAM Livedata Microsoft Excel 文件中的引用
打开 Excel 实时数据文件。 文件名以 _LiveData.xls结尾。
在 BAM 菜单上,单击 “BAM DB 连接”。
在 “选择 BAM 数据库 ”对话框中,输入 SQL Server 计算机和 BAMPrimaryImport 数据库,然后单击“ 确定”。
在“ 文件 ”菜单上,单击“ 关闭”并返回到Microsoft Excel。
在“文件”菜单上,单击“保存”。
更新所有 BAM SSIS 包中的服务器和数据库名称
更新所有 BAM 分析 SSIS 包中的服务器和数据库名称,这些包的前缀为“BAM_AN_”或“BAM_DM_”。 为此,请单击“ 开始”、“ 所有程序”、“ Microsoft SQL Server 2008 R2 或 Microsoft SQL Server 2008 SP1”,然后单击 “SQL Server Business Intelligence Development Studio”。
在 SQL Server Business Intelligence Development Studio 中,创建新项目。 单击 文件,单击 新建,然后单击 项目。
在“ 新建项目 ”对话框中的“ 项目类型 ”框中,单击“ 商业智能项目”。 在右窗格中的 “模板 ”框中,单击 “Integration Services 项目”,然后单击“ 确定”。
在 Integration Services 项目 对话框中的解决方案资源管理器中,右键单击 SSIS 包,然后单击“ 添加现有包”。
在“ 添加现有包的副本 ”对话框中的 “服务器 ”下拉列表框中,选择包含BAM_AN_*和BAM_DM_*包的服务器。
在 包路径中,单击省略号按钮。
在 “SSIS 包 ”对话框中,选择要更新的包,单击“ 确定”,然后单击“ 确定”。
包现已在解决方案资源管理器中列出。
在解决方案资源管理器中,双击在上一步中添加的包。 在 “连接管理器 ”选项卡中(屏幕下半部分可用),双击数据源编号 1(BAMPrimaryImport 数据库)。
在 “连接管理器 ”对话框中的 “服务器名称 ”框中,输入服务器的名称,然后单击“ 确定”。
单击“ 包资源管理器 ”选项卡,双击 “变量 ”文件夹,然后更新 PrimaryImportDatabase 和 PrimaryImportServer 变量的值。 必须更新值以指向新的服务器和数据库。
注释
对要更新的所有包重复步骤 4 到 10。
单击“ 文件 ”菜单,然后单击“ 全部保存”。
启动 SQL Server Management Studio。 依次单击“ 开始”、“ 所有程序”、“ MICROSOFT SQL Server 2008 R2 或 Microsoft SQL Server 2008 SP1”,然后单击 “SQL Server Management Studio”。
在“ 连接到服务器 ”对话框中,从 “服务器 类型”下拉列表中选择“ Integration Services”。
指定要连接到服务器的服务器名称和凭据,然后单击“ 确定”。
在 对象资源管理器中,展开 Integration Services,展开 “存储包”,然后单击 “MSDB”。
在 “对象资源管理器详细信息 ”选项卡中,右键单击之前更新的包,然后单击“ 导入包”。
在“ 导入包 ”对话框中的“ 包位置 ”下拉列表中,选择 “文件系统”。
在 包路径中,导航到已保存的项目,选择要导入的包的 .dtsx 文件,然后单击“ 打开”。
在“包名称”框中单击以自动填充该框。
注释
对要更新的所有包重复步骤 16 到 19。
单击“确定”,然后单击“是”以覆盖。
请启用任何 BAM 多维数据集更新及数据维护的 SSIS 包。
更新所有 OLAP 多维数据集的数据源中的服务器和数据库名称
为所有 OLAP 多维数据集更新数据源中的服务器和数据库名称。 为此,请单击“ 开始”、“ 所有程序”、“ Microsoft SQL Server 2008 R2 或 Microsoft SQL Server 2008 SP1”,然后单击 “SQL Server Management Studio”。
在“ 连接到服务器 ”对话框中,对于 “服务器类型 ”下拉列表,选择 Analysis Services,提供服务器名称,选择身份验证方法(并根据需要提供凭据),然后单击“ 连接”。
在对象资源管理器中,依次展开 “数据库”、“ BAMAnalysis”、“ 数据源”,然后双击数据源。
在“数据源属性”对话框中,针对连接字符串属性单击省略号按钮(...)。
在 “连接管理器 ”对话框中的 “服务器名称 ”框中,输入承载 BAMPrimaryImport 数据库的服务器的名称,单击“ 确定”,然后单击“ 确定”。
启动所有 BizTalk Server 服务。 有关详细信息,请参阅 BizTalk Server 帮助中的“如何启动”、“停止”、“暂停”、“恢复”或“重启 BizTalk Server 服务 ”主题https://go.microsoft.com/fwlink/?LinkId=154394。
启动 IIS 服务。
启动 BAM 警报通知服务:
单击“开始” ,再单击“运行” ,键入 cmd,然后单击“确定” 。
在命令提示符下,键入:
Net start NS$BamAlerts
解决任何不完整的跟踪实例。 有关解析不完整的 BAM 活动实例的信息,请参阅 如何解析不完整的活动实例 (https://go.microsoft.com/fwlink/?LinkId=151475)。