मैं Windows Server 2012 पर SQL Server 2014 - 12.0.2269.0 (X64) का उपयोग कर रहा हूं और मैं कुछ मेमोरी समस्याओं का सामना कर रहा हूं। जब मैं एक संग्रहीत प्रक्रिया चलाता हूं जो काफी "भारी" गणना कर रहा है, तो मुझे 10 मिनट के बाद कुछ त्रुटि मिलती है:
इस क्वेरी को चलाने के लिए संसाधन पूल 'डिफ़ॉल्ट' में अपर्याप्त सिस्टम मेमोरी है।
मेरे SQL सर्वर में कई डेटाबेस हैं (जैसे 15, लेकिन वे हमेशा एक ही समय में उपयोग नहीं किए जाते हैं)। मैंने SQL सर्वर लॉग फ़ाइल को देखा (जब मुझे त्रुटि मिली), और मैंने इस तरह की बहुत सारी लाइनें देखीं:
2015-12-17 12: 00: 37.57 spid19s संसाधन पूल 'डिफ़ॉल्ट' में अपर्याप्त मेमोरी के कारण डेटाबेस 'Database_Name' के लिए पृष्ठ आवंटन को रद्द करना। अधिक जानकारी के लिए ' http://go.microsoft.com/fwlink/?LinkId=330673 ' देखें।
प्रत्येक घटक द्वारा उपयोग की गई मेमोरी (मुझे लगता है) के साथ लॉग में एक रिपोर्ट उत्पन्न होती है। यदि मैं रिपोर्ट की सही व्याख्या करता हूं, तो हम देख सकते हैं कि वहाँ बहुत सी मेमोरी खपत है MEMORYCLERK_SQLBUFFERPOOL
। आप यहां रिपोर्ट पा सकते हैं: http://pastebin.com/kgmk9dPH
मैंने एक ग्राफ के साथ एक रिपोर्ट भी तैयार की है जो समान "निष्कर्ष" दिखाता है:
यहाँ शायद एक और उपयोगी रिपोर्ट है:
ध्यान दें कि मैंने इस त्रुटि को लॉग में भी देखा है:
2015-12-17 12: 04: 52.37 spid70 डेटाबेस मेमोरी दबाव के कारण पृष्ठ आवंटित करने में विफल: FAIL_PAGE_ALLOCATION 8
यहाँ सर्वर की मेमोरी के बारे में कुछ जानकारी दी गई है:
सर्वर पर कुल मेमोरी: 16 जीबी
SQL सर्वर को आवंटित मेमोरी: 12288 एमबी
भौतिक मेमोरी उपयोग में (से
sys.dm_os_process_memory
): 9287 एमबी
यदि यह मदद कर सकता है, तो सर्वर किसी भी SharePoint डेटाबेस की मेजबानी नहीं करता है।