ここでは、高可用性データベース (HADB) に関する既知の問題とその解決方法を示します。
hadbm set を使用してデバイスまたはバッファーのサイズを増やす場合、管理システムは、データベースを作成したり、ノードを追加したりする際にはリソースが利用可能かどうかをチェックします。 しかし、デバイスまたはメインメモリーのバッファーサイズを変更するときには利用可能なリソースが十分にあるかどうかをチェックしません。
設定属性 devicesize または buffersize を増やす前に、すべてのホスト上にディスクおよびメモリーの空きスペースが十分にあることを確認してください。
同一のソフトウェアパッケージを、異なるホストの別の場所に同じ名前で登録することはできません。次に例を示します。
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 コマンドが失敗することがあります。
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 インスタンスの削除に続いて configure-ha-cluster コマンドで新しいインスタンスを作成しようとすると、失敗します。問題は、元の HADB インスタンスの古いディレクトリが ha_install_dir/rep/* と ha_install_dir/config/hadb/instance_name に残ることにあります。
HADB インスタンスの削除後に、手動でこれらのディレクトリを削除するようにしてください。
Red Hat Enterprise Linux 3.0 の 64 ビットバージョンには、非同期入出力の実行中に clu_trans_srv プロセスを中断不可能なモードに陥らせるバグが存在します。つまり、kill -9 コマンドが機能せず、オペレーティングシステムの再起動が必要になります。
Red Hat Enterprise Linux 3.0 の 32 ビットバージョンを使用します。
パスワードが hadb に格納されるときに、パスワード内の大文字は小文字に変換されます。
大文字を含むパスワードは使用しないでください。
場合によっては、サーバー上のリソース競合の問題によって管理クライアントが切断されることがあります。再接続時、「hadbm:Error 22184:A password is required to connect to the management agent」という紛らわしいエラーメッセージが返されることがあります。
サーバー上にリソースに関する問題があるかどうかを確認し、適切な処置 (たとえば、リソースの追加) を取ってから、操作を再試行します。
0.0.0.0 のような IP アドレスを含む特殊用途のインタフェースを、管理エージェント内の HADB ノードが使用する有効なインタフェースとして登録するべきではありません。このようなインタフェースを登録すると、IP アドレスの代わりにホスト名を使用して hadbm create コマンドを発行するユーザーによってこのインタフェース上に HADB ノードが設定された場合に、問題が発生する場合があります。その場合、これらのノードは通信できなくなり、create コマンドはハングアップします。
複数のインタフェースを備えたホスト上で hadbm create を使用する場合は、DDN 形式を使用して IP アドレスを常に明示的に指定します。
Windows プラットフォームでは、特定の設定および負荷の下で、オペレーティングシステム内で多数の再構築の失敗が発生する場合があります。この問題は、20 を超えるノードが設定されている状況で、複数のテーブルスキャン (select *) を並列に実行している場合に発生しています。症状としては、トランザクションが頻繁に中断し、修復またはリカバリの完了に長い時間がかかるため、システムのさまざまな場所で頻繁にタイムアウトが発生していることが考えられます。
この問題を修正するには、Windows レジストリ変数 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters をデフォルトの 100 より大きい値に設定します。この値を 0x1000 ( 4096) に増やすことをお勧めします。詳細は、Microsoft サポートページの記事 811003 を参照してください。
マシンに負荷がかかっていると、マスク機構が機能せず、入力したパスワードの一部が表示されることがあります。パスワードが表示されることにより、軽度のセキュリティーリスクが生じます。パスワードは常にマスクされる必要があります。
パスワードを独自のパスワードファイルに入れて (Application Server 8.1 以降推奨されている方法)、--adminpassword または --dbpasswordfile オプションでこれらのファイルを参照します。