我的工作,目前在我的公司从来没有人编译重新编译了一些PRO * C代码。它编译OK,但是当我把它复制到生产服务器并运行它我得到Oracle错误ORA-12547(TNS:失去联络)

任何想法?

有帮助吗?

解决方案

喔,理解了它。 : - )

的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

其他提示

与此相关的

,我刚刚发现我得到同样的错误ORA-12547 TNS失去了我的Windows机器上的接触,当我尝试连接到使用PL / SQL Oracle数据库,并在同一时间,我有一个VPN连接开。

我不得不在Linux中,Oracle 11gR2的类似的问题。甲骨文拥有者可以运行SQL * Plus和通过任何TNS或本地连接进去。非Oracle用户可以通过TNS登录,但不是本地连接。

原来的答案是,文件系统ORACLE_HOME被安装“为nosuid”。除去安装选项解决了我的问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top