Oracle Pro * C ORA-12547

Я работаю над повторной компиляцией некоторого кода Pro * C, который в настоящее время никто в моей компании никогда не компилировал. Он компилируется нормально, но когда я копирую его на рабочий сервер и запускаю, я получаю ошибку Oracle ORA-12547 (TNS: потерян контакт)

Любые идеи?


person Jeff    schedule 23.04.2009    source источник


Ответы (3)


Ой, разобрался. :-)

Исполняемый файл 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
person Jeff    schedule 23.04.2009

В связи с этим я только что обнаружил, что получаю ту же ошибку ORA-12547 TNS потерял контакт на моем компьютере с Windows, когда я пытаюсь подключиться к базе данных Oracle с помощью PL / SQL, и в то же время у меня открыто VPN-соединение.

person victorvartan    schedule 13.02.2013

У меня была аналогичная проблема на Linux, Oracle 11gR2. Владелец Oracle мог запустить SQL * Plus и войти через TNS или локальное соединение. Пользователь, не являющийся пользователем Oracle, может войти в систему через TNS, но не через локальное соединение.

Оказывается, ответ заключался в том, что файловая система ORACLE_HOME была смонтирована как «nosuid». Удаление этой опции крепления решило мою проблему.

person DCookie    schedule 23.02.2013