KB4077105 - إصلاح: خطأ نفاد الذاكرة عندما تكون مساحة العنوان الظاهري لعملية SQL Server منخفضة جدا في SQL Server

ينطبق على
SQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows SQL Server 2016 Service Pack 1 SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

الأعراض

افترض أنك قمت بتثبيت الإصدار 64 بت من Microsoft SQL Server 2014 أو 2016 أو 2017 على كمبيوتر يعمل Windows Server 2012 أو إصدار سابق من نظام التشغيل Windows. عندما يستخدم SQL Server كافة مساحة العنوان الظاهري لوضع المستخدم، قد تتلقى رسالة خطأ نفاد الذاكرة في سجل أخطاء SQL Server. بالإضافة إلى ذلك، تستغرق الاستعلامات وقتا طويلا لإنهاء التنفيذ، ويحدث SOS_MEMORY_TOPLEVELBLOCKALLOCATOR الانتظار.

عند فحص نقاط المعلومات التالية، ستجد أن مساحة العنوان الظاهري المتوفرة منخفضة جدا:

  • DBCC MEMORYSTATUS - قسم Process/System Counts - الذاكرة الظاهرية المتوفرة
  • DMV: sys.dm_os_process_memory - virtual_address_space_available_kb العمود

تبدأ هذه القيم حوالي 8 تيرابايت (TB) في عملية x64 وتستمر في الصعود إلى الأسفل والوصول إلى بضعة غيغابايت (GB).

عندما تكون في المرحلة التي تكون فيها مساحة العنوان الظاهري المتوفرة منخفضة جدا، قد تواجه الاستعلامات التي تحاول إجراء تخصيص الذاكرة أيضا نوع انتظار من CMEMTHREAD.

ستستمر نقاط البيانات التالية في الزيادة بمرور الوقت:

  • DMV: sys.dm_os_process_memory sys.dm_os_memory_nodes - virtual_address_space_reserved_kb العمود
  • DBCC MEMORYSTATUS - قسم إدارة الذاكرة - الجهاز الظاهري المحجوز

ستزيد هذه القيم عادة في مضاعفات قيمة "الحد الأقصى لذاكرة الخادم" حتى 8 تيرابايت تقريبا.

ملاحظه يتم وصف المشكلة ذات الصلة أيضا في 3074434 KB.

الدقة

يتم تضمين هذا التحديث في التحديثات التراكمية التالية SQL Server:

التحديث التراكمي 4 SQL Server 2017

التحديث التراكمي 8 SQL Server 2016 SP1

التحديث التراكمي 10 SQL Server 2014 Service Pack 2

حول التحديثات التراكمية SQL Server:

يحتوي كل تحديث تراكمي جديد SQL Server على جميع الإصلاحات العاجلة وجميع إصلاحات الأمان التي تم تضمينها مع التحديث التراكمي السابق. اطلع على آخر التحديثات التراكمية SQL Server:

آخر تحديث تراكمي SQL Server 2017

آخر تحديث تراكمي SQL Server 2016

آخر تحديث تراكمي SQL Server 2014

ملاحظه بعد تطبيق هذا التحديث، يجب عليك إضافة علامة التتبع 8075 كمعلمة بدء تشغيل لتمكين هذا التغيير.

الحالة

لقد أكدت Microsoft على أن هذه مشكلة في منتجات Microsoft المُدرجة في القسم "ينطبق على".

المراجع

تعرّف على المصطلحات التي تستخدمها Microsoft لوصف تحديثات البرامج.