2013-03-07 15 views
5

मेरे कामयाब ODP.net webapp स्थानीय स्तर पर काम करता है लेकिन जब यह एक सर्वर से तैनाती, यह त्रुटि के साथ विफल:ओरेकल प्रबंधित ODP.NET नहीं मिल सकता है tnsnames.ora

"टीएनएस: श्रोता वर्तमान के बारे में पता नहीं है कनेक्ट डिस्क्रिप्टर में अनुरोध किया गया सेवा "

आसपास देखने से ऐसा लगता है क्योंकि यह tnsnames.ora फ़ाइल नहीं प्राप्त कर सकता है।

मुझे कोई सफलता के साथ निम्नलिखित की कोशिश की है:

  • एक [ओरेकल घर] में एक tnsnames.ora फ़ाइल (वही है कि स्थानीय स्तर पर काम करता है) रखने [उत्पाद] ... \ नेटवर्क \ व्यवस्थापक फ़ोल्डर ।
  • प्रबंधित ओडीपी के web.config खंड में एक TNS_ADMIN सेटिंग सेट करना पर्यावरण चर को इंगित करता है।
  • प्रबंधित ओडीपी के web.config खंड में TNS_ADMIN सेटिंग को सीधे tnsnames.ora फ़ाइल पर इंगित करते हुए।

सर्वर पर, tnsping उपज त्रुटि चलाने का प्रयास TNS-03502: संदेश 3502 नहीं मिला; उत्पाद = नेटवर्क के लिए कोई संदेश फ़ाइल नहीं, सुविधा = टीएनएस

मुझे क्या याद आ रही है?

+0

क्या आप हमें अपने कनेक्शन स्ट्रिंग और tsnames.ora का सेंसर संस्करण दिखा सकते हैं? –

+0

लगता है कि आपका ऑरैक क्लाइंट सर्वर को सही ढंग से इंस्टॉल नहीं किया गया है। क्या यह मुद्दा हो सकता है? – evgenyl

उत्तर

8

जैसे एक connection string का उपयोग कर कि tnsnames.ora पर निर्भर नहीं करता, प्रयास करें:

Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=MyOracleSID)));User Id=myUsername;Password=myPassword; 
+0

हमारे पास कई ऑरैक क्लाइंट स्थापित किए गए कुछ सर्वर हैं और इस उत्तर ने हमें एक ही बॉक्स पर 10 जी और 11 जी इंस्टॉल करते समय बड़ा समय बचाया। – marty

+0

हालांकि, यह पूछे गए प्रश्न का उत्तर नहीं देता है। –

6

बस web.config या app.config को tns_admin पथ को जोड़ने और आप जहां फ़ोल्डर में इंगित एक tnsnames.ora फ़ाइल काम करना चाहिए।

<oracle.manageddataaccess.client> 
    <version number="*"> 
     <settings> 
     <setting name="tns_admin" value="E:\oracle11\product\11.2.0\client_1\network\admin" /> 
     </settings> 
    </version> 
</oracle.manageddataaccess.client> 
+0

कभी-कभी मुझे tns_admin सेटिंग में आगे की स्लैश का उपयोग करना पड़ता है। इसे अंधविश्वास कहते हैं, लेकिन मेरे मुद्दों को हल करने में मदद करता है। – matrixugly

0

एक पुरानी पोस्ट, लेकिन मैं एक समान समाधान की तलाश में हूं।

यह मेरे लिए होता है क्योंकि ऐसा लगता है कि ओडीपी.net एक टीएनएस फ़ाइल पथ निर्दिष्ट करने की अनुमति नहीं देता है, तो यदि आप फ़ाइल पथ से अवगत हैं, तो प्रोग्राम को प्रोग्रामेटिक रूप से पढ़ें और सामग्री को डेटासोर्स फ़ील्ड में सेट करें कनेक्शनस्ट्रिंगबिल्डर का। आदर्श नहीं है, लेकिन एक उचित कामकाज।

संबंधित मुद्दे