适用于 Microsoft Windows 的 Sun Java System Application Server Enterprise Edition 8.2 发行说明

高可用性

本节介绍已知的高可用性数据库 (HADB) 问题和相应的解决方法。

hadbm set 不检查资源可用性(磁盘和内存空间) (ID 5091280)

使用 hadbm set 命令增加设备或缓冲区大小时,管理系统将在创建数据库或添加节点时检查资源的可用性。不过,设备或主内存缓冲区大小发生变化时,系统不检查是否可以提供足够的资源。

解决方法

在增大 devicesizebuffersize 配置属性之前,确认所有主机上都有足够的可用磁盘空间或内存空间。

不支持 packagepath 的异构路径 (ID 5091349)

同一软件包不能在不同主机上的不同位置使用同一名称注册。例如:


hadbm registerpackage test --packagepath=/var/install1 --hosts europa11
Package successfully registered.
hadbm registerpackage test --packagepath=/var/install2 --hosts europa12
hadbm:Error 22171: A software package has already been registered with 
the package name test.

解决方法

HADB 不支持数据库群集中节点之间的异构路径。确保 HADB 服务器的安装目录 (--packagepath) 在所有参与的主机上都相同。

createdomain 可能会失败(ID 6173886、6253132)

在具有多个网络接口的主机上运行管理代理时,如果所有网络接口不是在同一子网中,则 createdomain 命令可能会失败:


hadbm:Error 22020: The management agents could not establish a 
domain, please check that the hosts can communicate with UDP multicast.

如果没有配置,管理代理将使用 UDP 多址广播的“首个”接口。“首个”由 java.net. NetworkInterface.getNetworkInterfaces() 的结果定义。

解决方法

最佳解决方法是告知管理代理使用哪个子网 (在配置文件中设置 ma.server.mainternal.interfaces 。例如,ma.server.mainternal.interfaces=10.11.100.0 )。此外,也可以配置子网之间的路由器,以便路由多址广播数据包(管理代理使用多址广播地址 228.8.8.8)。

在重试管理代理的新配置之前,可能需要清除管理代理系统信息库。停止域中的所有代理,并删除系统信息库目录(由管理代理配置文件中的 repository.dr.path 标识)中的所有文件和目录。必须先在所有主机上执行此清除,然后才能用新配置文件重新启动代理。

删除 HADB 实例后必须清除目录 (ID 6190878)

删除 HADB 实例后,尝试使用 configure-ha-cluster 命令创建新实例失败。此问题在于保留了原始 HADB 实例的旧目录 ha_install_dir/rep/*ha_install_dir/config/hadb/instance_name

解决方法

请确保在删除 HADB 实例后手动删除这些目录。

clu_trans_srv 无法中断 (ID 6249685)

在 Red Hat Enterprise Linux 3.0 的 64 位版本中有一个错误,使 clu_trans_srv 进程在执行异步 I/O 时进入不可中断模式。这意味着 kill -9 命令不起作用,必须重新引导操作系统。

解决方法

使用 Red Hat Enterprise Linux 3.0 的 32 位版本。

hadbm 不支持包含大写字母的密码 (ID 6262824)

当密码存储在 hadb 中时,其中的大写字母会转换成小写字母。

解决方法

请勿使用包含大写字母的密码。

管理代理上的会话对象超时而删除时,hadbm/ma 将生成故障错误消息 (ID 6275103)

服务器上的资源争用问题有时会导致管理客户机断开连接。重新连接时,可能会返回以下误导性错误消息“hadbm:错误 22184:必须提供密码才能连接到管理代理”

解决方法

检查服务器上是否发生资源问题,并采取适当的措施(例如,添加更多资源),然后再尝试重新操作。

管理代理不应使用特殊用途的接口。(ID 6293912)

IP 地址类似于 0.0.0.0 的特殊用途的接口不应注册为可供管理代理中的 HADB 节点使用的接口。如果用户使用主机名称而不是 IP 地址发出 hadbm create 命令,将 HADB 节点设置到这些接口上,则注册这些接口可能会导致出现此问题。此后,节点将无法通信,从而导致 create 命令挂起。

解决方法

在具有多个接口的主机上使用 hadbm create 时,始终明确使用 DDN 表示法来指定 IP 地址。

在 Windows 上重组失败 (ID 6291562)

在具有某些配置和负载的 Windows 平台上,操作系统中可能会出现大量的重汇编失败。已经发现 20 多个节点的配置在并行运行多个表扫描 (select *) 时有此问题。可能的症状包括:在系统的各个部分发生频繁的事务异常终止、修复或恢复耗时过长以及频繁超时。

解决方法

要修复此问题,可将 Windows 注册表变量 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters 设置为高于默认值 100 的值。为了达到最佳效果,可以将该值增加到 0x1000 ( 4096)。有关更多信息,请参见来自 Microsoft 支持页面的文章 811003

运行 hadbm start db_name 时,键入的部分密码将显示而不被屏蔽(ID 6303581、6346059、6307497)

机器过载时,屏蔽机制失效,已键入密码的某些字符可能会暴露出来。这种暴露会带来次要安全风险。密码应始终保持屏蔽。

解决方法

将密码置于其自身的密码文件中(此方法推荐用于 Application Server 8.1 版和更高版本),并通过 --adminpassword--dbpasswordfile 选项来引用这些文件。