0

私は現在、私の会社の誰もコンパイルしたことがない Pro*C コードの再コンパイルに取り組んでいます。コンパイルは問題ありませんが、本番サーバーにコピーして実行すると、Oracle エラー ORA-12547 (TNS: lost contact) が発生します。

何か案は?

4

3 に答える 3

2

ああ、それを理解しました。:-)

C 実行可能ファイルはサーバー上で直接実行されるのではなく、接続環境を設定するスクリプトを通じて起動されます。つまり、次のようなものです。

export SHLIB_PATH=/oracleDatabaseSidHere/oracle/10.2/lib:/usr/lib:/oracleDatabaseSidHere/oracle/10.2/odg/lib
export ORACLE_BASE=/oracleDatabaseSidHere/oracle
export ORACLE_SID=oracleDatabaseSidHere
export ORACLE_HOME=/oracleDatabaseSidHere/oracle/10.2

# Set up the path and executable to run
PATH=.\:$PATH:$ORACLE_HOME/bin:/usrlocal/bin
PATH=$PATH:/path_to_application_logs

cd /path_to_application
application
于 2009-04-23T13:31:53.890 に答える
0

Linux、Oracle 11gR2でも同様の問題がありました。Oracle 所有者は、SQL*Plus を実行し、TNS またはローカル接続を介してアクセスできます。Oracle 以外のユーザーは、TNS 経由でログインできましたが、ローカル接続ではログインできませんでした。

その答えは、ORACLE_HOME ファイルシステムが「nosuid」でマウントされていたことでした。そのマウントオプションを削除すると、問題が解決しました。

于 2013-02-23T00:31:04.910 に答える
0

これに関連して、PL/SQL を使用して Oracle データベースに接続しようとすると、Windows マシンで同じエラー ORA-12547 TNS Loss contact が発生し、同時に VPN 接続が開いていることがわかりました。

于 2013-02-13T09:07:39.823 に答える