2012-11-26 13 views
22

मुझे पता है कि LocalDb का उपयोग करना बहुत अच्छा और विकास के लिए आसान है, मुझे आश्चर्य है कि जब मैं आईआईएस सर्वर पर वेबसाइट होस्ट करता हूं तो उत्पादन में इसका उपयोग करना अच्छा विचार है?क्या उत्पादन में स्थानीय डीबी का उपयोग करना सामान्य है?

मैं पूछ रहा हूं क्योंकि मुझे आश्चर्य है कि उत्पादन में किसी भी प्रकार की गति समस्या नहीं होगी।

यह मेरा कनेक्शन स्ट्रिंग है कि मैं उत्पादन में उपयोग करना चाहते हैं

Server=(LocalDB)\\v11.0;Integrated Security=SSPI;MultipleActiveResultSets=true; 
AttachDBFilename=|DataDirectory|ProjectDB.mdf; 
+1

क्यों? क्यूं कर? क्यूं कर? SQL सर्वर एक्सप्रेस का उचित उदाहरण उपयोग करें और अपने सभी उपयोगकर्ताओं को अपने डेटाबेस के समान, सामान्य उदाहरण से कनेक्ट करें। वर्तमान मोड में, प्रत्येक कनेक्शन डेटाबेस की अपनी प्रतिलिपि नहीं उठाएगा, और इसे पूरा होने के बाद इसे छोड़ दिया जाएगा? इस बात से कोई फर्क नहीं पड़ता कि सुरक्षा संदर्भ AFAIK पर सही तरीके से काम नहीं करेगा, और आप शायद ईयूएलए का उल्लंघन करेंगे। इसके अलावा आप पृथ्वी पर एकाधिक एक्टिव रीसेट्ससेट का उपयोग क्यों कर रहे हैं? क्या यह उद्देश्य पर है? –

+5

नहीं, स्थानीय डीबी उत्पादन के लिए नहीं है। –

+0

@AaronBertrand क्योंकि मेरे पास 'इस कमांड से जुड़ा एक खुला डेटा रीडर है जो पहले बंद होना चाहिए' त्रुटि। – sed

उत्तर

36

LocalDB बिल्कुल उत्पादन में समर्थित है है। प्रदर्शन बिंदु से यह SQL सर्वर एक्सप्रेस के समान है, क्योंकि वे एक ही डेटाबेस इंजन साझा करते हैं।

अब, पूर्ण आईआईएस में चल रहे किसी साइट के लिए मैं SQL सर्वर एक्सप्रेस के सेवा-आधारित उदाहरण का उपयोग करने की अनुशंसा करता हूं। चूंकि आईआईएस एक सेवा के रूप में चल रहा है, इसलिए सेवा-होस्टेड डेटाबेस भी सर्वोत्तम है। इसका मतलब है कि आपको User Instance=true या AttachDbFileName=... का उपयोग अपनी कनेक्शन स्ट्रिंग में करना चाहिए।

यदि आप और जानना चाहते हैं, तो मैं इस post on using LocalDB from full IIS, part 1 और its follow up, part 2 की अनुशंसा करता हूं। वे अधिक जानकारी में जाते हैं।

+0

यह सुनिश्चित नहीं है कि इसे सर्वर 2012 में कैसे काम करना है, फ़ाइल applicationHost.config asp.net 4.5 को एएसपीनेट स्थापित करने के बाद नाम प्रविष्टि नहीं दिखाता है। –

+0

स्थानीय डीबी पूरी तरह से उत्पादन में समर्थित नहीं है। –

+0

आप क्या कहते हैं @HosseinShahdoost? क्या माइक्रोसॉफ्ट ने अपने उत्पादन समर्थन को उलट दिया? यदि एक लिंक उपयोगी हो सकता है। –

5

मैं ऐसा नहीं सोचता,

हालांकि LocalDb और SQLExpress प्रदर्शन पर एक ही हो सकता है, LocalDb की प्रक्रिया ही बंद हो जाता है अगर यह थोड़ी देर के लिए किसी भी अनुरोध नहीं है। और आमतौर पर अगला अनुरोध प्रतिक्रिया के लिए बहुत लंबा लगता है (या इससे भी बदतर, यह समय समाप्त हो जाता है)।

मैं आपको SQLEXPRESS का अपना उदाहरण स्थापित करने की सलाह दूंगा।

4

"सामान्य" - कहना मुश्किल है, यह सापेक्ष शब्द है।

अनुमत - हाँ। Here is a quote Microsoft SQL सर्वर एक्सप्रेस ब्लॉग है जहां LocalDB पेश किया गया था से:

"... अगर LocalDB की सादगी (और सीमाएं) लक्ष्य आवेदन पर्यावरण की आवश्यकताओं के अनुसार, डेवलपर्स उत्पादन में इसका उपयोग करने, LocalDB के रूप में जारी रख सकते हैं एक बहुत अच्छा एम्बेडेड डेटाबेस भी बनाता है। "

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