INF: 이해 Bufwait 및 Writelog 시간 메시지

기술 자료 번역 기술 자료 번역
기술 자료: 167711 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

요약

SQL Server 오류 로그에 검사할 때, 다음 유형의 메시지 주기적으로 볼 수 있습니다.
bufwait: 시간 초과, BUF_IO, bp 0xd37ab0, 0x5e74e, pg 상태 0x1008/0x400003, 0x6d4f8c1b, obj bpss 0x2069e1f0
- 또는 -
writelog: 시간 초과, 2, dbstat2 0x22(0x22) dbid 1분기/q2 0/1, 소유자 = 3, waittype 0x81 =
이 문서에서는 bufwait 및 writelog 시간 초과 메시지를 의미를 설명합니다.

추가 정보

SQL Server 읽기를 수행할 때 사용하는 비동기 I/O 호출을 ReadFile(), ReadFileEx(), WriteFile(), WriteFileEx() 및 씁니다. 이러한 Win32 API 호출을 Windows NT Server I/O 요청을 제출하고 응용 프로그램에서 작업이 완료되기를 기다리는 동안 다른 작업을 계속할 수 있도록. 완료 시 이를 쓰기 동기화 이벤트 또는 완료 루틴을 통해 완료되었음을 응용 프로그램에 알립니다.

bufwait 및 logwrite 메시지를 실제로 경고 및 반드시 컴퓨터 또는 SQL Server 문제로 기호 않을 수 있습니다. SQL Server (즉 기본적으로 10 초) '설정하면 리소스 제한에서 ' 구성된 시간 (초)을 더 이상 대기한 있을 경우 시간 제한을 나타내는 오류 메시지를 인쇄합니다. 그러나 계속 진행하기 전에 완료할 수 있는 I/O 요청이 대기하고 계속해야 합니다. bufwait 메시지 페이지를 캐시에 넣을 수 있는 디스크 읽기 또는 페이지 아웃 캐시에서 디스크로 플러시하는 지연 해당합니다. logwrite 메시지 특정 읽기 또는 로그 레코드를 기록할 수 있습니다.

SQL Server 트랜잭션 로그 정렬된 액세스를 보장하기 위해 일반 스레드 동기화 메서드를 사용합니다. writelog 시간 초과 메시지가 대기 중인 다른 연결의 프로세스 ID (소유자) 물론 dbid 필드를 데이터베이스 ID가 제공됩니다. 위의 예제 메시지에서 현재 처리할 알림 (dbid 2), tempdb 사용하던 및 검사점 프로세스가 대기 (소유자 = 3). writelog 시간 제한의 원인을 조사할 때 writelog 메시지에 나열된 "소유자" spid 수행 중인 어떤 종류의 처리 방법에 대한 정보를 수집하기 위해 쿼리 sysprocesses 주기적으로 유용할 수 있습니다.

추가 로그 및 디스크 I/O 경합 중형 롤백 작업을 추가하고 이러한 활동을 writelog 시간 제한을 기여하는 것으로 관찰되었습니다. 최적의 성능을 위해 너무 짧거나 쿼리 제한 시간을 사용하여 서버에 더 많은 작업을 불필요한 롤백을 일으키는 문제를 더욱 exacerbate 있습니다; 롤백되어야 합니다 트랜잭션 수를 최소화해야 했습니다. SQL Server 6.5 서비스 팩 2, 새로운 구성 옵션, LogLRU 버퍼를 시작하는 롤백 또는 트리거 처리에 필요한 같은 과도한 로그 읽기 필요로 하는 환경에서는 성능이 향상됩니다 추가되었습니다. 이 옵션을 사용하여 로그 페이지가 캐시에 보유할 공간이 예약됩니다 데이터 캐시에 사용할 수 있는 양을 줄이는 유의하십시오. 이 매개 변수에 대한 최적의 값을 확인하는 방법에 대한 자세한 내용은 서비스 팩에 포함되어 있는 Readme.txt 파일을 참조하십시오.

이러한 메시지는 때만 일시적으로 나타나지 않으면 이러한 모든 문제를 나타내는 않을 수 있습니다. 그러나 아주 정기적으로 나타나지 않으면 디스크 하위 시스템의 용량, 도달 및 I/O 로드 분배 컨트롤러 또는 작업이 완료되기를 기다려야 할 시간을 줄이기 위해 디스크가 더 많은 통해 이점을 얻을 수 있는 기호 수 있습니다.

어떤 디스크 하위 시스템을 로드하지 확인하려면 처리, 성능 모니터 디스크 카운터를 시스템에 적절한 시청할 수 있습니다. LogicalDisk 및/또는 데이터 및 로그 장치에 해당하는; 값이 지속적으로 높은 경우 I/O 로드를 분산시킬 및 디스크 하위 시스템이 한계에 도달하지 것을 나타내는 항목을 찾는 방법을 고려할 수 있는 실제 디스크 % 디스크 Time 카운터를 모니터링하십시오. 디스크와 컨트롤러를 통해 I/O 로드 분배 세밀하게 허용하는 % 디스크 쓰기 시간 카운터가 컨트롤 및 추가 미세 % 디스크 읽기 시간 사용하여 조정 수행할 수 있습니다. I/O 요청 에서 큰 백로그 큰 디스크 큐 길이 값을 나타내는 및 디스크를 더 추가하지 조사해야 할 수도 있습니다 로드하거나 I/O 분배하려면 추가 컨트롤러. Windows NT Server 설명서, Windows NT Server 리소스 키트 및 Microsoft 기술 자료의 다음 문서를 디스크에 카운터에 대한 추가 정보를 찾을 수 있습니다.
102020: 성능 모니터를 사용하여 디스크 성능 모니터링 방법

이러한 메시지는 I/O 수행하는 지연이 발생할 수 있지만, 여러 SQL Server 구성 값을 시스템의 전체 I/O 처리량이 직접적인 영향을 미칠: 최대 비동기 I/O; 최대 lazywrite I/O, logwrite 절전 모드 및 자원 시간 제한.

SQL Server, 보류 중인 요청 수가 조절 수 최대 처리 중인 비동기 I/O 요청을 'max async I/O' 구성 값이 결정합니다. 비동기 I/O 요청이 이루어질 때 Windows NT Server 관련된 요청을 큐에 합니다 오버헤드가. 비동기 I/O 요청을 적절히 사용할 때 성능을 향상시킬 수 있습니다 동안 시점에서 나중에 사용할 실제로 시스템 성능이 저하될 수 시작할 수 제한을 도달할 수 있습니다. 이 제한을 컨트롤러, 드라이버 및 관련된 디스크 하위 시스템이 주로 다릅니다. 영구적으로 위의 오류를 받 및 이 설정을 기본 값에서 변경된 경우 해당 기본 값으로 다시 설정하는 것이 좋습니다.



'최대 lazywrite I/O' 매개 변수는 'max async I/O' 설정을 밀접한 관련이 있지만 특히 지연 기록기 프로세스가 대기 중인 요청의 수를 throttles. 지연 기록기 프로세스는 않도록 항상 사용 가능한 공간을 일부 데이터 캐시에 있는 캐시 변경된 페이지를 디스크에 플러시할 시도합니다. 프로세스가 사용 가능한 계속 시도하는 간격은 '사용 가능한 버퍼가' 구성 옵션에 의해 제어됩니다.

'logwrite 절전' 구성 설정을 로그 페이지가 디스크에 쓰기 전에 의도적인 지연 강제로 고급 구성 옵션입니다. 로그 페이지가 실제로 데이터를 수정하기 전에 디스크에 커밋된 사용해야 하기 때문에 일반적으로 이러한 쓰기 가능한 한 빨리 수행할 수 원하는. 특정 환경에서는 여러 프로세스를 "로그 레코드를 한 페이지에 팩" 따라서 쓰기 작업의 수를 줄일 수 있도록 의도적으로 지연 강제로 성능을 향상시킬 수 있습니다. writelog 제한 시간 'logwrite 절전' 구성 설정을 늘려 인위적으로 인한 수 수 있으므로 이 의도적인 지연 사용되는 시간은 일부로 전체 쓰기 작업에 대한 제한 시간이 계산됩니다. 이 구성 값의 변경 경우에만 제어된 방식으로 성능 때문에 확인해야 할 수 있어야 합니다.



'리소스 제한 시간' 구성 설정은 전체 시간을 제한을 비동기 I/O 작업 제어합니다. 모든 작업을 해당 시간 제한 경고 결과를 완료하는 데 10 초 이상 걸리는 있으므로 기본적으로 10 (초) 설정이 설정됩니다. 이 값을 너무 낮게 설정하면 시간 초과, 비현실적으로 짧은 시간이 발생할 수 있습니다. bufwait 또는 writelog 시간 제한을 자주 나타나면 이 설정을 사용하여 이러한 오류를 생성한 빈도를 줄이는 늘릴 수 있습니다.

또한 SQL Server I/O 하위 시스템에 있으므로 광범위하게 강조합니다 때문에 중요한 최신 버전의 드라이브 및 컨트롤러 펌웨어 뿐만 아니라 최신 드라이버를 실행 중인지 확인할 수 있습니다. 또한 디스크 하위 시스템의 stressing 있을 수 있는 진단 하드웨어 제조업체에 문의하십시오.

위의 정보가 문제 해결에 도움이 경우 SQL Server에서 수행한 것과 유사한 방식으로 시스템 stressing 것이 좋습니다. 이렇게 하면 지원하기 위해 SQLHDTST 유틸리티가 작성되어 있습니다. 유틸리티 및 있는 이를 다운로드할 수 있는 위치에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
178444SQL Server 유틸리티 사용 가능한 파일
SQL Server 시스템을 지원하기 위해 필요한 ‘ 안정적인 미디어 전달이 보장되지 ’ Microsoft SQL Server Always-On 저장소 솔루션 검토 프로그램을 아래에 설명된 대로. FoSQL Server 데이터베이스 엔진에 대한 입력 및 출력 요구 사항에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
967576Microsoft SQL Server 데이터베이스 엔진 입출력 요구 사항

속성

기술 자료: 167711 - 마지막 검토: 2003년 11월 21일 금요일 - 수정: 3.1
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft SQL Server 6.0 Standard Edition
  • Microsoft SQL Server 6.5 Standard Edition
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Standard
키워드:?
kbmt kbenv kbhardware kbinfo KB167711 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.
더 이상 지원되지 않는 제품의 KB 내용에 대한 고지 사항
이 문서에서는 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