MS SQL Server의 효율성 모니터링. 실용적인 권장 사항

SQL 프로파일러는 SQL Server를 추적하는 데 사용되는 소프트웨어 도구입니다. "추적"- SQL Server 2008 작동에 대한 정보 수집 세션

주목적:

관리자는 SQL 프로파일러를 사용하여 다음을 수행합니다.

응용 프로그램 분석;

서버에 전송된 요청의 최적성을 결정하는 단계;

· 오류를 일으키는 Transact-SQL 명령을 식별합니다.

장기간에 걸친 사용자 활동에 대한 정보 수집

서버 운영을 실시간으로 모니터링합니다.

새로운 기회:

ㅏ. 분석 서비스 프로파일링

비. Integration Services 이벤트 프로파일링

씨. 명령 실행 정보를 기록할 때 성능 모니터에서 카운터 판독값을 기록하는 기능

디. 추적 파일에 기록하도록 선택할 수 있는 많은 새 이벤트 및 정보 소스가 프로파일러에 추가되었습니다.

에프. 프로파일러 창에서 이벤트를 그룹화하는 기능.

SQL Server 프로파일러 작업

1. 메뉴에서 SQL Server Profiler 실행 시작 à 프로그램 à SQL Server 2008 à 성능 도구 à SQL Server 프로파일러.

2. 열리는 창의 메뉴에서 파일고르다 새 추적모니터링할 SQL Server 2008 서버에 연결합니다.

3. 창에서 세션 설정 구성 추적 속성, 추적 세션이 시작되기 전에 자동으로 열립니다(그림 8.1 참조).

쌀. 8.1.추적 세션 옵션 설정

ㅏ. 탭에서 일반적인목록에서 선택 템플릿 사용가장 적합한 템플릿입니다. 템플릿은 메뉴를 사용하여 선택됩니다. 파일 à 템플릿 SQL Server 프로파일러에서. 처음에는 8개의 템플릿을 마음대로 사용할 수 있습니다.

1). 표준(기본값)- 실행을 위해 실행되는 모든 저장 프로시저 및 Transact-SQL 명령을 추적할 수 있는 기본 템플릿

2). SP_Counts- 이름별로 정렬된, 실행을 위해 시작된 저장 프로시저 및 기능에 대한 정보 수집

3). TSQL- 사용자 프로세스의 식별자와 시작 시간을 나타내는 서버에서 실행하기 위해 시작된 모든 Transact-SQL 명령에 대한 정보 수집

4). TSQL_Duration- 이전 템플릿과 유사하지만 TSQL 명령의 시작 시간에 대한 정보 대신 실행하는 데 걸린 시간이 기록됩니다.

5). TSQL_그룹화- Transact-SQL 명령의 코드 및 실행 시간에 대한 정보 외에도 응용 프로그램 이름, OS의 사용자 계정 및 연결에 사용된 사용자 계정에 대한 정보도 기록됩니다.



6). TSQL_Replay- 실행된 Transact-SQL 명령에 대한 가장 자세한 정보를 기록합니다.

7). TSQL_SP- 저장 프로시저 시작(SP:Starting)의 시작에 대한 정보를 기록하는 것 외에 저장 프로시저의 각 명령 실행에 대한 정보가 기록됩니다(SP:StmtStarting).

8). 동조- Database Tuning Advisor가 요구하는 정보를 수집하기 위해 사용합니다.

비. 탭에서 일반적인추적 정보가 저장되는 위치를 지정해야 하는 경우:

하나). 추적 정보는 파일에 기록될 수 있습니다(기본적으로 5MB).

· 매개변수 파일 롤오버 활성화한 파일을 채우면 다음 파일이 자동으로 생성되는지 여부를 결정합니다. 다음 파일의 이름은 이전 파일의 이름과 같지만 이름에 숫자가 추가됩니다(1, 2, 3 등).

· 매개변수 서버 프로세스 추적 데이터추적 정보 기록의 신뢰성을 높이는 데 사용할 수 있습니다. 이 확인란을 선택하면 서버에서 추적 정보를 처리합니다.

2). 추적 정보는 SQL Server 테이블에 저장할 수 있습니다. 원하는 열 집합이 있는 테이블이 자동으로 생성됩니다.

삼). 매개변수 사용 추적 중지 시간 활성화추적이 자동으로 꺼지는 시간을 지정할 수 있습니다.

씨. 탭에서 이벤트 선택정보 수집을 위한 매개변수를 결정합니다. 이 탭의 테이블에서 필요한 이벤트(행)와 이에 대해 기록될 정보(열)를 선택해야 합니다. 모든 행과 열을 표시하려면 확인란을 선택해야 합니다. 모든 이벤트 표시그리고 모든 열 표시.

하나). 버튼으로 열 필터(열 필터) 필요한 정보를 수집하기 위한 필터 구성(특정 데이터베이스, 특정 애플리케이션 또는 특정 사용자에 의해 수행된 작업 추적) - 처럼또는 같지 않은;

2). 버튼을 사용하여 열 구성(열 구성) 데이터를 그룹화하는 기능을 사용하여 프로파일러에 표시하거나 기록할 열의 순서를 구성합니다(그룹 섹션).

4. 모든 추적 매개변수를 설정한 후 버튼을 클릭합니다. 달리다(시작) (그림 8.2 참조)

쌀. 8.2.추적 세션 중 정보 보기

창의 상단에는 서버에서 발생하는 이벤트가 표시되고 하단에는 각 이벤트에 대한 자세한 정보(예: SQL 명령 코드)가 표시됩니다.

추적 창에서 사용할 수 있는 기능:

1. 탭에 있는 경우 열 구성그룹화를 위해 열을 선택한 템플릿 속성에서 보기 창에서 이러한 열을 기준으로 레코드를 그룹화할 수 있습니다. 이를 위해 메뉴 보다명령 제공 그룹 보기;

2. 목록에 있는 경우 그룹하나의 열만 배치된 경우 표시 모드를 사용할 수 있는 옵션이 있습니다. 집계 보기(그림 8.3 참조). 이 모드는 명령으로 활성화됩니다. 집계 보기같은 메뉴에서 보다.

쌀. 8.3.디스플레이 모드 집계 보기

3. 프로파일러에서 추적 파일 및 테이블에 저장된 이벤트를 열 수 있습니다. 메뉴를 사용하여 기록된 작업을 반복할 수도 있습니다. 다시 하다;

4. 추적 정보를 시스템 모니터 성능 카운터에 연결할 수 있습니다. 이를 위해:

열에 대한 정보를 기록해야 하는 동안 추적 세션을 정의합니다. 시작 시간그리고 종료 시간;

· 파일이나 테이블에 기록된 정보로 추적 세션을 시작합니다. 이와 동시에 검침 프로토콜을 파일로 수집 퍼포먼스 모니터;

프로파일러의 추적 파일에서 수집된 정보를 연 다음 다음 명령을 사용합니다. 성능 데이터 가져오기메뉴에서 파일.

이 기사에서 무엇을 배울 수 있습니까?

  • SQL 프로파일러 추적 도구의 목적
  • 1C 요청이 번역되는 DBMS에 대한 요청 텍스트를 추적하는 방법
  • 추적 필터 설정
  • SQL 프로파일러를 사용자 지정하는 방법

종종 어떤 이유로 1C의 요청이 느리게 작동하지만 요청 텍스트를 분석해도 문제에 대해 알려주지 않는 상황이 작업 중에 발생합니다.

이 경우 이 문제를 낮은 수준에서 연구해야 합니다. 이렇게 하려면 SQL 쿼리의 텍스트와 쿼리 계획을 살펴봐야 합니다. 이를 위해 SQL 프로파일러를 사용할 수 있습니다.

SQL 프로파일러 - 목적

SQL Profiler는 SQL Server에서 발생하는 모든 이벤트를 볼 수 있도록 설계된 MS SQL Server에 포함된 프로그램입니다. 즉, 추적을 기록해야 합니다.

어떤 경우에 이 도구가 1C 프로그래머에게 유용할 수 있습니까? 먼저 SQL에서 쿼리 텍스트를 가져와 계획을 볼 수 있습니다. 이는 기술 저널(TL)에서도 수행할 수 있지만 TL의 쿼리 계획은 그리 편리하지 않으며 약간의 기술과 능력이 필요합니다. 또한 프로파일러에서는 텍스트뿐만 아니라 그래픽 쿼리 실행 계획도 볼 수 있어 더욱 편리합니다.

프로파일러를 사용하면 다음을 찾을 수도 있습니다.

  • 특정 시간보다 긴 요청
  • 특정 테이블에 대한 쿼리
  • 블록 대기
  • 시간 초과
  • 교착 상태 등

SQL 프로파일러를 사용한 쿼리 분석

종종 Profiler는 쿼리 분석을 위해 특별히 사용됩니다. 동시에 실행 가능한 모든 쿼리가 아니라 1C 언어의 특정 쿼리가 SQL로 변환되는 방식을 분석하고 실행 계획에 주의를 기울여야 합니다.

특히 쿼리가 느리게 실행되는 이유를 이해해야 할 수 있습니다. 또는 크고 복잡한 쿼리를 작성할 때 SQL 쿼리에 하위 쿼리 조인이 포함되어 있지 않은지 확인해야 합니다.

추적에서 요청을 추적하려면 다음 단계를 따르세요.

1. SQL 프로파일러를 실행합니다. 시작 - 모든 프로그램 - Microsoft SQL Server 2008 R2 - 성능 도구 - SQLProfiler.

2. 새 추적을 만듭니다. 파일 - 추적 생성(Ctrl + N).

3. 데이터베이스가 위치한 DBMS 서버를 지정하고 클릭 연결하다:

다른 컴퓨터에 있는 DBMS 서버를 추적하는 것을 막는 것은 없습니다.

4. 나타나는 창에서 추적 속성북마크로 전환 이벤트 선택:

쿼리와 쿼리 계획이 필요하므로 적절한 이벤트를 활성화해야 합니다. 속성 및 이벤트의 전체 목록을 표시하려면 플래그를 켜십시오. 모든 이벤트 표시그리고 모든 열 표시. 이제 아래 그림에 표시된 이벤트만 선택하고 나머지는 비활성화해야 합니다.

이러한 이벤트에 대한 설명:

  • ShowplanStatisticsProfile - 텍스트 쿼리 실행 계획
  • ShowplanXMLStatisticsProfile - 그래픽 쿼리 실행 계획
  • RPC:Completed - 요청 텍스트, 프로시저로 실행되는 경우(1C 요청이 매개변수와 함께 실행되는 경우)
  • SQL: BatchCompleted - 일반 쿼리로 실행되는 경우 쿼리 텍스트(1C 쿼리가 매개변수 없이 실행된 경우)

6. 이 단계에서 선택한 이벤트에 대한 필터를 설정해야 합니다. 필터가 설정되지 않은 경우 이 DBMS 서버에 있는 모든 데이터베이스에 대한 쿼리가 표시됩니다. 열 필터 단추를 클릭하여 데이터베이스 이름별로 필터를 설정합니다.

이제 "TestBase_8_2" 데이터베이스에 대한 요청만 추적에서 볼 수 있습니다.

가장 흥미로운 다른 필드에 필터를 적용할 수도 있습니다.

  • 기간(기간)
  • TextData(일반적으로 요청 텍스트)
  • RowCounts(쿼리에서 반환된 행 수)

"TestBase_8_2" 데이터베이스에서 3초 이상 지속되는 "_InfoRg4312" 테이블에 대한 모든 요청을 "캐치"해야 한다고 가정합니다. 이를 위해서는 다음이 필요합니다.

a) 데이터베이스별로 필터 설정(위 참조)
b) 기간별 필터 설정(밀리초 단위로 설정):

c) 요청 텍스트로 필터 설정:

요청 텍스트로 필터를 설정하려면 마스크를 사용하십시오. 여러 테이블에 액세스하는 쿼리를 추적해야 하는 경우 모양 섹션에 여러 항목이 생성됩니다. 적용된 필터 조건은 함께 작동합니다.

7. 이제 버튼을 사용하여 추적을 시작합니다. 달리다창에서 추적 속성디스플레이가 구성된 설정된 필터에 해당하는 이벤트를 관찰합니다.

명령 모음 버튼은 추적을 제어하는 ​​데 사용됩니다.

버튼 할당:

  • 지우개- 추적 창을 지웁니다.
  • 시작- 추적 시작
  • 정지시키다– 추적을 일시 중지하고 시작을 클릭하면 추적이 다시 시작됩니다.
  • 중지- 추적 중지

8. 추적 창은 두 부분으로 구성됩니다. 상단에는 이벤트 및 해당 속성이 포함되고 하단에는 이벤트 유형에 따른 정보가 포함됩니다. 이 예에서는 요청 텍스트나 계획이 여기에 표시됩니다.

9. 1C 쿼리 콘솔에서 쿼리를 실행하고 프로파일러에 어떻게 반영되는지 확인합니다.

추적 동작은 결국 여러 요청이 있었고 그 중 하나만 우리에게 관심이 있음을 보여줍니다. 나머지 요청은 서비스 요청입니다.

10. 이벤트 속성을 통해 다음을 평가할 수 있습니다.

  • 요청이 실행된 시간(초)
  • 얼마나 많은 논리적 읽기(읽기)
  • 쿼리가 결과로 반환한 행 수(RowCounts) 등

우리의 경우 쿼리는 2밀리초가 걸리고 4개의 논리적 읽기를 수행하고 1개의 행을 반환했습니다.

11. 위의 하나의 이벤트를 보면 쿼리 계획을 그래픽으로 볼 수 있습니다.

검색이 가격별로 인덱스로 수행되는 계획에서 알 수 있습니다. 이 계획은 인덱스가 포함되지 않고 시간의 50%를 차지하는 KeyLookup을 사용하여 코드 및 이름 필드를 가져오기 때문에 이상적이라고 할 수 없습니다.

상황에 맞는 메뉴를 사용하여 결과 그래픽 쿼리 계획을 확장자가 *.SQLPlan인 별도의 파일에 저장하고 다른 컴퓨터의 프로파일러에서 열거나 SQL Sentry Plan Explorer 프로그램을 사용하여 열 수 있습니다.

12. 더 높이 올라가면 동일한 쿼리 계획을 볼 수 있지만 텍스트 형식입니다. TJ, TsUP 및 기타 1C 성능 제어에 표시되는 것은 이 계획입니다.

  • 프로파일러 자체의 형식(예: *.trc 확장자 포함)
  • xml 형식으로
  • 추적에서 템플릿 만들기(다음 항목 참조)
  • 결과 추적을 데이터베이스 테이블로 저장하십시오. 이것은 예를 들어 추적에서 가장 느린 요청을 찾거나 일부 매개변수로 요청을 필터링해야 할 때 매우 편리한 방법입니다.

그런 다음 지정된 서버에서 데이터베이스를 선택하고 추적이 저장될 테이블의 이름을 지정합니다. 기존 테이블을 사용하거나 새 이름을 지정하면 이 테이블이 자동으로 생성됩니다.

이제 가장 오래 실행되는 쿼리를 검색하는 것과 같이 복잡한 쿼리를 테이블에 구축할 수 있습니다.

또한 Duration은 100만분의 1초 단위로 테이블에 저장되며 결과를 표시할 때 값을 밀리초로 변환해야 한다는 점도 기억해야 합니다. 이 테이블에는 추적에서 지정된 행의 번호를 표시하는 RowNumber 열도 있습니다.

14. 프로파일러를 자주 사용하여 요청을 분석하는 경우 지속적으로 필요한 이벤트 및 필터를 설정하는 데 많은 시간이 소요됩니다.

이 경우 추적 템플릿이 필요한 필터와 열 순서를 설정한 다음 새 추적을 만들 때 기존 템플릿을 사용하는 데 도움이 됩니다.

템플릿을 만들려면 메뉴를 사용하세요. 파일 - 템플릿 - 새 템플릿:

첫 번째 탭에서 서버 유형, 템플릿 이름을 지정하고 필요한 경우 기본적으로 이 템플릿을 사용하도록 플래그를 설정합니다.

두 번째 탭에서 필요한 이벤트를 선택하고 필터를 설정합니다(위 그림 참조).

새 추적을 생성할 때 원하는 템플릿을 지정할 수 있으며 두 번째 탭에서는 생성된 템플릿에 따라 모든 필터와 이벤트가 자동으로 채워집니다.

버미스트로프 안드레이

SQL Server 2005 프로파일러, 애플리케이션 요청 추적, 추적 템플릿, 요청 정보 그룹화

사용자 활동을 모니터링하는 가장 유용한 수단 중 하나는 프로파일러 (프로파일러). 이 도구를 사용하면 SQL Server가 현재 실행 중인 명령을 찾을 수 있습니다. 프로파일러를 사용해야 하는 경우가 매우 자주 발생합니다. 다음은 그것 없이는 매우 어려울 수 있는 몇 가지 표준 상황입니다.

● 응용 프로그램을 분석하고 서버에서 실행하는 명령을 확인하려고 합니다. 다음 정보가 유용할 수 있습니다.

· 특정 작업을 수행할 때 이 응용 프로그램이 작동하는 데이터베이스의 테이블을 이해합니다. 기업에서는 애플리케이션에서 제공하지 않는 형식으로 보고서를 생성해야 하는 경우가 매우 많으며 개발자는 데이터베이스 구조에 대한 자세한 정보를 거의 제공하지 않습니다.

· 성능 ​​면에서 애플리케이션이 서버로 요청을 보내는 최적의 방법을 확인합니다. 실제로 프로파일러를 사용할 때 예를 들어 클라이언트에서 데이터 필터링 또는 정렬이 수행되는 경우와 같이 완전히 차선의 쿼리를 식별하는 것이 종종 가능합니다.

· 서버의 응용 프로그램에서 어떤 Transact -SQL 명령이 오류를 생성하는지 이해합니다.

q 장기간에 걸친 사용자 활동에 대한 정보를 수집합니다(예: 근무일 동안 특정 애플리케이션에서 서버로 보낸 모든 요청을 수집할 수 있음). 그런 다음 수집된 정보를 수동으로 분석하거나 자동화된 분석을 위해 Database Tuning Advisor에 전달할 수 있습니다.

q 실시간으로 서버 작동을 모니터링합니다. 예를 들어, 서버가 갑자기 느려지면 프로파일러 창에서 현재 실행 중인 명령을 볼 수 있습니다.

프로파일러에는 SQL Server 2005의 많은 새로운 기능이 있습니다.

● Integration Services 이벤트 프로파일링이 추가되었습니다. 이제 프로파일러를 사용하여 새 DTS 패키지의 진행 상황을 모니터링할 수 있습니다.

● 명령 실행에 대한 정보를 기록할 때 시스템 모니터에서 카운터 판독값을 기록할 수 있게 되었습니다.

● 추적 파일에 기록하도록 선택할 수 있는 많은 새로운 이벤트 및 정보 소스가 프로파일러에 추가되었습니다. 이제 추적 파일에 쓸 내용의 정의를 XML 형식으로 저장할 수 있습니다.

● 이제 추적 결과를 XML 형식으로 저장할 수 있습니다(ANSI, OEM, UNICODE 형식으로 쓰는 기능도 저장됨).

● 프로파일러에서 캡처한 Transact -SQL 명령에 대한 실행 계획을 XML 형식으로 저장할 수도 있습니다. 이러한 계획은 추가 분석을 위해 SQL Server Management Studio에서 열 수 있습니다.

q 프로파일러 창에서 직접 이벤트를 그룹화할 수 있게 되었습니다. 예를 들어 그룹화를 사용하면 하루 동안 특정 Transact -SQL 명령이 서버에서 실행된 횟수를 매우 쉽게 계산할 수 있습니다.

프로파일러로 작업하는 것은 매우 간단해 보입니다. 이 응용 프로그램은 메뉴에서 시작할 수 있습니다 시작| 프로그램들| 마이크로소프트 SQL 서버 2005 | 성능 도구 | SQL 서버 프로파일러 . 시작하려면 열리는 프로파일러 창의 메뉴에서 파일(파일)을 선택해야 합니다. 새로운추적하다(새 추적)을 클릭하고 모니터링하려는 SQL Server 2005 서버에 연결합니다. "추적"이라는 단어는 SQL Server 2005의 작동에 대한 정보를 수집하는 세션을 의미합니다. 그러나 정보 수집을 시작하기 전에 이 세션에 대한 설정을 구성해야 합니다. 이 설정은 창에서 추적하다속성(추적 속성), 추적 세션을 시작하기 전에 자동으로 열립니다(그림 11.1).

쌀. 11.1.추적 세션 옵션 설정

탭에서 일반적인(일반) 목록에서 사용그만큼주형(템플릿 사용) 세션 내 정보 수집에 가장 적합한 템플릿을 선택할 수 있습니다. 원칙적으로 템플릿 설정에주의를 기울일 수는 없지만 정보 수집을위한 매개 변수를 수동으로 정의합니다 (인접 탭 사용 이벤트선택(이벤트 선택)). 그러나 올바른 템플릿을 지정하면 시간을 절약하고 실수를 방지할 수 있습니다. 따라서 템플릿에 대해 더 자세히 설명합니다.

템플릿은 확장자가 있는 특수 파일에 저장됩니다. PDF추적 세션 설정. 템플릿 작업(새 템플릿 추가, 기존 템플릿 변경, 다른 디렉토리로 보고서 가져오기 및 내보내기)은 메뉴를 사용하여 수행됩니다. 파일| 템플릿(파일| 템플릿) SQL Server 프로파일러 . 처음에는 8개의 템플릿을 마음대로 사용할 수 있습니다.

기준 (기본)- 이름에서 알 수 있듯이 이 템플릿은 대부분의 상황에 적합하므로 기본적으로 선택됩니다. 실행되는 모든 저장 프로시저 및 Transact -SQL 명령을 추적할 수 있습니다.

SP_카운트- 실행을 위해 시작된 저장 프로시저 및 기능에 대한 정보가 수집됩니다. 동시에 프로파일러 창의 정보는 저장 프로시저 이름별로 정렬됩니다(프로파일러 용어로 그룹화됨).

TSQL- 서버에서 실행되는 모든 Transact -SQL 명령에 대한 정보를 수집합니다. 명령 코드 외에도 사용자 프로세스의 식별자 및 시작 시간에 대한 정보도 기록됩니다. 일반적으로 이 패턴은 응용 프로그램에서 서버로 보낸 명령을 모니터링하는 데 사용됩니다.

TSQL_지속- 이전 템플릿과 거의 동일하지만 Transact -SQL 명령이 실행된 시점에 대한 정보를 기록하는 대신 실행하는 데 걸린 시간을 기록합니다. 일반적으로 이 템플릿은 서버 성능을 "수동으로" 모니터링하는 데 사용됩니다.

TSQL_그룹화- Transact -SQL 명령의 코드 및 실행 시간에 대한 정보 외에도 응용 프로그램 이름, 운영 체제의 사용자 계정 및 연결에 사용된 사용자 로그인에 대한 정보가 기록됩니다. 기록은 로그인별로 그룹화됩니다. 일반적으로 이 패턴은 특정 애플리케이션의 활동을 추적하려는 상황에서 사용됩니다.

TSQL_다시 하다- 실행된 Transact -SQL 명령에 대한 가장 자세한 정보가 기록됩니다. 그런 다음 이 정보를 사용하여 최대 정확도로 서버의 부하를 재현할 수 있습니다. 일반적으로 이 템플릿은 성능 측면에서 다양한 서버 설정을 테스트하는 데 사용할 명령 집합을 작성하는 데 사용됩니다.

TSQL_SP- 전체 저장 프로시저(이벤트 SP: 시작 중), 이 추적 옵션은 이 저장 프로시저의 각 명령 실행에 대한 정보도 기록합니다(이벤트 SP:Stmt시작). 이 패턴은 일반적으로 복잡한 저장 프로시저의 작업을 모니터링하는 데 사용됩니다.

동조- 이 템플릿은 Database Tuning Advisor의 전송에 가장 적합한 정보를 기록하기 위한 것입니다. 자동화된 분석 및 성능 최적화를 위해 이 도구로 작업하는 방법은 다음에서 설명합니다. 비서. 11.5.5.

이미 언급했듯이 기성 템플릿 집합으로 제한될 필요는 전혀 없습니다. 탭에서 구성하여 고유한 추적 세션 설정을 사용할 수 있습니다. 이벤트선택. 이 탭의 테이블에서 필요한 이벤트(행)와 이에 대해 기록될 정보(열)를 선택해야 합니다. 기본적으로 사용 가능한 행과 열의 일부만 표시됩니다. 모든 행과 열을 표시하려면 확인란을 선택해야 합니다. 보여 주다모두이벤트(모든 이벤트 표시) 및 보여 주다모두기둥(모든 열 표시).

특정 데이터베이스, 특정 응용 프로그램 또는 특정 사용자가 수행한 작업만 추적하거나 이러한 조건을 모두 동시에 선택하려는 경우가 많습니다. 버튼을 클릭하여 정보 수집을 위한 필터를 구성할 수 있습니다. 필터(열 필터) 탭 이벤트선택. 각 열은 특정 값만 기록하도록 구성할 수 있습니다( 처럼) 또는 특정 값이 기록되는 것을 방지( 같지 않은). 기본적으로 하나의 필터만 구성됩니다. 같지 않은컬럼용 애플리케이션 이름. 이로 인해 모든 SQL Server 프로파일러 이벤트, 즉 추적 수집 프로세스 자체와 관련된 모든 이벤트가 무시됩니다. 이 필터를 제거하지 않는 것이 좋습니다. 그렇지 않으면 정보가 끝없이 기록되어 긍정적인 피드백이 발생할 수 있기 때문입니다.

다른 버튼으로 구성기둥탭에 있는 (열 구성) 이벤트선택, 프로파일러에 표시하거나 기록할 열의 순서를 사용자 지정할 수 있습니다. 섹션에주의하십시오 그룹(그룹)이 목록에 있습니다. 그 안에 배치된 열에 대해 그룹화가 자동으로 수행됩니다. 이 섹션에 하나의 열만 넣으면 볼 때 매우 편리한 모드를 사용할 수 있습니다. 집계보다(통합 보기) (데이터베이스, 애플리케이션, 사용자 이름 등으로 정보가 자동으로 그룹화되고 원하는 데이터베이스, 애플리케이션 또는 사용자에 대한 레코드를 확장 및 축소할 수 있는 경우).

원하는 템플릿을 선택하거나 로깅을 위해 고유한 이벤트 세트를 설정한 후에는 탭으로 돌아가기만 하면 됩니다. 일반적인몇 가지 고급 추적 세션 옵션을 구성합니다.

추적 정보를 파일에 기록할 수 있습니다. 이 파일은 다양한 상황에서 사용할 수 있습니다.

q 정보의 소스로 전달될 수 있습니다. 데이터베이스 튜닝 어드바이저;

● 프로파일러에서 다시 "재생"하여 기록된 모든 명령을 반복할 수 있습니다. 예를 들어 다른 서버 설정으로 성능을 평가할 수 있습니다.

q는 응용 프로그램에 대한 주장을 뒷받침하기 위해 개발자에게 제시될 수 있습니다.

추적 세션을 파일에 기록하는 것과 관련된 몇 가지 사항을 살펴보겠습니다.

● 기본 파일 크기 제한인 5MB는 매우 작습니다. 프로덕션 서버를 프로파일링할 때 이 크기는 몇 분 안에 확보됩니다. 사실, 체크박스는 기본적으로 선택되어 있습니다. ~ 할 수있게하다파일롤오버(파일 변경 활성화), 즉, 하나의 파일을 채우면 두 번째 파일이 자동으로 생성되며 이름에 숫자 1이 추가된 다음 -2 등이 추가되지만 많은 수의 파일로 작업하는 것은 그렇지 않습니다. 항상 편리합니다. Database Tuning Advisor에 보낼 정보를 수집하는 경우 파일 크기 제한을 1GB로 설정하는 것이 가장 좋습니다( 세트최고파일크기(최대 파일 크기 설정) 탭 일반적인). 추적은 대부분 관리자의 워크스테이션에서 파일에 기록되므로 서버가 아닌 워크스테이션에 디스크 공간이 필요합니다.

q 매개변수 섬기는 사람프로세스추적하다데이터(서버가 추적 데이터를 처리하고 있음) 추적 정보 기록의 신뢰성을 높이는 데 사용할 수 있습니다. 기본적으로 SQL Server 프로파일러는 추적 데이터를 처리하며 실행 중인 시스템(서버일 필요는 없음)에서 수행합니다. 이 확인란을 선택하면 서버가 추적 정보 처리를 처리합니다. 이렇게 하면 모든 추적 정보가 수집되지만(확인란을 선택 취소하면 서버 사용량이 많은 시간에 일부 정보가 누락될 수 있음) 서버의 로드가 증가합니다.

추적 정보를 쓰기 위한 또 다른 옵션은 SQL Server 테이블에 쓰는 것입니다. 원하는 열 집합이 있는 테이블이 자동으로 생성됩니다. 이 테이블의 최대 항목 수만 조정할 수 있습니다. 이 탭에는 최대 항목 수가 천 단위로 표시됩니다.

탭의 마지막 옵션 일반적인- ~ 할 수있게하다추적하다멈추다시각(추적 정지 시간 활성화). 추적이 자동으로 비활성화되는 시간을 지정할 수 있습니다. 일반적으로 로깅 관점(백업, 대량 데이터 로드, OLAP 큐브 처리 등)에서 관심이 없는 일부 하우스키핑 작업을 시작하기 전에 추적을 끄는 것이 좋습니다.

모든 추적 매개변수를 구성한 후 버튼을 클릭할 수 있습니다. 달리다(실행) 탭 일반적인추적을 시작합니다(그림 11.2).

쌀. 11.2.추적 세션 중 정보 보기

Trace Information Viewer의 작동은 매우 간단합니다. 상단 섹션은 서버에서 발생하는 이벤트를 보여주고 하단 섹션은 자세한 정보(예: SQL 명령 코드)를 제공합니다. 다음은 이 창에서 사용할 수 있는 몇 가지 옵션입니다.

q if 탭 구성기둥그룹화를 위해 열을 선택한 템플릿 속성에서 보기 창에서 이러한 열을 기준으로 레코드를 그룹화할 수 있습니다. 이를 위해 메뉴 보다(보기) 명령 제공 그룹화보다(그룹화 보기);

q 목록의 템플릿 속성에서 동일한 탭에 있는 경우 그룹하나의 열만 배치되었으므로 더욱 편리한 표시 모드를 사용할 수 있습니다. 집계보다(그림 11.3). 이 모드는 명령으로 활성화됩니다. 집계보다같은 메뉴에서 보다선택한 열의 값을 축소 및 확장할 수 있는 트리 노드로 전환할 수 있습니다. 또한 이러한 각 노드에 대해 이벤트 수가 자동으로 계산됩니다.

쌀. 11.3.디스플레이 모드 집계보다

● 프로파일러에서는 방금 포착된 이벤트뿐만 아니라 저장된 파일 및 추적 테이블도 표시할 수 있습니다. 또한 Transact -SQL 명령을 사용하여 일반 SQL Server 스크립트를 열 수 있습니다. 이러한 파일 또는 테이블의 정보는 기록된 작업을 재생하는 데 사용할 수 있습니다. 메뉴 명령은 이를 위한 것입니다. 다시 하다(반복하다);

● SQL Server 2005 프로파일러에는 추적 정보를 성능 모니터 성능 카운터에 연결하는 새로운 기능이 도입되었습니다. 이 기회를 활용하려면 다음이 필요합니다.

열에 대한 정보를 기록해야 하는 동안 추적 세션을 정의합니다. 시작 시간그리고 종료 시간;

· 파일이나 테이블에 기록된 정보로 추적 세션을 시작합니다. 이와 동시에 성능 모니터의 검침 로그를 파일로 수집합니다.

프로파일러의 추적 파일에서 수집된 정보를 연 다음 다음 명령을 사용합니다. 수입성능데이터메뉴에서 (성능 데이터 가져오기) 파일.

SQL Server 2005는 프로파일러를 대체합니다. 이것은 추적 저장 프로시저입니다. 기능은 프로파일러와 거의 동일합니다. 예를 들어, 추적할 이벤트를 선택하고 텍스트 파일에 쓸 수도 있습니다. 주요 차이점은 모든 설정이 Transact -SQL 코드에서 수행되어야 한다는 것입니다.

추적 저장 프로시저로 작업하는 것은 프로파일러보다 어렵고 편리하지 않으며 추가 기능을 제공하지 않습니다. 따라서 우리는 그것들을 자세히 고려하지 않을 것입니다. 간단한 설명과 함께 이러한 저장 프로시저 목록만 제공합니다.

sp_trace_create- 추적 세션의 매개변수를 구성할 수 있습니다.

sp_trace_setevent- 생성된 추적 세션에 필요한 이벤트를 선택할 수 있습니다.

sp_trace_setfilter- 추적 정보를 수집하도록 필터를 구성할 수 있습니다.

sp_trace_setstatus- 추적을 시작하거나 중지하거나 생성된 저장 프로시저를 삭제할 수 있습니다. sp_trace_create현재 세션 정의;

sp_trace_generateevent- 추적 중에 가로챌 사용자 지정 이벤트를 생성할 수 있습니다.

이전 호(ComputerPress No. 1, 3-5, 7, 9'2006 참조)에서 마이그레이션 또는 업그레이드를 통해 SQL Server 2005로 전환하는 것과 관련된 문제와 SQL Server 2005 사용에 대한 주요 시나리오를 다루었습니다. 이 기사 쿼리 최적화의 다양한 방법과 성능 문제 검색과 관련된 문제를 해결하기 위한 가능한 접근 방식에 중점을 둡니다.

SQL Server는 끊임없이 변화하는 동적 환경에서 실행되는 서비스를 제공합니다. 따라서 서버 운영을 정기적으로 모니터링하면 문제가 발생하는 단계에서도 문제를 식별하고 신속하게 제거하기 위한 조치를 취할 수 있습니다. 통계가 축적됨에 따라 서버 운영의 주요 추세에 대한 이해가 나타납니다. 서버가 문제 없이 실행되는 경우에도 정기적인 데이터 수집을 통해 서버 성능의 추가 측정을 위한 벤치마크 역할을 할 수 있는 소위 서버 성능 기준선을 생성할 수 있습니다.

기준 성능 벤치마크가 있으면 다양한 시나리오에서 쿼리 성능을 분석할 수 있습니다. 다양한 최적화 절차를 수행하기 전, 수행하는 동안, 수행한 후에 최소한 측정을 수행하는 것이 좋습니다. 그러면 취한 조치가 성공적으로 수행될 수 있습니다. 또한 정기적인 표준 성능 측정(주별, 월별, 분기별 등)을 통해 서버 성능을 보다 명확하게 파악할 수 있습니다.

기본 벤치마크는 서버 피크 및 다운타임(피크 및 오프 피크 시간), 요청 및 명령 패킷에 대한 응답 시간, 백업 및 복원 절차 완료 시간 등을 결정하는 데 사용할 수 있습니다.

쿼리 성능

쿼리 성능은 두 가지 관점에서 고려되어야 합니다. 특정 쿼리를 실행하는 데 사용되는 리소스(리소스에는 쿼리 실행 중에 액세스하는 개체, 차단된 개체 등이 포함됨) 및 쿼리 실행에 소요된 시간 - 적은 시간 요청을 완료하는 데 시간이 걸리면 요청 중에 다른 요청과 트랜잭션을 차단할 가능성이 낮아집니다.

SQL Server 2005에는 두 가지 기본 쿼리 성능 측정 도구인 성능 모니터와 SQL Server 프로파일러가 포함되어 있습니다. 또한 SET STATISTICS 그룹(SET STATISTICS IO, SET STATISTICS PROFILE 및 SET STATISTICS TIME)의 T-SQL 구성과 동적 보기(동적 관리 보기)를 사용하여 쿼리 실행에 대한 정보를 얻을 수 있습니다. 다음으로 성능 모니터와 SQL Server 프로파일러 사용에 대해 자세히 살펴보겠습니다.

성능 모니터 사용

성능 모니터 유틸리티는 메모리, 네트워크 사용량, 프로세서 시간, SQL Server 및 기타 소프트웨어 제품(MSMQ(Microsoft Message Queuing), Microsoft .NET Framework의 작동과 관련된 정보)을 포함한 하드웨어 및 소프트웨어 리소스의 성능을 분석하는 데 사용됩니다. 및 Microsoft Exchange 서버. 특히 성능 모니터를 사용하여 잠금 및 트랜잭션과 같은 SQL Server 리소스를 모니터링할 수 있습니다.

관심 카운터를 추가하려면 다음 단계를 수행해야 합니다.

  1. 메뉴에서 시작팀을 선택 달리다그리고 대화 상자에서 달리다입력하다 성능. 그러면 여러 성능 카운터를 그래픽으로 표시하는 Performance MMC(Microsoft Management Console)가 시작됩니다.
  2. 창에서 시스템 모니터차트에서 오른쪽 버튼을 누르고 명령을 선택하십시오. 카운터 추가.
  3. 대화 상자에서 카운터 추가우리가 관심 있는 컴퓨터와 모니터링 대상을 선택합니다. SQL Server와 관련된 개체에는 해당 접두사가 있습니다.
  4. 미터를 선택하려면 다음 옵션 중 하나를 선택해야 합니다. 모든 카운터, 또는 드롭다운 목록에서 하나 이상의 카운터(그림 1).
  1. 그런 다음 데이터베이스 인스턴스를 선택하거나 옵션을 활성화해야 합니다. 모든 인스턴스.
  2. 추가 및 닫기 버튼을 클릭하면 카운터 추가가 완료됩니다.

관심 있는 카운터가 추가되면 그래프 형식으로 값을 보거나 추적 파일에 저장할 수 있습니다(그림 2).

후자의 경우 요소를 확장해야 합니다. 성능 로그 및 경고클릭 명령 새 로그 설정. 대화 상자에서 새 로그 설정프로토콜 이름을 지정하고 확인을 클릭해야 합니다. 대화 상자에서 다음 카운터 로그 이름우리는 팀을 선택 카운터 추가. 관심 카운터를 추가하는 것은 위에서 설명한 것과 같은 방식으로 발생합니다. 카운터 수가 많으면 시스템 성능에 영향을 줄 수 있습니다. 카운터 추가가 완료되면 버튼을 클릭합니다. 닫기.

탭에서 일반적인섹션에서 샘플 데이터샘플링 속도(데이터 수집)를 설정할 수 있습니다. 예를 들어 5분마다 한 번씩 평균 빈도로 시작한 다음 필요한 경우 줄이거나 늘리는 것이 좋습니다. 샘플링 간격이 짧을수록 더 많은 시스템 및 디스크 리소스가 필요합니다. 카운터 양자화 기간보다 간격이 짧으면 잘못된 데이터 표시가 발생할 수도 있습니다. 탭에서 로그 파일로그 파일의 속성을 구성할 수 있습니다. 일정모니터링 일정이 설정됩니다. 확인 버튼을 누르면 데이터 수집 시작 시 프로토콜이 생성됩니다(그림 3).

로깅을 수동으로 종료하려면 요소를 마우스 오른쪽 버튼으로 클릭하십시오. 카운터 로그그리고 팀을 선택 멈추다.

성능 모니터에서 로그 파일에 수집된 데이터를 보려면 항목을 선택하십시오. 시스템 모니터, 작업 표시줄 - 명령 로그 데이터 보기및 대화 상자에서 시스템 모니터 속성원천로그 파일 이름을 지정하십시오.

성능 관련 문제를 식별하는 데 정보를 사용할 수 있는 가장 일반적으로 사용되는 성능 모니터 카운터는 다음 범주로 나뉩니다.

  • 데이터 액세스 - 개체는 SQL Server 자체에서 사용하는 데이터 액세스 방법을 감사하는 데 사용됩니다. SQLServer:액세스 방법;
  • 통계 - 개체는 쿼리의 컴파일 및 재컴파일을 모니터링하는 데 사용됩니다. SQLServer:SQL 통계. SQL Server가 쿼리를 얼마나 빠르고 효율적으로 처리하는지에 대한 정보를 제공합니다.
  • 트랜잭션 - 개체와 관련된 카운터는 초당 트랜잭션 수를 결정하는 데 사용됩니다. SQLServer:데이터베이스그리고 SQLServer:트랜잭션;
  • 잠금 - 개체는 특정 유형의 리소스에 적용된 SQL Server 잠금을 감사하는 데 사용됩니다. SQLServer:잠금(1 번 테이블).

표 1. SQL Server 프로파일러 카운터

카운터 이름

설명

초당 인덱스에 대한 범위 스캔 수를 계산합니다.

마지막 1초 동안 수행된 전체 스캔 수를 계산합니다.

색인 검색/초

마지막 1초 동안 인덱스 조회 수를 계산합니다.

테이블 잠금 에스컬레이션/초

테이블에 대한 잠금 수를 계산합니다.

생성된 작업 테이블/초

마지막 1초 동안 생성된 작업 테이블의 수를 계산합니다.

일괄 요청/초

초당 Transact-SQL 명령 일괄 처리 수를 계산합니다. 많은 수의 패킷은 우수한 처리량을 의미합니다.

SQL 컴파일/초

초당 쿼리 컴파일 수를 계산합니다. 이 카운터의 값은 사용자가 기본 작업을 수행한 후에 거의 일정해져야 합니다.

SQL 재컴파일/초

초당 쿼리 재컴파일 수를 계산합니다.

SQLServer:데이터베이스 개체입니다. 트랜잭션/초 카운터

마지막 1초 동안 데이터베이스에서 시작된 트랜잭션 수를 계산합니다.

SQLServer: 트랜잭션 개체입니다. 가장 긴 트랜잭션 실행 시간 카운터

다른 현재 트랜잭션보다 더 오래 활성화된 트랜잭션 시작 이후 경과된 시간(초)을 계산합니다. 이 카운터에 매우 긴 트랜잭션이 표시되면 sys.dm_tran_active_transactions() 시스템 저장 프로시저를 사용하여 이 트랜잭션에 대한 정보를 가져옵니다.

SQLServer: 트랜잭션 개체입니다. 충돌 비율 카운터 업데이트

마지막 순간에 데이터를 업데이트할 때 발생하는 충돌을 해결하기 위해 스냅샷 격리를 사용하는 트랜잭션의 비율을 계산합니다.

평균 대기 시간(ms)

대기를 유발한 각 잠금 요청에 대한 평균 대기 시간을 계산합니다.

잠금 요청/초

초당 잠금 및 잠금 전환 수를 계산합니다.

잠금 대기 시간(ms)

마지막 1초 동안 잠금에 대한 총 대기를 계산합니다.

대기를 초래한 초당 잠금 요청 수를 계산합니다.

쿼리 성능을 측정하는 데 사용할 수 있는 두 번째 유틸리티는 SQL Server Profiler입니다. 다음으로 주요 사용 방법을 살펴보겠습니다.

SQL Server 프로파일러 사용

SQL Server 프로파일러 유틸리티는 저장 프로시저 및 Transact-SQL 명령 일괄 처리의 일부인 개별 쿼리 및 쿼리의 성능을 측정합니다. 단일 명령을 실행하는 데 소요된 시간, 명령 실행을 차단하는 시간, 실행 계획 등의 성능 정보를 수집하는 데 사용할 수 있습니다.

새 프로필을 만들려면 다음 단계를 수행해야 합니다.

  1. SQL Server 프로파일러 실행( Microsoft SQL Server 2005 => 성능 도구 => SQL Server 프로파일러).
  2. 메뉴에서 파일팀을 선택 새 추적.
  3. 대화 상자에서 서버에 연결원하는 서버를 선택하고 버튼을 클릭하십시오 연결하다.
  4. 대화 상자에서 추적 속성프로필 이름을 설정해야 합니다 (추적 이름), 그리고 목록에서 템플릿 사용사용 가능한 템플릿 중 하나를 선택하거나 공백템플릿이 사용되지 않는 경우.
  5. 프로파일링 결과를 저장하려면 옵션을 선택하십시오. 파일에 저장파일에 데이터를 쓰고 최대 파일 크기(기본값은 5MB)를 지정하려면 선택적으로 옵션을 활성화할 수 있습니다. 파일 롤오버 활성화지정된 프로필 크기에 도달하면 자동으로 새 파일을 생성합니다. 두 번째 가능성은 데이터베이스 테이블에 데이터를 저장하는 것입니다. (테이블에 저장)- 옵션 최대 행 설정최대 항목 수를 설정할 수 있습니다.
  6. 추적의 종료 시간을 설정하려면 다음 옵션을 사용할 수 있습니다. 추적 중지 시간 활성화(그림 4).

프로필에 대한 이벤트 및 데이터 열을 설정하려면 다음 단계가 필요합니다.

  1. 대화 상자에서 추적 속성탭으로 이동 이벤트 선택.
  2. 이벤트 클래스 테이블을 사용하여 프로필에서 이벤트를 추가하거나 제거합니다.
  3. 사용 가능한 모든 이벤트 목록을 얻으려면 옵션을 활성화하십시오. 모든 이벤트 표시(그림 5).

테이블에서. 표 2에는 가장 일반적으로 사용되는 SQL Server 프로파일러 이벤트가 나열되어 있습니다. 성능 카운터와 마찬가지로 SQL Server 프로파일러 이벤트는 여러 범주로 분류되며 그 중 일부는 목적에 부합합니다.

표 2. SQL Server 프로파일러 이벤트

이벤트 이름

설명

이 이벤트는 원격 프로시저 호출이 완료될 때 발생합니다.

이 이벤트는 저장 프로시저 실행이 완료되면 시작됩니다.

SP:Stmt완료

이 이벤트는 저장 프로시저 내의 Transact-SQL 명령 중 하나가 실행을 완료했을 때 발생합니다.

SQL:StmtCompleted

이 이벤트는 Transact-SQL 명령이 완료될 때 발생합니다.

SQL:일괄 완료

이 이벤트는 일괄 Transact-SQL 명령 실행이 완료되었을 때 발생합니다.

이 이벤트는 트랜잭션이 일부 리소스에 대한 잠금을 획득할 때 발생합니다.

이 이벤트는 트랜잭션이 이전에 잠긴 리소스를 해제할 때 발생합니다.

이 이벤트는 필요한 리소스가 이미 다른 트랜잭션에 의해 잠겨 있기 때문에 잠금을 획득하기 위한 시간 초과가 초과된 경우 발생합니다.

잠금이 있는지 확인하는 방법

트랜잭션이 리소스(테이블, 페이지, 인덱스 등)를 사용할 때마다 잠금이 설정됩니다. 다른 트랜잭션이 리소스에 액세스하려고 시도하고 잠금 유형이 이미 보유된 잠금과 호환되지 않는 경우 새 잠금이 획득됩니다.

다음 방법을 사용하여 잠금이 있는지 확인할 수 있습니다.

  • 프로세스에 대한 정보를 표시하는 SQL Server Management Studio 활동 모니터 유틸리티를 사용하고 프로세스 수준과 개체 수준에서 잠급니다. SQL Server Management Studio에서 활동 모니터에 액세스하려면 항목을 선택해야 합니다. 관리, 그리고 그 안에 - 활동 모니터이 요소를 두 번 클릭합니다. 활동 모니터를 통해 다음을 볼 수 있습니다.

프로세스당 잠긴 개체 - 프로세스 ID를 사용하여 잠금을 발생시킨 요청을 확인합니다. 서버 프로세스 ID(SPID)페이지에서 프로세스 정보,

다른 프로세스를 기다리게 하는 프로세스 - 이러한 프로세스를 식별하려면 열을 사용하십시오. 차단자페이지에서 프로세스 정보(그림 6);

  • SQL Server Profiler를 사용하여 차단된 프로세스에 대한 보고서 가져오기 - 이 목록은 지정된 시간보다 오랫동안 차단된 상태로 남아 있는 프로세스에 대한 정보를 표시합니다. ~에 대한

이 기사에는 메일링 리스트 "MS SQL Server - 민감한 문제 ..."에 게시된 여러 자료가 포함되어 있으며 MS SQL Server의 효율성 모니터링 문제, 하드웨어 문제의 원인 및 해결 방법을 찾는 방법에 대해 설명합니다. 또한 몇 가지 유용하고 실용적인 권장 사항과 경고가 제공됩니다.

데이터베이스 서버가 I/O를 많이 사용하는 경우 운영 체제의 I/O 페이지 잠금 제한 설정을 변경할 수 있습니다. 이렇게 하면 운영 체제가 하드 드라이브에 데이터를 읽고 쓰는 효과적인 속도를 높일 수 있습니다.
먼저 일반적인 서버 부하에 대해 I/O 벤치마크를 실행합니다. 그런 다음 regedit.exe에서 키를 엽니다.

HKLM\SYSTEM\CurrentControlSet\Control\SessionManager\MemoryManagement\IoPageLockLimit

귀하의 조치의 의미는 벤치마킹 결과의 변경 측면에서이 키의 값을 가장 최적의 값으로 단계별로 선택하는 것입니다.
이 키에서 운영 체제는 I/O 작업에 사용할 수 있는 최대 바이트 수를 읽습니다. 기본값은 512KB에 해당하는 0입니다. 이 값을 매번 512KB씩 늘리고(예: "512", "1024" 등) 변경할 때마다 시스템을 벤치마킹합니다. I/O 작업의 처리량 증가가 관찰되는 경우에만 이 매개변수를 늘리는 것이 좋습니다. 이는 표준 디스크 작업에 소요되는 시간의 감소로 나타날 수 있습니다. 눈에 띄게 개선되지 않으면 레지스트리 편집기로 돌아가서 마지막 증분을 삭제하십시오.

경고: 이 키 값의 최대 크기에는 제한이 있습니다. 16MB RAM이 있는 경우 IoPageLockLimit을 2048바이트 이상으로 설정하지 마십시오. 32MB RAM의 경우 4096바이트 등을 초과하지 마십시오.

중요 사항:

Sergey가 나열한 작업을 잘못 적용하거나 잘못 적용하면 시스템이 붕괴될 수 있습니다. 따라서 사전에 데이터베이스 및 시스템 백업이 있는지 확인하고, 작동 중인 NT 구성을 저장하고, 테스트 사이트에서 가능한 변경을 시뮬레이션하십시오. 한 번에 둘 이상의 구성을 변경하지 마십시오.

공유하다