- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:RSHコマンドでのsqlplusの起動)
RSHコマンドでのsqlplusの起動
このQ&Aのポイント
- RSHコマンドを使用してリモートサーバのsqlplusを操作する方法
- 検証環境ではうまく動作したが、本番環境でうまく動作しない理由について
- フルパスでsqlplusを指定するとエラーメッセージが表示される問題について
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
では、以下のコマンドを打ってみて、リモートサーバの方の環境変数を確かめてみては? % rsh -l oracle リモートサーバ名 env マニュアルをきちんと読まないと分からないけど、$HOME/.profile が 処理されていないのかもしれませんね。 .login や /etc/profile をいじる必要があるのかも。
その他の回答 (1)
- a-kuma
- ベストアンサー率50% (1122/2211)
回答No.1
まずは、本番環境のリモートサーバに直接 oracle でログインして、sqlplus を 実行してみましょう。 多分、環境変数がきちんと定義されていなくて sqlplus が not found になるはず なので、.cshrc や .profile をログインシェルに応じて、きちんと設定しましょう。 > rsh -l oracle リモートサーバ名 $ORACLE_HOME/bin/sqlplus こりゃあ無茶です。ローカルの環境変数を使ったって、他に必要な定義があれば 駄目なわけだし。たまたまローカルサーバの方にも、環境変数 ORACLE_HOME が 定義されていて、同じディレクトリにインストールしているから、中途半端に 動いているように見えますが。
質問者
補足
.profileを設定していて、今までリモートサーバ側で作業を行っていたので環境変数は問題ないはずです。sqlplusで作業を行っていました。 なにか他にお気づきの点などありましたら教えていただければと思います。
お礼
まさにその通りでした。ありがとうございます。 Linuxではrshを行った際、リモートサーバ側の.profileを読み込んでくれていたのですが、Solarisでは読み込んでくれてなかったみたいです。 リモートサーバ側にシェルスクリプトを置き、そこにexportコマンドを使い環境変数を設定すると実行できるようになりました。 % rsh -l oracle リモートサーバ名 シェルスクリプト ----シェルスクリプト---- ORACLE_HOME=/u01/app/oracle export ORACLE_HOME PATH=/u01/app/oracle/bin export PATH sqlplus ----シェルスクリプト---- ありがとうございました。