ablog

不器用で落着きのない技術者のメモ

11g RAC構築で dbca の画面が次に進まない

Oracle 11g で dbca を使って ASMディスクグループを作ろうとすると、画面が次に進まない現象が発生。

$ dbca

[Oracle Real Application Clusters データベース]を選択して、[次へ]を押下する。
[自動ストレージ管理の構成]を選択して、[次へ]を押下する。
次の画面へ遷移せず、dbca を実行したコンソールに以下のようなメッセージが表示される。


[AWT-EventQueue-0] [12:31:48:636] [RuntimeExec.runCommand:75] Calling Runtime.exec() with the command
[AWT-EventQueue-0] [12:31:48:636] [RuntimeExec.runCommand:77] /oracle/app/crs/bin/crsctl
[AWT-EventQueue-0] [12:31:48:636] [RuntimeExec.runCommand:77] query
[AWT-EventQueue-0] [12:31:48:636] [RuntimeExec.runCommand:77] crs
[AWT-EventQueue-0] [12:31:48:636] [RuntimeExec.runCommand:77] activeversion
[Thread-6] [12:31:48:715] [StreamReader.run:61] In StreamReader.run
[AWT-EventQueue-0] [12:31:48:716] [RuntimeExec.runCommand:142] runCommand: Waiting for the process
[AWT-EventQueue-0] [12:31:48:716] [RuntimeExec.runCommand:144] runCommand: process returns 0
[Thread-5] [12:31:48:717] [StreamReader.run:61] In StreamReader.run
[Thread-5] [12:31:48:717] [StreamReader.run:65] OUTPUT>?N???X?^????Oracle Clusterware???A?N?e?B?u???o?[?W??????[11.1.0.7.0]????
[AWT-EventQueue-0] [12:31:48:718] [RuntimeExec.runCommand:161] RunTimeExec: output>
[AWT-EventQueue-0] [12:31:48:718] [RuntimeExec.runCommand:164] ?N???X?^????Oracle Clusterware???A?N?e?B?u???o?[?W??????[11.1.0.7.0]????
[AWT-EventQueue-0] [12:31:48:718] [RuntimeExec.runCommand:170] RunTimeExec: error>
[AWT-EventQueue-0] [12:31:48:719] [RuntimeExec.runCommand:192] Returning from RunTimeExec.runCommand
[AWT-EventQueue-0] [12:31:48:719] [ClusterInfo.getCRSActiveVersionString:1317] output[0]=?N???X?^????Oracle Clusterware???A?N?e?B?u???o?[?W??????[11.1.0.7.0]????
[AWT-EventQueue-0] [12:31:48:719] [ClusterInfo.getCRSActiveVersionString:1330] Active version = ?W??????
[AWT-EventQueue-0] [12:31:48:719] [Host.checkCRSActiveVersion:2427] CRS active version = ?W??????
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: "?W??????"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)

dbca から crsctl を実行して標準出力をとろうとしているが、うまくいっていない模様。
文字化けしてる。環境変数 LANG に c をセットして再実行してみたが、相変わらず文字化けする。

$ export LANG=c
$ dbca

環境変数 NLS_LANG の language を American にしてみたらうまく言った。

$ export American_Japan.JA16EUC
$ dbca

あと、環境変数 NLS_LANG がセットされていない場合も同じ問題が発生したが、同じ方法で解決した。