버퍼풀 관련한 윈도우 서포트 글이 있길래 이것도 살포시 스크랩 해 본다..
http://support.microsoft.com/kb/918483/ko
64 비트 버전의 SQL Server 버퍼 풀 메모리 페이지 수를 줄이고 방법
기술 자료: 918483 - 이 문서가 적용되는 제품 보기.
소규모 기업 고객의 경우 추가 문제 해결 및 학습 중소기업에 대 한 지원 사이트에서 리소스를 찾습니다.
이 페이지에서
요약
현상
원인
해결 과정
추가 정보
이 문제를 해결 하는 방법
SQL Server [NULL]의 64 비트 버전에서 사용 되는 메모리를 확인 하는 방법
"메모리의 페이지 잠그기" 사용자는 64 비트 버전의 SQL Server 인스턴스에 대 한 권한을 할당 하기 전에 중요 한 고려 사항
SQL Server 링 버퍼에서 정보가 페이징 발생할 때 메모리 조건의 확인할 수를 사용 하는 방법
SQL Server 2008 R2 BPA 정보
loadTOCNode(3, 'moreinformation');
Windows Server 2008 R2 및 Windows Server 2008의에서 향상 된 기능
속성
피드백 보내기
요약
Microsoft SQL Server 현재 로드 및 시스템에 대 한 작업의 메모리 요구 사항에 따라 동적 메모리 관리를 수행 합니다. SQL Server Windows Server 2003 또는 Windows XP 또는 최신 버전의 시스템, QueryMemoryResourceNotification Windows API에서 제공 하는 메모리 알림 메커니즘을 사용할 수 있습니다. Microsoft Windows 2000 Server 기반 시스템에서 SQL Server 정기적으로 시스템의 물리적 메모리 네이티브 Windows API를 사용 하 여 계산 합니다. QueryMemoryResourceNotification Windows API 또는 메모리 계산에서이 정보에 따라, SQL Server 특정 시스템에서 현재 메모리 상황에 응답 합니다. 이 다음과 같은 이점을 제공합니다.
- 시스템이는 SQL Server 프로세스의 작업 집합 아웃 페이지 되지 않습니다.
- 필요한 데이터베이스 페이지는 실제 I/O 요구를 줄이는 메모리에서 사용할 수 있습니다.
현상
SQL Server 64 비트 버전에서는 다양 한 문제가 발생할 수 있습니다. 예를 들어, 다음과 같은 문제가 발생할 수 있습니다.
Microsoft SQL Server 지원 팀이 추가 오류 메시지나 경고를 Windows 이벤트 로그 나 SQL Server 오류 로그에 기록 됩니다 또한 관찰 됩니다. 이러한 메시지는 다음과 같습니다.
이러한 추가 오류 메시지나 경고 함께 "sql 서버 프로세스 메모리의 중요 한 일부 페이징된" 오류가 나타날 메시지. 몇 가지 경우에 이러한 추가 오류 메시지나 경고 오류 메시지와 함께 표시 되지 않았습니다.
이러한 오류 메시지 또는 경고를 발생 하면 유일한 원인이 아니라 발생할 수 있지만이 문서에서 설명 하는 집합 페이징 작업은 SQL Server 고려해 야 합니다.
- SQL Server 성능이 갑자기 저하 됩니다.
- SQL Server 실행 하는 컴퓨터가 잠시 동안 응답 하지 않습니다.
- SQL Server 연결 하는 응용 프로그램에 대 한 시간이 초과 되었습니다.
- 심지어 간단한 명령을 실행 하거나 시스템에서 응용 프로그램을 사용할 때 문제가 발생 합니다.
오류 메시지 1
date time spid1s A sql 서버 프로세스 메모리의 중요 한 일부 페이징된. 이 성능이 저하 될 수 있습니다. 재생 시간: 0 초입니다. 작업 집합 (KB): 1086400, 커밋된 (KB): 2160928, 메모리 사용률: 50%.
오류 메시지 2
date time spid1s A sql 서버 프로세스 메모리의 중요 한 일부 페이징된. 이 성능이 저하 될 수 있습니다. 기간: 315 초입니다. 작업 집합 (KB): 410156, 커밋된 (KB): 2201296, 메모리 사용률: 18%.
오류 메시지 3
date time spid1s A sql 서버 프로세스 메모리의 중요 한 일부 페이징된. 이 성능이 저하 될 수 있습니다. 기간: 646 초입니다. 작업 집합 (KB): 901904, 커밋된 (KB): 2215752, 메모리 사용률: 40%.
2009-05-05 15:43:56.01 Server Resource Monitor (0x13c43) Worker 0x0412C1E8 appears to be non-yielding on Node 0. Memory freed: 34152 KB. Approx CPU Used: kernel 171 ms, user 140 ms, Interval: 125093. 2009-05-05 12:54:52.18 Server * ******************************************************************************* 2009-05-05 12:54:52.18 Server * BEGIN STACK DUMP: 2009-05-05 12:54:52.18 Server * 05/05/08 12:54:52 spid 0 2009-05-05 12:54:52.18 Server * Non-yielding Resource Monitor 2009-05-05 12:54:52.18 Server * ******************************************************************************* 2009-06-10 09:13:53.44 Server * ******************************************************************************* 2009-06-10 09:13:53.44 Server * BEGIN STACK DUMP: 2009-06-10 09:13:53.44 Server * 06/10/09 09:13:53 spid 0 2009-06-10 09:13:53.44 Server * Non-yielding IOCP Listener 2009-06-10 09:13:53.44 Server * ******************************************************************************* 2009-06-10 09:13:55.85 spid2s LazyWriter: warning, no free buffers found. 2009-07-15 13:27:45.35 spid4s AppDomain xx (SQLCLR.dbo[runtime].xx) is marked for unload due to memory pressure. 2009-07-15 13:27:45.35 spid4s AppDomain xx (SQLCLR.dbo[runtime].xx) unloaded. 2009-07-15 13:37:51.42 Logon Error: 17189, Severity: 16, State: 1. 2009-07-15 13:37:51.42 Logon SQL Server failed with error code 0xc0000000 to spawn a thread to process a new login or connection. Check the SQL Server error log and the Windows event logs for information about possible related problems. [CLIENT: xx.xxx.xx.xx] Event Type: Error Event Source: SQLBrowser Event ID: 8 Description: The SQLBrowser service was unable to process a client request.
이러한 오류 메시지 또는 경고를 발생 하면 유일한 원인이 아니라 발생할 수 있지만이 문서에서 설명 하는 집합 페이징 작업은 SQL Server 고려해 야 합니다.
원인
Windows 운영 체제 페이지 SQL Server 프로세스의 작업 집합 out이 문제가 발생 합니다.
SQL Server 프로세스의 작업 집합 50%에 도달할 때 이러한 오류 메시지가 기록 되는 SQL Server 프로세스에 커밋된 메모리의 약.
이 문제가 발생 하면 동시에 시스템의 다른 응용 프로그램의 작업 집합 아웃 페이지도 떨어질 수 있습니다.
자세한 내용은 다음 Microsoft 웹 사이트를 방문 하십시오.
SQL Server 프로세스의 작업 집합 50%에 도달할 때 이러한 오류 메시지가 기록 되는 SQL Server 프로세스에 커밋된 메모리의 약.
이 문제가 발생 하면 동시에 시스템의 다른 응용 프로그램의 작업 집합 아웃 페이지도 떨어질 수 있습니다.
자세한 내용은 다음 Microsoft 웹 사이트를 방문 하십시오.
http://blogs.msdn.com/psssql/archive/2007/05/31/the-sql-server-working-set-message.aspx
또한 SQL Server 인스턴스를이 오류 메시지가 나타날 수 있습니다에 알려진된 문제가 있습니다.
(http://blogs.msdn.com/psssql/archive/2007/05/31/the-sql-server-working-set-message.aspx)
http://blogs.msdn.com/psssql/archive/2009/05/12/sql-server-reports-working-set-trim-warning-message-during-early-startup-phase.aspx
(http://blogs.msdn.com/psssql/archive/2009/05/12/sql-server-reports-working-set-trim-warning-message-during-early-startup-phase.aspx)
해결 과정
이 문제를 해결 하려고 하기 전에이 문제를 해결 하려면 "이이 문제를 해결 하는 방법" 절의 단계를 수행 합니다.
이 문제가 여전히 발생 하는 경우에 Windows 운영 체제 페이징 아웃 버퍼 풀 메모리의 SQL Server 프로세스에서에서 실제 메모리를 버퍼 풀에 할당 된 메모리를 잠가 방지할 수 있습니다. 메모리를 할당 하 여 잠글는 메모리의 페이지 잠그기 SQL Server 서비스 시작 계정으로 사용 권한을 사용자 계정에 대 한 사용자입니다.
참고 SQL Server Enterprise Edition의 64 비트 버전의 SQL Server [NULL]를 사용할 수 있습니다의 메모리의 페이지 잠그기 사용자 권한 SQL Server 2005 [RTM, SP1, SP2, SP3] 및 [RTM 및 SP1] 2008 SQL Server에 해당 됩니다. SQL Server 2008 SP1 누적 업데이트 2 및 SQL Server 2005 SP3 누적 업데이트 4 소개 지원 SQL Server 표준 버전을 사용 하 여 메모리의 페이지 잠그기 사용자 권한 64 비트 시스템에서 잠긴된 페이지 지원에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
사용자 권한을 시작할 때 SQL Server 오류 로그에 다음과 같은 메시지가 작성 된 하 여 SQL Server 인스턴스에서 사용 됩니다 유효성을 검사할 수 있습니다.
이 문제가 여전히 발생 하는 경우에 Windows 운영 체제 페이징 아웃 버퍼 풀 메모리의 SQL Server 프로세스에서에서 실제 메모리를 버퍼 풀에 할당 된 메모리를 잠가 방지할 수 있습니다. 메모리를 할당 하 여 잠글는 메모리의 페이지 잠그기 SQL Server 서비스 시작 계정으로 사용 권한을 사용자 계정에 대 한 사용자입니다.
참고 SQL Server Enterprise Edition의 64 비트 버전의 SQL Server [NULL]를 사용할 수 있습니다의 메모리의 페이지 잠그기 사용자 권한 SQL Server 2005 [RTM, SP1, SP2, SP3] 및 [RTM 및 SP1] 2008 SQL Server에 해당 됩니다. SQL Server 2008 SP1 누적 업데이트 2 및 SQL Server 2005 SP3 누적 업데이트 4 소개 지원 SQL Server 표준 버전을 사용 하 여 메모리의 페이지 잠그기 사용자 권한 64 비트 시스템에서 잠긴된 페이지 지원에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
970070
메모리의 페이지 잠그기 사용자 권한을 할당 하려면 다음과이 같이 하십시오.
(http://support.microsoft.com/kb/970070/)
SQL Server 2005 표준 버전 64 비트 시스템에서를 SQL Server 2008 표준 에디션 64 비트 시스템에서 잠긴 된 페이지 지원 - 시작, 실행, gpedit.msc입력 및 다음 확인을 누릅니다.
참고 는그룹 정책 대화 상자가 나타납니다. - 컴퓨터 구성확장 한 다음 Windows 설정을 확장 합니다.
- 보안 설정확장 한 다음 로컬 정책을 확장 합니다.
- 사용자 권한 할당클릭 한 다음 메모리의 페이지 잠그기를두 번 클릭 합니다.
- 로컬 보안 정책 설정 대화 상자에서 사용자 또는 그룹 추가클릭 합니다.
- 사용자 또는 그룹 선택 대화 상자에서 Sqlservr.exe 파일을 실행할 수 있는 권한을 가진 계정을 추가 하 고 확인을 클릭 합니다.
- 그룹 정책 대화 상자를 닫습니다.
- SQL Server 서비스를 다시 시작 합니다.
사용자 권한을 시작할 때 SQL Server 오류 로그에 다음과 같은 메시지가 작성 된 하 여 SQL Server 인스턴스에서 사용 됩니다 유효성을 검사할 수 있습니다.
버퍼 풀의 잠긴된 페이지를 사용 하 여
이 메시지는 64 비트 버전의 SQL Server만 적용 됩니다.
http://blogs.msdn.com/psssql/archive/2007/10/18/do-i-have-to-assign-the-lock-privilege-for-local-system.aspx
Windows 운영 체제 페이지 nonbuffer 풀 메모리 부족으로 성능 문제가 여전히 발생할 수 있습니다.
(http://blogs.msdn.com/psssql/archive/2007/10/18/do-i-have-to-assign-the-lock-privilege-for-local-system.aspx)
추가 정보
이 문제를 해결 하는 방법
이 문제를 해결 하려면 다음과이 같이 하십시오.- Windows 운영 체제에 SQL Server 프로세스의 작업 집합 아웃 페이지 발생 하는 알려진된 문제를 해결 하려면 다음 Microsoft 기술 자료 문서에 설명 되어 있는 핫픽스를 적용 합니다.
참고- Microsoft는 작업 집합 잘라내야 할 SQL Server 64 비트 버전 발생할 수 있는 문제를 발견 했습니다.
905865(http://support.microsoft.com/kb/905865/)터미널 서비스를 사용 하 여 로그온 하거나 Windows Server 2003을 실행 하는 컴퓨터에서 로그 오프 하려면 콘솔 세션에서 모든 프로세스의 작업 집합 크기가 줄어들 수 있다
- 버퍼링 된 I/O와 같은 파일 복사 작업을 수행 하는 응용 프로그램이 있는 경우 커밋되지 않은 버퍼에 캐시 될 경우 Windows Server 2003을 실행 하는 컴퓨터 너무 적극적인 수 있습니다.
920739(http://support.microsoft.com/kb/920739/)Windows Server 2003 S 또는 Windows Server 2003 S 약 500MB 보다 큰 파일을 복사할 때 전체적인 시스템 성능 저하를 발생할 수 있습니다.
- 시스템 일부 고급 TCP 기능을 사용 하는 SQL Server 작업 집합 줄어들 수 있다.
942861(http://support.microsoft.com/kb/942861/)응용 프로그램이 Windows Server 2003을 실행 하는 서버에서 SQL Server 연결 하면 오류 메시지가: "일반 네트워크 오류", "통신 연결 오류" 또는 "수송 수준 오류"
- Windows Server 2003을 실행 하는 다중 프로세서 컴퓨터에서 시스템 프로세스의 사용 가능한 시스템 메모리 대부분을 사용할 수 있습니다.
942486(http://support.microsoft.com/kb/942486/)시스템 프로세스를 Windows Server 2003을 실행 하는 다중 프로세서 컴퓨터에서 사용 가능한 시스템 메모리 대부분을 사용할 수 있습니다.
- Microsoft는 작업 집합 잘라내야 할 SQL Server 64 비트 버전 발생할 수 있는 문제를 발견 했습니다.
- 장치 드라이버는 MmAllocateContiguousMemory 함수를 사용 하 여 및 HighestAcceptableAddress 매개 변수의 값 보다 작거나 4 gb (기가바이트)로 설정 하는 경우 Windows 운영 체제 64 비트 SQL Server 프로세스의 작업 집합 아웃 페이지 수 있습니다.
2121098(http://support.microsoft.com/default.aspx?scid=kb;en-US;2121098)권장 운영 체제 업데이트 및 SQL Server 설치를 위한 드라이버
- 이 핫픽스를 적용 한 후 이러한 문제가 여전히 발생 하는 경우 프로세스 당 트리밍 작업 수가 제한 Windows 핫픽스를 적용 합니다.
938486(http://support.microsoft.com/kb/938486/)Windows Server 2003 기반 컴퓨터가 많은 양의 메모리 요청 하는 결정 되지 않은 모듈에 의해 발생 하는 메모리 관리자 트리밍 작업으로 인해 응답 하지956341장치 드라이버가 메모리를 할당할 때 Windows 운영 체제 다른 응용 프로그램의 작업 집합 아웃 페이지 수 있습니다. 이 Windows 핫픽스 이벤트 추적을 사용 하 여 문제가 발생 하는 장치 드라이버를 찾을 수 있습니다. 작업 집합 트리밍 문제를 일으키는 특정 드라이버에 대 한 자세한 내용은 MSDN 문서 "식별 드라이버 연속 메모리 할당 참조(http://support.microsoft.com/kb/956341/)Windows Server 2003 기반 컴퓨터는 대용량 메모리 할당 요청 때문에 응답 하지(http://msdn.microsoft.com/en-us/library/ff190924 (VS.85).aspx)."
- 응용 프로그램 시스템 캐시가 너무, 많이 사용할 수 있습니다 및 대형 시스템 캐시 증가 될 수 있습니다. 시스템 캐시의 증가 응답할 시스템 페이지 SQL Server 프로세스 또는 다른 응용 프로그램의 작업 집합 out. 이 문제가 발생 하면 응용 프로그램에서 일부 메모리 관리 기능을 사용할 수 있습니다. 이러한 기능은 파일 I/O 작업의 응용 프로그램에서 사용할 수 있는 시스템 캐시 공간을 제어 합니다. 예를 들어, 파일 I/O 작업에 사용할 수 있는 시스템 캐시 공간을 제어할 수 SetSystemFileCacheSize 함수와 GetSystemFileCacheSize 함수를 사용할 수 있습니다.
Memory 성능 개체를 시스템 캐시 작업 집합 메모리를 너무 많이 사용 하는지 확인 하려면이 개체의 다양 한 카운터의 값을 볼 수 사용할 수 있습니다. 예를 들어, 캐시 바이트 및 시스템 캐시 상주 바이트 카운터를 볼 수 있습니다. 이 항목에 대 한 자세한 내용은 다음 Microsoft 웹 사이트를 방문 하십시오.http://blogs.msdn.com/ntdebugging/archive/2007/11/27/too-much-cache.aspx다운로드 하 고 "Microsoft Windows 동적 캐시 서비스 배포" 시스템 캐시에 의해 사용 되는 메모리를 제어할 수 있습니다.(http://blogs.msdn.com/ntdebugging/archive/2007/11/27/too-much-cache.aspx)
http://blogs.msdn.com/ntdebugging/archive/2009/02/06/microsoft-windows-dynamic-cache-service.aspx(http://blogs.msdn.com/ntdebugging/archive/2009/02/06/microsoft-windows-dynamic-cache-service.aspx)
http://blogs.msdn.com/ntdebugging/archive/2007/11/27/too-much-cache.aspx(http://blogs.msdn.com/ntdebugging/archive/2007/11/27/too-much-cache.aspx) - SQL Server 함께 SAP R/3을 실행 중인 경우 페이징 문제가 발생할 수 있습니다. 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
931308(http://support.microsoft.com/kb/931308/)SAP R/3 프로그램이 Windows Server 2003 기반 컴퓨터에서 실행할 때 하드 디스크 페이징을 증가 발생할 수 있습니다.
- Windows Server 2008에서 SQL Server 실행 하는 경우 다른 운영 체제 구성 요소에서 집합 자르기 또는 불필요 한 과다 한 메모리 소비 작업을 일으킬 수 있는 알려진된 문제에 대 한 수정 프로그램을 적용 해야 합니다. 자세한 내용은 Microsoft 기술 자료에 있는 다음 문서 번호를 클릭 합니다.
971442(http://support.microsoft.com/kb/971442/)네트워크를 통해 Windows Server 2008 또는 Windows Vista를 실행 하는 서버에서 파일을 복사 하려고 할 때 서버의 시스템 성능이 저하 심각 하 게 되 면
974609(http://support.microsoft.com/kb/974609/)임의로 Windows Server 2008을 실행 하는 컴퓨터 큰 응용 프로그램을 실행할 때 응답 하지 않는다
971714http://blogs.msdn.com/ntdebugging/archive/2009/02/06/microsoft-windows-dynamic-cache-service.aspx보고서 생성 프로세스는 Windows Server 2008 기반 도메인 컨트롤러에 대 한 보고서를 생성 하려면 Active Directory 진단 템플릿으로 Perfmon.exe를 실행 하면 응답 하지 않을 수합니다 있습니다. - Windows 역할 2008 r 2에서 SQL Server 실행 하는 경우 작업 집합 자르기에 발생할 수 있는 알려진된 문제에 대 한 수정 프로그램을 적용 해야 합니다. 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
979149(http://support.microsoft.com/kb/979149/)큰 응용 프로그램을 실행할 때 Windows 7 또는 Windows Server 2008 r 2를 실행 하는 컴퓨터 응답 하지
2155311(http://support.microsoft.com/kb/2155311/)실행 중인 Windows Server 2008 R2 또는 Windows 7 경우 메모리가 첫 4GB의 메모리 내에 있는 스레드 요청 많은 NUMA 기반 프로세서를 가진 컴퓨터에서 성능 저하 발생
2468345(http://support.microsoft.com/kb/2468345/)간헐적으로 맙니다 컴퓨터나 Windows Server 2008 r 2에서 Storport 드라이버를 사용할 때 응답 하지 않는다
64 비트 버전의 SQL Server 사용 되는 메모리를 확인 하는 방법
64 비트 버전의 SQL Server 사용 되는 메모리 페이지를 보려면 성능 모니터를 사용할 수 있습니다. 이렇게 하려면 다음 성능 카운터를 모니터링.성능 개체: 메모리
페이지/초 카운터:
이 카운터를 사용 하 여 메모리 페이지를 확인 하는 방법에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
페이지/초 카운터:
889654
또한 다음 성능 카운터를 모니터링 하 여 64 비트 버전의 SQL Server 페이징 효과 측정할 수 있습니다.
(http://support.microsoft.com/kb/889654/)
64 비트 버전의 Windows Server 2003 또는 Windows XP의 적절 한 페이징 파일 크기를 확인 하는 방법 성능 개체: 프로세스
카운터: 전용 바이트
인스턴스: sqlservr
성능 개체: 프로세스
카운터: 작업 집합
인스턴스: sqlservr
전용 바이트 카운터가 현재 커밋된 메모리를 측정 합니다. Working Set 카운터는 프로세스에서 현재 사용 중인 실제 메모리를 측정 합니다. 64 비트 버전의 SQL Server 다음 성능 카운터를 사용 하 여 버퍼 풀에 할당 하는 메모리 노출 하.
카운터: 전용 바이트
인스턴스: sqlservr
성능 개체: 프로세스
카운터: 작업 집합
인스턴스: sqlservr
성능 개체: SQL Server: 메모리 관리자
카운터: 총 서버 Memory(KB)
참고 64 비트 버전의 SQL Server 인스턴스가 명명 된 인스턴스의 경우 성능 개체의 이름은 다음과 같습니다.
카운터: 총 서버 Memory(KB)
MSSQL$인스턴스 이름: 메모리 관리자
작업 집합 카운터 값 서버 Memory(KB) 총 카운터의 값 보다 작은 경우, 버퍼 풀의 일부인 일부 메모리 작업 집합은 SQL Server 잘린.할당 한 후 메모리의 페이지 잠그기 사용자 권한이 있으며 SQL Server 서비스를 다시 시작, SQL Server 프로세스의 버퍼 풀 여전히 메모리 리소스 알림 이벤트에 응답 하 고 동적으로 증가 또는 감소 이러한 이벤트에 응답. 그러나 다음 성능 카운터를 메모리에 잠겨 버퍼 풀의 메모리 할당을 볼 수 없습니다.
- 전용 바이트 카운터 및 작업 집합 성능 모니터 카운터
- 작업 관리자에서 프로세스 탭에서 메모리 사용 열
"메모리의 페이지 잠그기" 사용자는 64 비트 버전의 SQL Server 인스턴스에 대 한 권한을 할당 하기 전에 중요 한 고려 사항
확인 해야 고려해 메모리의 페이지 잠그기 사용자 지정 하기 전에 오른쪽. 잘못 구성 된 시스템에서이 사용자를 할당 하면 시스템 불안정 해 지거나 전체 시스템의 성능이 저하 될 수 있습니다. 또한 이벤트 ID 333 이벤트 로그에 기록 될 수 있습니다.이러한 문제에 대 한 고객 지원 서비스 (CSS)에 문의 CSS 엔지니어가 사용자 권한을 SQL Server 서비스 시작 계정으로 사용 되는 사용자 계정에 대 한 해지를 요청할 수도 있습니다. 이 단계는 CSS 엔지니어는 필요한 구성 시스템에서 실행 중인 다른 응용 프로그램 및 SQL Server 대 한 다양 한 옵션에 사용할 수 있는 중요 한 성능 데이터를 수집 해야 합니다. CSS 엔지니어는 성능 데이터를 수집 하는 후 SQL Server 서비스 시작 계정 오른쪽에서 메모리의 페이지 잠그기 사용자를 지정할 수 있습니다.
메모리의 페이지 잠그기 사용자 권한을 할당 하기 전에 다양 한 응용 프로그램 및 시스템에 설치 된 서비스의 메모리 요구 사항을 확인 하려면 성능 모니터 로그를 캡처할 수 있는지 확인 하십시오. 이러한 응용 프로그램이 SQL Server 포함. 필요한 메모리를 확인 하려면 다음과 같은 초기 계획 정보를 수집 합니다.
- 최대 서버 메모리 옵션 및 최소 서버 메모리 옵션을 올바르게 설정 하 고 있는지 확인 하십시오. 이러한 옵션 SQL Server 프로세스의 버퍼 풀의 메모리 요구만 반영합니다. 이러한 옵션 SQL Server 프로세스 내의 다른 구성 요소에 할당 되는 메모리를 포함 하지 않습니다. 이러한 구성 요소는 다음과 같습니다.
- SQL Server 작업자 스레드
- 여러 페이지로 구성 된 SQL Server의 메모리 관리자 할당자
- 다양 한 Dll과 SQL Server 프로세스는 SQL Server 프로세스의 주소 공간에 로드 하는 구성 요소
- 백업 및 복원 작업
- 구성 요소 Dll 및 다양 한 OLE DB 공급자, 확장된 저장된 프로시저, sp_OACreate 저장 프로시저, 연결 된 서버 및 SQL Server CLR을 사용 하는 Microsoft COM 개체를 포함 합니다. 이러한 구성 요소에 할당 된 메모리는 nonbuffer 풀 영역을 SQL Server 프로세스의 주소 공간에 속하는. 이상적으로 SQL Server 프로세스 전체에서 사용할 수 있는 메모리의 최대 크기를 확인 하려면 사용 하 여 SQL Server 프로세스가 원하는 총 메모리 버퍼 풀을 사용 하지 않는 구성 요소에 대해 할당 되는 메모리를 빼야 합니다. 그런 다음 나머지 값 최대 서버 메모리 옵션을 설정 하려면 사용할 수 있습니다. 최대 서버 메모리 옵션 및 최소 서버 메모리 옵션을 설정 하기 전에 SQL Server 온라인 설명서의 "메모리 옵션을 수동으로 설정" 항목 신중 하 게 검토 해야 합니다.
- Windows 운영 체제 구성 요소 및 기타 응용 프로그램의 메모리 요구 사항을 확인 합니다. 응용 프로그램은 다른 SQL Server 구성, 예를 들어, SQL Server 에이전트, 복제 에이전트가 SQL Server, SQL Server Reporting Services, SQL Server Analysis Services, SQL Server 통합 서비스 및 SQL Server 전체 텍스트 검색 포함 될 수 있습니다. 백업 작업 및 파일 복사 작업을 수행 하는 응용 프로그램은 메모리를 많이 사용할 수 있습니다. 파일 IO 생성할 대량 복사 및 스냅숏 에이전트 작업을 고려해 야 합니다. 최대 서버 메모리 옵션 및 최소 서버 메모리 옵션의 값을 확인할 때 이러한 모든 응용이 프로그램의 메모리 요구를 고려해 야 합니다. 전용 바이트 카운터 및 작업 집합 카운터 모든 프로세스에 대 한 프로세스 개체 아래의 특정 프로세스의 메모리 요구 사항을 확인 하려면 사용할 수 있습니다.
- 메모리의 페이지 잠그기 사용자 권한이 기본적으로 기본 제공 로컬 시스템 계정에 할당 된 이미 했습니다. 자세한 내용은 다음 Microsoft 웹 사이트를 방문 하십시오.
http://blogs.msdn.com/psssql/archive/2007/10/18/do-i-have-to-assign-the-lock-privilege-for-local-system.aspx(http://blogs.msdn.com/psssql/archive/2007/10/18/do-i-have-to-assign-the-lock-privilege-for-local-system.aspx)
- 를 사용 하면 Windows 사용자 계정을 전역적으로 도메인에 있는 모든 SQL Server 프로세스에 대 한 그룹 정책 구성을 사용 하 여 할당 된 사용자 권한을 결정 합니다. 32 비트 SQL Server 프로세스 시작 계정으로이 계정을 사용할 수 있습니다. 그러나이 계정 주소 창 작업 확장 (AWE) 기능을 사용 하려면 메모리의 페이지 잠그기 사용자 권한이 필요 합니다. 자세한 내용은 SQL Server 온라인 설명서의 "SQL Server 메모리의 최대 양을 제공" 항목을 참조 하십시오.
- 최대 서버 메모리 옵션 및 최소 서버 메모리 옵션을 여러 SQL Server 인스턴스를 구성 하기 전에 SQL Server 각 인스턴스에 대 한 nonbuffer 풀의 메모리 요구 사항을 고려해 야 합니다. SQL Server 각 인스턴스에 대해 이러한 옵션을 구성 합니다.
SQL Server 링 버퍼에서 정보가 페이징 발생할 때 메모리 조건을 확인 하는 데 사용 하는 방법
SQL Server 링 버퍼에서 정보가 페이징 발생 하면 서버의 메모리 조건을 확인 하는 데 사용할 수 있습니다. 이 정보를 얻으려면 다음 스크립트와 같은 스크립트를 사용할 수 있습니다.SELECT CONVERT (varchar(30), GETDATE(), 121) as runtime,
DATEADD (ms, -1 * (sys.ms_ticks - a.[Record Time]), GETDATE()) AS Notification_time,
a.* , sys.ms_ticks AS [Current Time]
FROM
(SELECT x.value('(//Record/ResourceMonitor/Notification)[1]', 'varchar(30)') AS [Notification_type],
x.value('(//Record/MemoryRecord/MemoryUtilization)[1]', 'bigint') AS [MemoryUtilization %],
x.value('(//Record/MemoryRecord/TotalPhysicalMemory)[1]', 'bigint') AS [TotalPhysicalMemory_KB],
x.value('(//Record/MemoryRecord/AvailablePhysicalMemory)[1]', 'bigint') AS [AvailablePhysicalMemory_KB],
x.value('(//Record/MemoryRecord/TotalPageFile)[1]', 'bigint') AS [TotalPageFile_KB],
x.value('(//Record/MemoryRecord/AvailablePageFile)[1]', 'bigint') AS [AvailablePageFile_KB],
x.value('(//Record/MemoryRecord/TotalVirtualAddressSpace)[1]', 'bigint') AS [TotalVirtualAddressSpace_KB],
x.value('(//Record/MemoryRecord/AvailableVirtualAddressSpace)[1]', 'bigint') AS [AvailableVirtualAddressSpace_KB],
x.value('(//Record/MemoryNode/@id)[1]', 'bigint') AS [Node Id],
x.value('(//Record/MemoryNode/ReservedMemory)[1]', 'bigint') AS [SQL_ReservedMemory_KB],
x.value('(//Record/MemoryNode/CommittedMemory)[1]', 'bigint') AS [SQL_CommittedMemory_KB],
x.value('(//Record/@id)[1]', 'bigint') AS [Record Id],
x.value('(//Record/@type)[1]', 'varchar(30)') AS [Type],
x.value('(//Record/ResourceMonitor/Indicators)[1]', 'bigint') AS [Indicators],
x.value('(//Record/@time)[1]', 'bigint') AS [Record Time]
FROM (SELECT CAST (record as xml) FROM sys.dm_os_ring_buffers
WHERE ring_buffer_type = 'RING_BUFFER_RESOURCE_MONITOR') AS R(x)) a
CROSS JOIN sys.dm_os_sys_info sys
ORDER BY a.[Record Time] ASC
참고 이 쿼리는 SQL Server 2005와 SQL Server 2008에 대 한 유효 합니다.
시스템 메모리 부족 조건이 발생 하는지 이해 하는 동적 관리 뷰 sys.dm_os_process_memory에서 제공 되는 정보를 쿼리할 수 있습니다. 자세한 내용은 다음 MSDN 웹 사이트에서 SQL Server 2008 온라인 설명서 참조를 참조 하십시오.
http://msdn.microsoft.com/en-us/library/bb510747.aspx
(http://msdn.microsoft.com/en-us/library/bb510747.aspx)
SQL Server 2008 R2 BPA 정보
SQL Server 2008 R2 최상의 연습 분석기 (SQL Server 2008 R2 BPA) 작업 집합 자르기 SQL Server 프로세스에서 발생할 수 있는 상황을 감지 하는 여러 규칙을 제공 합니다. SQL Server 2008 R2 BPA는 SQL Server 2008 및 SQL Server 2008 r 2를 지원합니다.BPA 도구를 실행 하 고 "데이터베이스 엔진-SQL Server 메모리 설정이 잘못" 경고 메시지를 받은 경우 SQL Server이 인스턴스에 대 한 최대 서버 메모리 설정 확인 "전에 중요 한 고려 대는 64 비트 버전의 SQL Server 인스턴스의 '메모리에서 페이지 잠금' 사용자" 지정이 문서의 섹션의 권장 사항을 따라를 해야 합니다.
BPA 도구를 실행 하 고 오류가 발생할 경우 "운영 체제 파일 및 드라이버 데이터베이스 엔진 업데이트 작업 집합 자르기에 대 한"필요 합니다이 문서의 "해결 방법" 절에서 설명한 모든 수정 프로그램을 검토 하 고 적용 해야 합니다.
BPA 도구를 실행 하 고 "데이터베이스 엔진-SQL Server 메모리 페이징된의 중요 한 부분" 오류가 발생할 경우이 문서의 "해결 방법" 및 "해결 방법" 절을 검토 하 고 적절 한 조치를 취할 해야 합니다.
참조
표 축소
규칙 소프트웨어
규칙 제목
규칙 식별자
SQL Server 2008 R2 BPA 규칙
SQL Server 메모리 설정이 올바르지 않습니다.
RID3804
SQL Server 2008 R2 BPA 규칙
운영 체제 파일과 드라이버 업데이트 작업 집합 자르기에 대 한 요구
RID0059
SQL Server 2008 R2 BPA 규칙
SQL Server 메모리의 상당한 부분 페이징된
RID0049
Windows Server 2008 R2 및 Windows Server 2008의에서 향상 된 기능
Windows Server 2008 및 Windows Server 2008 R2 연속 메모리 할당 메커니즘을 향상 됩니다. 이 개선 정도 효과 줄일 응용 프로그램의 작업 집합 out 페이징 도착 새 메모리를 요청 하면 Windows Server 2008 R2 및 Windows Server 2008에서는 있습니다.
다음은 Microsoft 백서 "발전의 메모리 관리에서 Windows"에서 향상 된 기능에 대 한 설명입니다.
Windows Server 2008에서 물리적으로 연속 메모리 할당 크게 향상 됩니다. 연속 메모리를 할당할 수 있는 요청 메모리 관리자는 이제 동적으로 대체 페이지, 일반적으로 작업 집합 자르기 또는 I/O 작업을 수행 하지 않고 성공적으로 수행 하는 것은 또한, 더 많은 유형의 페이지-커널 스택 등 파일 시스템 메타 데이터 페이지 등-후보 교체 됩니다. 따라서 연속 된 메모리가 더 이상 일반적으로 언제 든 지입니다. 또한 이러한 할당을 얻으려면 비용이 크게 줄어듭니다."발전의 메모리 관리에서 Windows" 백서를 보려면 다음 Microsoft 웹 사이트를 방문 하십시오.
http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/MemMgt.docx
(http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/MemMgt.docx) 자세한 내용은 다음 Microsoft 웹 사이트를 방문 하십시오.
http://blogs.msdn.com/psssql/archive/2008/03/03/sql-server-working-set-trim-problems-consider.aspx
(http://blogs.msdn.com/psssql/archive/2008/03/03/sql-server-working-set-trim-problems-consider.aspx)
http://blogs.msdn.com/psssql/archive/2008/03/03/sql-server-working-set-trim-problems-consider.aspx
(http://blogs.msdn.com/psssql/archive/2008/03/03/sql-server-working-set-trim-problems-consider.aspx) 참고 Windows Server 2008 기반 컴퓨터에서 SQL Server 서비스 팩 2 (SP2) 또는 나중에 SQL Server 서비스 팩을 설치 해야 합니다.
이 문서에 나와 있는 다른 공급 업체 제품 들은 Microsoft와 무관 한 회사에서 제조한 것입니다. Microsoft는 성능 또는 안정성 이러한 제품에 대 한 명시적이 든 묵시적이 든 어떠한 보증도 하지 않습니다.
표 축소
규칙 소프트웨어 | 규칙 제목 | 규칙 식별자 |
SQL Server 2008 R2 BPA 규칙 | SQL Server 메모리 설정이 올바르지 않습니다. | RID3804 |
SQL Server 2008 R2 BPA 규칙 | 운영 체제 파일과 드라이버 업데이트 작업 집합 자르기에 대 한 요구 | RID0059 |
SQL Server 2008 R2 BPA 규칙 | SQL Server 메모리의 상당한 부분 페이징된 | RID0049 |
(http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/MemMgt.docx)
(http://blogs.msdn.com/psssql/archive/2008/03/03/sql-server-working-set-trim-problems-consider.aspx)
(http://blogs.msdn.com/psssql/archive/2008/03/03/sql-server-working-set-trim-problems-consider.aspx)
속성
기술 자료: 918483 - 마지막 검토: 2011년 7월 27일 수요일 - 수정: 2.0
본 문서의 정보는 다음의 제품에 적용됩니다.
- Microsoft SQL Server 2005 Standard X64 Edition
- Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
- Microsoft SQL Server 2005 Enterprise X64 Edition
- Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
- Microsoft SQL Server 2008 Standard
- Microsoft SQL Server 2008 Enterprise
키워드: |
kbsqlsetup kbsql2005engine kbexpertiseadvanced kbinfo kbmt KB918483 KbMtko |
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.
이 문서의 영문 버전 보기:918483
'Database > MS-SQL' 카테고리의 다른 글
시스템 구조(System Architecture)와 데이터파일 구조 (0) | 2013.10.25 |
---|---|
관리 - 메모리 사용량 관리 방법 (0) | 2013.10.24 |
메모리 병목 현상 해결 (버퍼 풀 / 논버퍼풀 메모리) (0) | 2013.10.24 |
DBCC memorystatus 를 사용하여 메모리 모니터링 (0) | 2013.10.24 |
dbcc checkdb 옵션 관련 내용... (0) | 2013.07.31 |