Oracle Pro * C ORA-12547
-
13-09-2019 - |
سؤال
أنا أعمل على إعادة تجميع بعض كود 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". إزالة خيار جبل هذا حل مشكلتي.