الأعراض
افترض ان لديك برنامج نصي يستخدم اعلامات الاحداث لAUDIT_LOGIN والاحداث الAUDIT_LOGIN_FAILED في Microsoft SQL server 2016 و 2017. عند تشغيل البرنامج النصي ، ستلاحظ انه سيتم زيادة حجم TempDB بسرعة.
يمكنك استخدام الاستعلام أدناه للتحقق مما إذا كانت المساحة المخصصة لكائنات TempDB الداخلية ديالوكاتيده بشكل صحيح.
SELECT *
FROM (
SELECT TS.internal_objects_alloc_page_count , TS.internal_objects_dealloc_page_count, [Net Allocation MB] = CAST((TS.internal_objects_alloc_page_count - TS.internal_objects_dealloc_page_count) AS DECIMAL(15, 2)) / 128
, TS.session_id
, ER.command
FROM sys.dm_db_task_space_usage TS
INNER JOIN sys.dm_exec_requests ER ON ER.request_id = TS.request_id AND ER.session_id = TS.session_id
where TS.session_id < 50
) internal
where [Net Allocation MB] != 0
السبب
تحدث هذه المشكلة بسبب وجود انحدار في التحديث التراكمي 6 ل SQL server 2016 Service Pack 1.
الحل
تم تصحيح هذه المشكلة في التحديثات التراكمية التالية ل SQL Server:
تحديث تراكمي 10 ل SQL Server 2017
يحتوي كل تحديث تراكمي جديد ل SQL Server علي كل الإصلاحات العاجلة وكل تصحيحات الأمان التي تم تضمينها في التحديث التراكمي السابق. اطلع علي آخر التحديثات التراكمية ل SQL Server:
الحالة
أقرت Microsoft أن هذه المشكلة تحدث في منتجات Microsoft المسردة في المقطع "تنطبق على".
المراجع
تعرف علي المصطلحاتالتي تستخدمها Microsoft لوصف تحديثات البرامج.