سؤال

أنا أعمل على إعادة تجميع بعض كود PRO * C الذي لا يوجد أحد حاليا في شركتي جمعت من أي وقت مضى. إنها تجميع موافق، ولكن عندما أقوم بنسخه إلى خادم الإنتاج وتشغيله، أتلقى خطأ أوراكل ORA-12547 (TNS: Lost Contact)

أيه أفكار؟

هل كانت مفيدة؟

المحلول

أوه، احسبها. :-)

لا يعمل الملف القابل للتنفيذ 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 الخاص بي عندما أحاول الاتصال بقاعدة بيانات Oracle مع PL / SQL وفي نفس الوقت لدي اتصال VPN مفتوحا.

كان لدي مشكلة مماثلة في Linux، أوراكل 11GR2. Oracle Owner يمكن تشغيل SQL * Plus واتصل عبر إما TNS أو اتصال محلي. يمكن للمستخدم غير Oracle تسجيل الدخول عبر TNS، ولكن ليس كاتصال محلي.

اتضح الجواب كان أنه تم تثبيت نظام الملفات Oracle_home "Nosuid". إزالة خيار جبل هذا حل مشكلتي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top