Sun Java System Application Server 9.1 高可用性管理指南

维护 HADB 计算机

HADB 通过复制镜像节点上的数据来实现容错。在生产环境中,与其镜像的节点不同,镜像节点在单独的 DRU 上,如《Sun Java System Application Server 9.1 部署规划指南》所述。

故障是一种意外事件,如硬件故障、电源故障或操作系统重新引导。HADB 允许一个节点、一台计算机(没有镜像节点对)、属于同一 DRU 的一台或多台计算机甚至一个整个的 DRU 的单个故障。但是,HADB 不能从双重故障(即一个或多个镜像节点对同时出现故障)中自动恢复。如果出现双重故障,则必须清除 HADB 并重新创建其会话存储(这将删除它的所有数据)。

具体的维护过程取决于您需要在一台计算机上工作还是在多台计算机上工作。

Procedure在一台计算机上执行维护

此过程适用于规划的和非规划的维护,并且不中断 HADB 可用性。

  1. 执行维护过程并使计算机启动并运行。

  2. 确保 ma 正在运行。

    如果 ma 作为 Windows 服务运行或位于 init.d 脚本(推荐用于部署)下,则应该已由操作系统启动。如果未启动,请手动启动。请参见启动管理代理

  3. 启动计算机上的所有节点。

    有关更多信息,请参见启动节点

  4. 检查节点是否处于活动状态并且正在运行。

    有关更多信息,请参见获取 HADB 的状态

Procedure在所有 HADB 计算机上执行规划的维护

规划的维护包含诸如硬件和软件升级之类的操作。此过程不中断 HADB 可用性。

  1. 对于第一个 DRU 中的每台备用计算机,逐个对每台计算机重复单个计算机过程,如在一台计算机上执行维护所述。

  2. 对于第一个 DRU 中的每台活动计算机,逐个对每台计算机重复单个计算机过程,如在一台计算机上执行维护所述。

  3. 对于第二个 DRU 重复步骤 1 和步骤 2。

Procedure在所有 HADB 计算机上执行规划的维护

此过程适用于 HADB 在一台或多台计算机上的情况。在维护过程中将中断 HADB 服务。

  1. 停止 HADB。请参见停止数据库

  2. 执行维护过程并使所有计算机启动并运行。

  3. 确保 ma 正在运行。

  4. 启动 HADB。

    有关更多信息,请参见启动数据库

    完成最后一个步骤后,HADB 数据将重新变为可用。

Procedure在出现故障时执行非规划的维护

  1. 检查数据库状态。

    请参见获取 HADB 的状态

    • 如果数据库状态为可操作或更佳:

      需要非规划的维护的计算机包含镜像节点。对每台故障计算机执行单个计算机过程(每次一个 DRU)。不中断 HADB 服务。

    • 如果数据库处于不可操作状态:

      需要非规划的维护的计算机包含镜像节点。当整个 HADB 位于一台故障计算机上时,就属于这种情况。请先使所有计算机启动并运行。然后清除 HADB 并重新创建会话存储。请参见清除数据库。这将中断 HADB 服务。

清除和归档历史文件

HADB 历史文件记录所有数据库操作和错误消息。HADB 附加在现有历史文件的末尾,因此文件大小将随时间增长。为了节省磁盘空间并防止文件过大,应定期清除和归档历史文件。

要清除数据库的历史文件,请使用 hadbm clearhistory 命令。

该命令语法为:

hadbm clearhistory  
[--saveto=path]  
[dbname]  
[--adminpassword=password | --adminpasswordfile=file]  
[--agent=maurl]

dbname 操作数指定数据库名称。默认值为 hadb

使用 --saveto 选项(短形式 -o)指定要存储旧的历史文件的目录。此目录必须具有适当的写权限。有关其他命令选项的说明,请参见常规选项

有关更多信息,请参见 hadbm-clearhistory(1)

hadbm create 命令的 --historypath 选项确定了历史文件的位置。历史文件名称的格式为 dbname.out.nodeno。有关 hadbm create 的信息,请参见创建数据库

历史文件格式

历史文件中的每条消息都包含以下信息:

有关资源短缺的消息包含字符串 "HIGH LOAD"。

您无需详细了解历史文件中的所有条目。如果由于某种原因您需要深入了解历史文件,请联系 Sun 用户支持。