FIX: 메모리 사용량이 컴파일된 쿼리 계획의 예기치 않게 SQL Server 2005에서 증가할 수 있습니다.

기술 자료 번역 기술 자료 번역
기술 자료: 919636 - 이 문서가 적용되는 제품 보기.
# 버그: 810 (SQL 핫픽스)
알림
Microsoft는 Microsoft SQL Server 2005 수정 프로그램을 다운로드 가능한 파일로 배포합니다. 수정 누적되는 형태이므로 핫픽스가 모두 각 새 릴리스에 포함되어 있으며 이전 SQL Server 2005 포함된 모든 보안 수정 프로그램 릴리스의 수정.
모두 확대 | 모두 축소
이 문서에서는 다음을 이 핫픽스 릴리스에 대한 설명입니다.
  • 이 핫픽스 패키지에서 해결된 문제
  • 핫픽스 패키지 설치를 위한 전제 조건
  • 핫픽스 패키지 설치 후 컴퓨터를 다시 시작해야 여부에 대한 정보
  • 핫픽스 패키지가 다른 핫픽스 패키지에 대체됩니다 여부에 대한 정보
  • 정보를 사용하면 모든 레지스트리를 변경해야 하는지 여부
  • 핫픽스 패키지에 포함된 파일

현상

쿼리 컴파일된 쿼리 계획을 검토할 때는 Microsoft SQL Server 2000 비교하여 SQL Server 2005에서 컴파일된 쿼리 계획 메모리 사용을 갑자기 커집니다 나타날 수 있습니다.

이 문제는 다음 조건 중 하나에 해당하는 경우 발생할 수 있습니다.
  • 1 조건: 쿼리에 계산된 열을 사용하여 테이블을 참조합니다.
  • 2 조건: 쿼리 문자열 연산을 nvarchar 열의 값을 사이에 ANSI 문자열을 포함합니다. 예를 들어, 문자열 연산을 ANSI 문자열 열 nvarchar 값을 비교합니다.
  • 조건 3: 쿼리에 계산된 열이 있는 테이블에 대한 참조를 포함합니다. 계산된 열은 nvarchar 열을 기반으로 합니다. 그러나 컴퓨터의 ANSI 문자열 상수 식에서 사용하는 열입니다.
조건 2 및 3 컴파일된 쿼리 계획의 메모리 사용이 크게 증가할을 발생할 수 있습니다.

예를 들어, nvarchar 열이 있는 테이블에 있습니다. 테이블 이름이 MyTable, nvarchar 열 이름이 MyCol.. 다음 구문을 사용하여 쿼리를 정의한 다음,:
SELECT CASE MyCol
          WHEN 'Value1' THEN 'NewValue1'
          WHEN 'Value2' THEN 'NewValue2'
          ELSE MyCol
       END
FROM MyTable
이 예제에서는 위치 "Value1", "Value2", "NewValue1" 및 "NewValue2" 문자열을 ANSI 문자열로 있습니다. 먼저 "Value1" 및 "Value2" ANSI 문자열로 MyCol nvarchar 열 값은 비교됩니다. 그런 다음, "NewValue1", "NewValue2" 해당 값을 ANSI 문자열 또는 MyCol 열의 원래 값이 선택됩니다.

sys.syscacheobjects 시스템 테이블 또는 sys.dm_exec_cached_plans 동적 관리 뷰를 pagesused 열을 검사하여 컴파일된 계획을 메모리 사용량을 볼 수 있습니다.

또한 이 증가된 크기는 컴파일된 쿼리 계획 RESOURCE_SEMAPHORE_QUERY_COMPILE 대기 형식에 대한 대기 시간 증가 발생할 수 있습니다.

해결 방법

Microsoft에서 제공하는 핫픽스를 사용할 수 있습니다. 그러나 이 핫픽스는 이 문서에서 설명된 문제만 해결할 수 있습니다. 이 문서에 설명된 특정 문제가 발생한 시스템에만 이 핫픽스를 적용하십시오. 추후에 이 핫픽스를 테스트할 수 있습니다. 따라서 이 문제로 심각하게 영향을 받은 경우를 제외하곤 이 핫픽스가 포함된 다음 소프트웨어 업데이트까지 기다리는 것이 좋습니다.

다운로드할 핫픽스가 있는 경우, 이 기술 자료 문서의 맨 위에 "사용 가능한 핫픽스 다운로드" 링크가 있습니다. 이 링크가 표시되지 않는 경우, Microsoft 고객 지원 서비스에 문의하여 핫픽스를 구할 수 있습니다.

참고 추가적인 문제가 발생할 경우 또는 모든 문제 해결에 필요한 경우 별도의 서비스 요청을 만들어야 할 수도 있습니다. 핫픽스에 적용되지 않는 추가 지원 질문과 문제에는 일반 지원 비용이 적용됩니다. Microsoft 고객 서비스 지원 전화 번호 전체 목록 또는 별도의 서비스 요청을 만들려면 다음 Microsoft 웹 사이트로 이동하십시오:
http://support.microsoft.com/contactus/?ws=support
참고 "핫픽스 다운로드 가능" 형식에는 핫픽스를 사용할 수 있는 언어가 표시됩니다. 사용자 언어가 표시되지 않으면 해당 언어의 핫픽스를 사용할 수 없습니다 때문입니다.

전제 조건

SQL Server 2005 서비스 팩이 이 핫픽스를 적용하려면 1 (SP1) 있어야 합니다. SQL Server 2005 서비스 팩 1을 구하는 방법에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
913089SQL Server 2005 최신 서비스 팩을 구하는 방법

정보를 다시합니다

이 핫픽스를 적용한 후에는 컴퓨터를 다시 시작할 필요가 없습니다. 그러나 이 문제의 영향을 받는 이미 있을 경우 데이터베이스 파일을 정상 상태로 되돌리려면 이 핫픽스를 적용한 후에는 "Workground" 절의 단계를 따라야 합니다.

레지스트리 정보

레지스트리를 변경할 필요가 없습니다.

핫픽스 파일 정보

이 핫픽스에는 이 문서에 나와 있는 문제를 해결하는 데 필요한 파일만 포함되어 있습니다. 이 핫픽스에는 제품을 최신 빌드로 완전히 업데이트하는 데 필요한 모든 파일을 포함할 수 없습니다.

이 핫픽스의 영어 버전은 다음 표에 나열된 파일 특성(또는 그 이후의 파일 특성)이 있습니다. 이러한 파일의 시간과 날짜는 UTC (협정 세계시) 로 나열됩니다. 파일 정보에서는 현지 시간으로 변환됩니다. UTC와 로컬 시간의 차이를 알려면 제어판의 날짜 및 시간 항목에서 표준 시간대 탭을 사용하십시오.
SQL Server 2005 32비트 버전
표 축소표 확대
파일 이름파일 버전파일 크기날짜시간플랫폼
Microsoft.sqlserver.sqlenum.dll9.0.2164.0908,0642006-Jun-1412: 32x 86
Microsoft.sqlserver.mgdsqldumper.dll2005.90.2164.075,5522006-Jun-1412: 29x 86
Msgprox.dll2005.90.2164.0197,9202006-Jun-1412: 29x 86
Replprov.dll2005.90.2164.0547,6162006-Jun-1412: 31x 86
Replrec.dll2005.90.2164.0782,1122006-Jun-1412: 32x 86
Msmdlocal.dll9.0.2164.015,661,8562006-Jun-1412: 33x 86
Sqlaccess.dll2005.90.2164.0347,9362006-Jun-1412: 31x 86
Sqlservr.exe2005.90.2164.028,950,8722006-Jun-1412: 33x 86
SQL Server 2005는 x 64 기반 버전
표 축소표 확대
파일 이름파일 버전파일 크기날짜시간플랫폼
Microsoft.sqlserver.sqlenum.dll9.0.2164.0875,2962006-Jun-1413: 12x 86
Microsoft.sqlserver.mgdsqldumper.dll2005.90.2164.091,4242006-Jun-1412: 29x 64
Msgprox.dll2005.90.2164.0259,3602006-Jun-1413: 10x 64
Replprov.dll2005.90.2164.0745,2482006-Jun-1413: 12x 64
Replrec.dll2005.90.2164.01,008,4162006-Jun-1413: 12x 64
Msmdlocal.dll9.0.2164.015,661,8562006-Jun-1412: 33x 86
Sqlaccess.dll2005.90.2164.0355,1042006-Jun-1413: 11x 86
Sqlservr.exe2005.90.2164.039,251,2322006-Jun-1413: 13x 64
SQL Server 2005 Itanium 아키텍처 버전
표 축소표 확대
파일 이름파일 버전파일 크기날짜시간플랫폼
Microsoft.sqlserver.sqlenum.dll9.0.2164.0875,2962006-Jun-1412: 29x 86
Microsoft.sqlserver.mgdsqldumper.dll2005.90.2164.0163,1042006-Jun-1412: 29IA-64
Msgprox.dll2005.90.2164.0542,4962006-Jun-1412: 28IA-64
Msmdlocal.dll9.0.2164.048,733,9842006-Jun-1412: 30IA-64
Replprov.dll2005.90.2164.01,617,1842006-Jun-1412: 29IA-64
Replrec.dll2005.90.2164.02,141,4722006-Jun-1412: 29IA-64
Sqlaccess.dll2005.90.2164.0349,4722006-Jun-1412: 28x 86
Sqlservr.exe2005.90.2164.072,208,6722006-Jun-1412: 30IA-64

해결 과정

이 문제를 해결할 수 있는 대문자 "N" 의 문제가 컨텍스트에 모든 문자열 앞에 추가하십시오. 다음 구문을 사용하여 "현상" 절에서 설명하는 예제에서는 변경할 수 있습니다:

SELECT CASE MyCol WHEN N'Value1' THEN N'NewValue1' WHEN N'Value2' THEN N'NewValue2' ELSE MyCol END FROM MyTable

현재 상태

Microsoft는 "본 문서의 정보는 다음의 제품에 적용됩니다." 절에 나열된 Microsoft 제품에서 이 문제를 확인했습니다.

추가 정보

sys.syscacheobjects 시스템 테이블 또는 sys.dm_exec_cached_plans 동적 관리 뷰를 pagesused 열을 검사하여 컴파일된 계획을 메모리 사용량을 볼 수 있습니다.

sys.syscacheobjects 시스템 테이블에 대한 자세한 내용은 다음 MSDN) Microsoft 개발자 네트워크 (웹 사이트를 방문하십시오.
http://msdn2.microsoft.com/en-us/library/ms187815.aspx
sys.dm_exec_cached_plans 동적 관리 뷰에 대한 자세한 내용은 다음 MSDN 웹 사이트를 방문하십시오.
http://msdn.microsoft.com/en-us/library/ms187404.aspx
Microsoft SQL Server 업데이트를 명명 스키마에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
822499새 명명 스키마에 Microsoft SQL Server 소프트웨어 업데이트 패키지에 대한
소프트웨어 업데이트 용어에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
824684Microsoft 소프트웨어 업데이트를 설명하는 데 사용되는 표준 용어에 대한 설명

속성

기술 자료: 919636 - 마지막 검토: 2007년 11월 20일 화요일 - 수정: 1.9
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Enterprise X64 Edition
  • Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems
  • Microsoft SQL Server 2005 Standard X64 Edition
키워드:?
kbmt kbautohotfix kbsql2005engine kbhotfixserver kbexpertiseadvanced kbqfe kbfix kbpubtypekc KB919636 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com