升级项目
要在当前的 ALM 版本中使用在以前的 ALM 版本中创建的项目,必须升级项目,使其与 ALM 当前版本的所需配置一致。
在升级之前,验证并修复项目,以在数据库用户架构和数据中检测和更正错误。
概述
在验证、修复和升级项目之前,请了解以下内容。
| 备份项目 |
在运行修复或升级过程时,ALM 将对项目执行更改,使其与当前 ALM 版本的规范相一致。您必须在修复或更新项目之前备份项目。 修复过程仅对项目数据库架构做出变更。在运行修复过程之前,应该备份数据库服务器上的项目数据库架构,但是无需备份文件系统中的项目数据。 在运行升级过程之前,对项目执行完整的备份,包括项目数据库架构和项目数据。 |
| 定义例外项文件 |
如果您已更改架构(如添加表或列),则升级过程可能会失败。可以针对手动添加到数据库用户架构且未在架构配置文件中定义的对象定义异常文件。这将指示 ALM 在升级过程中忽略这些变更。 运行验证、修复或升级过程时,必须使用相同的例外项文件。 可以在“站点管理”中设置单个项目或所有项目的异常文件。 |
| 验证过程 |
您可以运行验证过程以检查数据库用户架构和数据的正确性。尽管数据库用户架构和数据可能对于以前的 ALM 版本而言是正确的,但它们可能与当前 ALM 版本的规范不一致。 验证过程在环境、设置、架构结构和数据完整性中检测可能导致升级故障的问题。它生成的验证日志将通知您可由 ALM 修复的问题以及应该手动修复的问题。 |
| 修复过程 |
修复过程修正由验证过程发现的大多数数据和架构问题。 如果验证过程检测到可导致数据丢失的问题,修复过程不会自动修正。需要手动修复这些问题。要查找某个特定问题是自动还是手动处理的,请参考验证日志。 |
| 修复/升级模式 | 默认情况下,修复和升级过程以非静默模式运行。以非静默模式运行过程发生错误时,ALM 可能会暂停并提示您信息。可以改为选择以静默模式运行过程。以静默模式运行过程时,ALM 会中止过程,而不提示输入。 |
| 使用之前版本中已验证、修复或升级的项目 |
项目经验证或修复后,仍然可以通过以前的 ALM 版本使用它。 项目经升级之后,就无法再通过以前的 ALM 版本使用。 |
升级版本
下表列出了支持从以前的 ALM 版本直接升级的最新 ALM 版本。
| 从版本 | 支持直接升级的最新版本 |
|---|---|
| ALM 11.0 | ALM 12.2 |
| ALM 11.5x | ALM 12.5 |
| ALM 12.0 | ALM 15.0 |
| ALM 12.2 - 15.0.x | ALM 15.5 |
| ALM 12.5x- 15.x.x | ALM 16.0.x |
| ALM 12.6x-16.0.x | ALM 17.0 |
备份项目
项目的完整备份包括备份项目数据库架构和项目数据。
修复过程仅对项目数据库架构做出变更。在运行修复过程之前,应备份数据库服务器上的项目数据库架构。无需备份文件系统中的项目数据。
在运行升级过程之前,对项目执行完整的备份,包括项目数据库架构和项目数据。
备份数据库服务器上的项目数据库架构:
| Microsoft SQL 数据库 | 有关备份 Microsoft SQL 数据库上架构的信息,请参阅如何备份和恢复 MS SQL 数据库。 |
| Oracle 数据库 | 有关备份 Oracle 数据库上架构的信息,请参阅如何将 Oracle 数据库导出和导入到转储文件。 |
备份文件系统中的项目数据:
在文件系统中,确保所有数据 (包括自动化测试脚本和结果) 和附件均保存在安装 ALM 时定义的存储库下的项目目录中。为包含所有子目录和文件的此项目目录保存一个副本。
定义例外项文件
可以使用例外项文件忽略额外表、视图、列和序列的警告。可以设置单个项目或所有项目的例外项文件。
要定义例外项文件,请执行以下操作:
从 ALM 安装目录复制 SchemaExceptions.xml 文件。默认情况下,此文件位于 <ALM 安装路径>\data\sa\DomsInfo\MaintenanceData。
创建异常文件(例如 my_exceptions.xml)并如下所示定义异常:
对于额外表:
Copy code<TableMissing>
<object pattern="MY_Table" type="extra"/>
</TableMissing>对于额外视图:
Copy code<ViewMissing>
<object pattern="MY_VIEW" type="extra"/>
</ViewMissing>对于额外列:
Copy code<ColumnMissing>
<object pattern="MY_COLUMN" type="extra"/>
</ColumnMissing>对于额外序列:
Copy code<SequenceMissing>
<object pattern="MY_SEQUENCE" type="extra"/>
</SequenceMissing>
要设置单个项目的例外项文件,请执行以下操作:
打开“站点管理”>“项目”选项卡。
从项目列表中选择一个项目。
在“详细信息”选项卡中的“项目数据库”部分的“例外项文件”字段中,输入例外项文件的位置。
要设置所有项目的例外项文件,请添加 UPGRADE_EXCEPTION_FILE 参数并定义例外项文件位置。
有关配置站点参数的详细信息,请参阅设置配置参数。
验证项目
您可以在单个项目级别运行验证过程,也可以在域级别运行此过程以验证域中的多个或所有项目。
要验证单个项目,请执行以下操作:
打开“站点管理”>“项目”选项卡。
从项目列表中选择目标项目,然后单击“维护项目”>“验证项目”。
单击“验证项目”以启动验证过程。
如果项目仍处于活动状态,将提示您先停用它。
运行过程时如果出错,将打开消息框。相应地单击“中止”或“重试”按钮。
要中止验证过程,请单击“中止”并在确认对话框中单击“是”。
要暂停验证过程,请单击“暂停”。要继续,请单击“继续”。
等到验证过程完成。
验证过程完成后,验证日志将保存在以下目录中:
<ALM 存储库路径>\sa\DomsInfo\MaintenanceData\out\<域名>\<项目名称>。
要将验证日志导出到文本文件,请单击“导出日志”。
要清除验证日志,请单击“清除日志”。
分析验证日志。日志指示可以由 ALM 修复的问题和需要手动修复的问题。
要验证域中的多个或所有项目,请执行以下操作:
打开“站点管理”>“项目”选项卡。
从项目列表中选择目标域,然后单击“维护域”>“验证域”。
选择目标项目或单击“项目名称”列中的复选框以选择所有项目。
单击“验证项目”。
如果任何选定的项目仍处于活动状态,将提示您先停用它们。
运行过程时如果出错,将打开消息框。相应地单击“中止”或“重试”按钮。
要中止验证过程,请单击“中止”并在确认对话框中单击“是”。
要暂停验证过程,请单击“暂停”。要继续,请单击“继续”。
等到验证过程完成。
验证过程完成后,验证日志将保存在以下目录中:
<ALM 存储库路径>\sa\DomsInfo\MaintenanceData\out\<域名>\<项目名称>。
要将验证日志导出到文本文件,请单击“导出日志”。
要清除验证日志,请单击“清除日志”。
分析验证日志。日志指示可以由 ALM 修复的问题和需要手动修复的问题。
修复项目
您可以在单个项目级别运行修复过程,也可以在域级别运行此过程以修复域中的多个或所有项目。
先决条件:
备份项目。
修复 ALM 无法修复的问题,如验证日志中所示。请参阅验证项目。
要修复单个项目,请执行以下操作:
打开“站点管理”>“项目”选项卡。
从项目列表中选择目标项目,然后单击“维护项目”>“修复项目”。
要运行修复过程而没有任何用户干预,请选择以静默模式运行。
要启动修复过程,请单击“修复项目”。
如果项目仍处于活动状态,将提示您先停用它。
运行过程时如果出错,将打开消息框。相应地单击“中止”或“重试”按钮。
要中止修复过程,请单击“中止”并在确认对话框中单击“是”。
要暂停修复过程,请单击“暂停”。要继续,请单击“继续”。
等到修复过程完成。
要将修复日志导出到文本文件,请单击“导出日志”。
要清除修复日志,请单击“清除日志”。
要修复域中的多个或所有项目,请执行以下操作:
打开“站点管理”>“项目”选项卡。
从项目列表中选择目标域,然后单击“维护域”>“修复域”。
配置修复设置。
修复模式 选择以下选项:
以静默模式运行。无任何用户交互的情况下运行过程。
失败时继续下一个项目。如果修复过程失败,则继续下一个项目。这是默认选项。
修复后 选择以下选项之一:
使所有项目保持停用状态。在修复过程完成后保留所有项目停用。
仅激活当前活动的项目。在修复过程完成后,重新激活先前激活的项目。这是默认选项。
激活所有项目。在修复过程完成后,激活所有项目。
选择目标项目或单击“项目名称”列中的复选框以选择所有项目。
单击“修复项目”。
如果任何选定的项目仍处于活动状态,将提示您先停用它们。
运行过程时如果出错,将打开消息框。相应地单击“中止”或“重试”按钮。
要中止修复过程,请单击“中止”并在确认对话框中单击“是”。
要暂停修复过程,请单击“暂停”。要继续,请单击“继续”。
等到修复过程完成。
要将修复日志导出到文本文件,请单击“导出日志”。
要清除修复日志,请单击“清除日志”。
升级项目
项目经验证和修复之后,可以继续将其升级到当前的 ALM 版本。
您可以在单个项目级别运行升级过程,也可以在域级别运行此过程以升级域中的多个或所有项目。
要升级单个项目,请执行以下操作:
打开“站点管理”>“项目”选项卡。
从项目列表中选择目标项目,然后单击“维护项目”>“升级项目”。
要运行升级过程而没有任何用户干预,请选择“以静默模式运行”。
要启动升级过程,请单击“升级项目”。
如果项目仍处于活动状态,将提示您先停用它。
运行过程时如果出错,将打开消息框。相应地单击“中止”或“重试”按钮。
要中止升级过程,请单击“中止”并在确认对话框中单击“是”。
要暂停升级过程,请单击“暂停”。要继续,请单击“继续”。
等到升级过程完成。
要将修复日志导出到文本文件,请单击“导出日志”。
要清除修复日志,请单击“清除日志”。
要升级域中的多个或所有项目,请执行以下操作:
打开“站点管理”>“项目”选项卡。
从项目列表中选择目标域,然后单击“维护域”>“升级域”。
配置升级设置。
修复模式 选择以下选项:
以静默模式运行。无任何用户交互的情况下运行过程。
失败时继续下一个项目。如果修复过程失败,则继续下一个项目。这是默认选项。
修复后 选择以下选项之一:
使所有项目保持停用状态。在升级过程完成后保留所有项目停用。
仅激活当前活动的项目。在升级过程完成后,重新激活先前激活的项目。这是默认选项。
激活所有项目。在升级过程完成后,激活所有项目。
选择目标项目或单击“项目名称”列中的复选框以选择所有项目。
单击“升级项目”。
如果任何选定的项目仍处于活动状态,将提示您先停用它们。
运行过程时如果出错,将打开消息框。相应地单击“中止”或“重试”按钮。
要中止升级过程,请单击“中止”并在确认对话框中单击“是”。
要暂停升级过程,请单击“暂停”。要继续,请单击“继续”。
等到升级过程完成。
要将升级日志导出到文本文件,请单击“导出日志”。
要清除升级日志,请单击“清除日志”。
恢复项目
如果修复或升级过程失败,则在再次尝试过程之前,必须恢复备份的项目。恢复的项目只能在备份它的 ALM 版本中使用。
要从 Microsoft SQL 数据库服务器恢复项目,请执行以下操作:
从 SQL Server Enterprise Manager,导航到数据库,并选择“工具”>“恢复数据库”。
导航到备份文件,并遵循恢复过程以完成数据恢复过程。
在“站点管理”中,恢复对项目的访问。如果要从不同目录恢复项目,或已重命名架构,必须相应地更新 dbid.xml 文件。有关详细信息,请参见恢复对项目的访问。
如果执行备份时项目仍处于活动状态,请重新调整项目存储库。有关详细信息,请参见重新调整存储库。
要从 Oracle 数据库服务器恢复项目,请执行以下操作:
将备份文件复制到 Oracle 服务器计算机。
使用 SQL*Plus 实用工具,用 system 帐户登录到 Oracle 服务器。
为 ALM 项目创建用户。导出项目时,确保使用与项目名称(或 Oracle 用户名)相同的名称创建它。
使用以下 SQL 语句:
Copy codeCREATE USER [<项目名称>] IDENTIFIED BY tdtdtd DEFAULT TABLESPACE TD_data TEMPORARY TABLESPACE TD_TEMP;
GRANT CONNECT,RESOURCE TO [<项目名称>];在 ALM 安装 DVD 上,找到 \Utilities\Databases\Scripts 目录。打开 qc_project_db___oracle.sql 文件,并遵循指示。
使用命令行,输入 imp,以运行导入实用工具。
遵循提示,并使用 system 帐户登录到 Oracle 服务器。确保导入所有转储文件。
在所有表已成功导入之后,显示确认消息。
在“站点管理”中,恢复对项目的访问。如果要从不同目录恢复项目,或已重命名架构,必须相应地更新 dbid.xml 文件。有关详细信息,请参见恢复对项目的访问。
如果执行备份时项目仍处于活动状态,请重新调整项目存储库。有关详细信息,请参见重新调整存储库。
要从文件系统恢复存储库:
将备份的存储库复制到 ALM 存储库。
在“站点管理”中,恢复对项目的访问。如果要从不同目录恢复项目,或已重命名架构,必须相应地更新 dbid.xml 文件。有关详细信息,请参见恢复对项目的访问。
如果执行备份时项目仍处于活动状态,请重新调整项目存储库。有关详细信息,请参见重新调整存储库。
另请参见:

