ユーザーwsadmin
で実行されるWebsphereアプリケーションがあります。
アプリケーションはSQLバルクローダークライアントを呼び出します./sqlldr
Sqlldrが機能するには、次のような事前定義されたいくつかの環境変数が必要です。
Oracle_BASE=/usr/app/Oracle
Oracle_HOME=/usr/app/Oracle/product/11.2.0.1/client_64
Oracle_SID=VDO1018
これらの変数を配置するのに最適な場所を教えてください。私にはいくつかの選択肢があります:
1)/ etc/profileまたは/ etc/environment
2)wsadminユーザーの.bash_profile
私がこの質問をしている理由は、sqlldrがランダムに失敗していて、現在、変数が.bash_profileに配置されているためです。 .bash_profileはログインシェルに使用されるため、JVMプロセスに適用されるかどうかはわかりません。
WebSphere ApplicationServerでこれを設定してみることをお勧めします。
管理コンソールを使用して、 サーバー>サーバーの種類> WebSphereアプリケーションサーバー> サーバーネーム >サーバーインフラストラクチャ> Javaおよびプロセス管理>プロセス定義>環境エントリ
そこで、環境変数を追加できます。複数のサーバーでクラスター化されたアプリケーションを実行している場合は、それらすべてにこれを設定する必要があることに注意してください。
追加:これを説明するテクニカルノートも見つけました: http://ibm.com/support/docview.wss?uid=swg2125415