이 조회를 실행하기 위해 자원 풀에 기본적으로 시스템 메모리가 부족합니다.


15

Windows Server 2012에서 SQL Server 2014-12.0.2269.0 (X64)을 사용하고 있으며 메모리 문제가 있습니다. 상당히 "무거운"계산을 수행하는 저장 프로 시저를 실행하면 10 분 후에 오류가 발생합니다.

이 쿼리를 실행하기 위해 리소스 풀 'default'에 시스템 메모리가 부족합니다.

내 SQL Server에는 여러 데이터베이스 (예 : 15)가 있지만 항상 동시에 사용되는 것은 아닙니다. 오류가 발생한 후 SQL Server 로그 파일을 살펴본 결과 다음과 같은 많은 줄이 나타납니다.

2015-12-17 12 : 00 : 37.57 spid19s 'default'리소스 풀의 메모리가 부족하여 '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

서버 메모리에 관한 정보는 다음과 같습니다.

  • 서버의 총 메모리 : 16Gb

  • SQL Server에 할당 된 메모리 : 12288Mb

  • 사용중인 실제 메모리 (부터 sys.dm_os_process_memory) : 9287 Mb

도움이 될 경우 서버는 SharePoint 데이터베이스를 호스팅하지 않습니다.


서버의 최대 메모리와 총 RAM은 얼마입니까?
Kin Shah

답변:


6

이것은 아마도 귀하의 문제에 대한 정확한 대답은 아니지만 어쨌든 그것이 당신을 도울 수 있기를 바랍니다.

당신이보고있는 것은 아니다 MEMORYCLERK_SQLBUFFERPOOL그러나 MEMORYCLERK_SQLLOGPOOL모든 메모리를 차지.

SQL 2012와 관련하여 알려진 문제가 있습니다 . SQL Server 2012에서 메모리 부족 오류가 발생합니다 . 2014를 실행하더라도 2014에 대한 연결 항목을 찾을 수 없더라도 동일한 문제가 발생할 가능성이 있습니다.

인덱스 재 구축과 관련하여 2014 년과 2012 년에도이 알려진 문제가 있습니다 always on. 사용하지 않도록 지정했지만 동일한 버그에 다른 트리거가있을 수 있습니다. FIX : SQL Server에서 테이블에 대한 인덱스를 다시 작성할 때 SQL 캐시 메모리가 감소하고 CPU 사용량이 증가합니다.

그래서 최근의 제안은 최신 CU로 업데이트 하고 여전히 발생하는지 확인하는 것 MEMORYCLERK_SQLLOGPOOL입니다. 최근에 몇 가지 수정 사항이 있었기 때문 입니다. 의미가있는 2 가지 보안 수정 사항만으로 RTM을 실행하고 있으므로 SP1 + 다중 CU를 사용할 수 있습니다.

이 문서 에서 MEMORYCLERK_XTP사용하는 메모리 사용량도 상당히 많으므로 in-memory OLTP문제 해결에 도움이 될 수 있습니다. 메모리 사용량 모니터링 및 문제 해결

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.