MSCSからJDBC(OCI)ドライバを使う場合の注意

Microsoft製のクラスタソフト、MSCS経由でJavaアプリケーションを起動してJDBC(OCI)でOracle Databaseにアクセスする場合、ユーザ環境変数のPATHに%ORACLE_HOME%\binが入っている必要があります。


MSCSはクラスタ対象アプリ起動時にシステム環境変数を無効にし、ユーザ環境変数のみで起動をかけるようです。

Windows版Oralceクライアントのインストール時、自動的にシステム環境変数へ%ORACLE_HOME%を追加してくれます。そのため、JDBC(OCI)からOCI JDBC用ライブラリ(ocijdbc10.dll)の参照が可能ですが、MSCS経由で起動するとアプリからシステム環境変数が見れないため、上記のエラーとなるようです。

Oracleクライアント側でMSCSを使うケースは多くはないと思いますが、ちょっとはまりやすいポイントだと思ったので書き残しておきます。