2009-07-10 8 views
15

मेरे पास एक वेब एप्लिकेशन है जो वर्तमान में SQL सर्वर 2005 डेटाबेस और आईआईएस 6.0 के साथ विंडोज एक्सपी ऑपरेटिंग सिस्टम पर चल रहा है।

अब, हम इसे विंडोज सर्वर 2008 और SQL सर्वर 2008 डेटाबेस पर आईआईएस 7.0 में अपग्रेड करने का प्रयास कर रहे हैं।

जब मैं एप्लिकेशन चलाता हूं तो यह फेंक रहा है "सर्वर पर अनुरोध भेजते समय एक परिवहन-स्तर त्रुटि आई है। (प्रदाता: टीसीपी प्रदाता, त्रुटि: 0 - रिमोट होस्ट द्वारा एक मौजूदा कनेक्शन जबरन बंद कर दिया गया था।) "अलग-अलग डेटाबेस कॉल पर यादृच्छिक रूप से।

मैंने "sp_who" का उपयोग करके सत्यापित किया है कि केवल एक कनेक्शन जिसका मैं उपयोग कर रहा हूं खोला गया है।

क्या कोई मुझे बता सकता है, इस मुद्दे का कारण क्या हो सकता है?एक परिवहन-स्तरीय त्रुटि आई है ... (सर्वर द्वारा मौजूदा कनेक्शन बंद) एसक्यूएल सर्वर 2008

+0

अभी भी यह समस्या है? –

+0

इस के लिए कोई समाधान ??? – Narendra

उत्तर

1

अक्सर, यह डेटाबेस की जा रही ऑफ़लाइन/बंद कर दिया या SQL उदाहरण को पुन: प्रारंभ किया जा रहा/ऑफ़लाइन

4

हो सकता है कि डेटाबेस ऑटो पास करने के लिए सेट कर दिया जाता? यह पुराने एमएसडीई/एक्सप्रेस संस्करण पर बनाए गए डेटाबेस के लिए डिफ़ॉल्ट था।

ALTER DATABASE YourDatabaseName SET AUTO_CLOSE OFF; 

अधिक:

SQL Server 2005 Express Edition Overview कहता है:

Features like Auto-Close and the ability to copy databases as files are enabled by default in SQL Server Express ...

मैं याद नहीं कर सकते जो सर्विस पैक, डिफ़ॉल्ट बदल लेकिन प्रबंधन स्टूडियो के SP3 संस्करण में नई डाटाबेस यूआई एक्सप्रेस Auto Close को false पर सेट करता है।

+0

एमएसडीई, हां। यह एक्सप्रेस संस्करण कभी भी डिफ़ॉल्ट था? –

+0

संपादित करें: अधिक जानकारी जोड़ा गया। – devstuff

+0

@devstuff - काम करता है, लेकिन SQL सर्वर को फिर से शुरू होने पर हर बार निष्पादित करने की आवश्यकता होती है। इसे स्थायी बनाने का कोई तरीका? –

2

यह एक त्रुटि है जो निम्न परत नेटवर्क से संबंधित त्रुटि के कारण डेटाबेस से कनेक्ट करते समय होती है जिसे आप SQL Server से संभाल नहीं सकते हैं।

यह बहुत अच्छा होगा कि एपीआई इस त्रुटि को संभालने के लिए प्रयुक्त होता था लेकिन AFAIK यह नहीं है। इसे हल करने का एकमात्र तरीका यह त्रुटि होने पर डेटाबेस से कनेक्ट करने का पुनः प्रयास करना है।

आपको यह सुनिश्चित करने के लिए कम से कम दो बार फिर से कनेक्ट करने का प्रयास करना चाहिए कि त्रुटि लगातार नहीं है और यदि ऐसा है तो अपवाद फेंक दें। मेरा अनुभव मुझे बताता है कि फिर से कनेक्ट करने की कोशिश कर रहा है, 99.9% बार आप सफल होंगे।

14

blog postMichael Aspengren त्रुटि संदेश बताता है "सर्वर पर अनुरोध भेजते समय एक परिवहन-स्तर त्रुटि आई है।"

0

परिवहन स्तर त्रुटियों को अक्सर एसक्यूएल सर्वर को तोड़ने के कनेक्शन से जोड़ा जाता है ... आमतौर पर नेटवर्क।

टाइमआउट की समयसीमा आमतौर पर फेंक दी जाती है जब एक एसक्यूएल क्वेरी चलाने के लिए बहुत अधिक समय लगता है। क्या यह आपके मामले में परिदृश्य है? संग्रहित प्रो को निष्पादित करने में बहुत अधिक समय लग रहा है या क्या बैच नौकरियां निष्पादित की गई हैं?

0

मेरे मामले में। हमारे पास डीएलएल आर 720 है, एनआईसी बोर्ड पर हैं और पीसीआई ब्रॉडकॉम नेटएक्सट्रीम गिगाबिट ईथरनेट कार्ड हैं। हम दो मुद्दों में भाग लेते हैं।

  1. हाइपरवी वीएम के लिए नेटवर्क की गति बहुत धीमी है। समाधान हाइपरवी होस्ट ब्रॉडकॉम निक प्रॉपर्टी विंडोज़ की "वर्चुअल मशीन कतार" को अक्षम करना है। यह उन्नत टैब में है।

  2. SQL क्लाइंट इस परिवहन स्तर के मुद्दे वाले हैं। यह केवल 10-15 मिनट में एक बार हुआ था। साथ ही आरडीपी सेवा समय-समय पर ग्राहक को बाहर निकाल देती है। समाधान हाइपरवी होस्ट ब्रॉडकॉम निक प्रॉपर्टी विंडोज़ के "बड़े भेजें ऑफलोड वी 2" को अक्षम करना है। यह उन्नत टैब में है।

0

निपटान के साथ साफ़पूल (urSQLconnection) का उपयोग करें। यह गंदे कनेक्शन को साफ़ करेगा। और आप नया कनेक्शन खोल सकते हैं।

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