Applies ToSQL 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) SQL Server 2016 Service Pack 1 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

증상

Microsoft SQL Server 2016 및 2017에서 AUDIT_LOGINAUDIT_LOGIN_FAILED 이벤트에 이벤트 알림을 사용 하는 스크립트가 있다고 가정 합니다. 스크립트를 실행 하면 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

원인

이 문제는 SQL Server 2016 서비스 팩 1에 대 한 누적 업데이트 6의 재발 때문에 발생 합니다.

해결 방법

이 문제는 다음과 같은 SQL Server 누적 업데이트에서 해결 되었습니다.

       SQL Server 2017의 누적 업데이트 10

       SQL Server 2016 SP2에 대 한 누적 업데이트 2

       SQL Server 2016 SP1 용 누적 업데이트 10

각각의 새로운 새 누적 업데이트에는 이전 누적 업데이트에 포함 된 모든 핫픽스와 모든 보안 수정 사항이 포함 되어 있습니다. SQL Server에 대 한 최신 누적 업데이트를 확인 하세요.

SQL Server 2017의 최신 누적 업데이트

SQL Server 2016의 최신 누적 업데이트

상태

Microsoft는 "적용 대상" 절에 나열한 제품에서 이 문제를 확인했습니다.

참조

Microsoft에서 소프트웨어 업데이트를 설명 하는 데 사용 하는 용어에 대해 알아봅니다.

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.