데이터베이스 작업을 완료 하는 데 시간이 오래 걸릴 또는 트랜잭션 로그는 많은 가상 로그 파일에 오류를 트리거합니다.

이 문서는 Microsoft 기계 번역 소프트웨어를 이용하여 번역되었으며 Microsoft Community에 의한 Community Translation Framework(CTF) 기술 혹은 사람이 번역한 내용에 의하여 사후 편집될 수 있습니다. Microsoft는 Knowledge Base에 있는 모든 문서에 다양한 언어로 접근할 수 있도록 하기 위하여 기계 번역, 사람에 의한 번역 및 커뮤니티가 편집한 내용을 모두 제공합니다. 번역된 문서는 어휘, 구문 및/혹은 문법에 오류가 있을 수 있습니다. Microsoft는 번역 오류로 인한 부정확성, 오류 및/또는 손해와 이를 고객이 사용하는 데에 대하여 책임을 지지 않습니다.

이 문서의 영문 버전 보기:2028436
현상
SQL Server 2008 환경에서는 다음과 같은 현상이 발생할 수 있습니다.
  • 하나 이상의 데이터베이스에 SQL Server를 시작 하는 동안 복구를 완료 하는 데 시간이 오래 걸릴.
  • 데이터베이스 복원을 수행할 때 완료 하는 데 시간이 오래 걸립니다.
  • 데이터베이스를 연결 하려고 마치려면 시간이 오래 걸릴.
  • 데이터베이스 미러링 설정 하려고 하면 발생 하면 오류 메시지 1413, 1443 1479, 제한 시간을 나타내는.
  • 701와 같은 메모리 관련 오류 데이터베이스를 복원 하려고 할 때 발생 합니다.

SQL Server 오류 로그를 검사할 때 데이터베이스 복구 프로세스의 분석 단계 전에 상당한 시간이 소요 된 있는지 확인할 수 있습니다.
2010-05-08 14:42:38.65 spid22s 'lot_of_vlfs' 데이터베이스를 시작 합니다.
2010-05-08 14:46:04.76 spid22s 분석 데이터베이스 'lot_of_vlfs' (16)에 0% 완료 (약 0 초 수 없음). 1 / 3 단계입니다. 정보 메시지입니다. 사용자 작업이 필요 하지 않습니다.

원인
SQL Server 데이터베이스 복구 프로세스의 초기 단계에서 모든 가상 로그 파일의 모든 트랜잭션 로그 파일에는 검색을 수행합니다. 모든 가상 로그 파일의 목록이 작성 됩니다. 이 프로세스는 해당 데이터베이스에 있는 가상 로그 파일의 수에 따라 시간이 오래 걸리므로. 데이터베이스 자주 트랜잭션 로그 만나는 자동 증가 증가 증가 매우 작은 크기로 서 발생 하는 경우 많은 수의 가상 로그 파일 종료할 수 있습니다.

일반적으로 가상 로그 파일 수가 도달 하는 범위에 있을 때 "현상" 절에서 설명한 문제가 발생할 시작 합니다.
해결 방법
특정 데이터베이스의 가상 로그 파일의 수를 찾으려면 다음 블로그에서 메서드를 사용할 수 있습니다.
로그 파일 구조 데이터베이스 복구 시간에 주는 영향

가상 로그 파일의 총 수를 10000 등의 적절 한 번호를 유지 해야 합니다.

다음 방법을 사용 하 여 제한 된 수의 가상 로그 파일을 포함 하는 트랜잭션 로그 파일을 다시 구성할 수 있습니다.
  1. 트랜잭션 로그 파일 축소, TSQL ALTER DATABASE를 사용 하 여 수동으로 필요한 크기로 파일 증가 <database name="">파일 수정 (이름 '논리적 파일 이름을 트랜잭션 로그', 크기 = = <required size="">)</required> </database>
  2. 트랜잭션 로그 파일을 다시 작성 한 다음 필요한 크기를 수동으로 트랜잭션 로그 파일에 증가.
    1. 데이터베이스가 완전히 (에 사용자 또는 열린 트랜잭션) 종료 된 이전 하는 경우 새 트랜잭션 로그 파일을 만들려면 CREATE DATABASE FOR ATTACH_REBUILD_LOG 옵션이 사용할 수 있습니다.
    2. 읽기/쓰기 데이터베이스에 로그 파일은 현재 사용할 수 없는 및 데이터베이스를 종료 하는 경우 CREATE DATABASE FOR ATTACH 옵션 연결 작업을 하기 전에 사용자 또는 열린 트랜잭션] [와 청소 단일 자동으로 로그 파일이 다시 작성 하 고 주 파일을 업데이트 합니다.

트랜잭션 로그 파일의 레이아웃을 다시 구성 해야 하는 후 검토 하 고 필요에 따라 변경 하면 자동 증가 같은 문제가 향후 발생 하지 않도록 하려면 트랜잭션 로그 파일에 대 한 설정을 합니다.

참고: 이러한 작업 중 하나를 수행 하기 전에 나중에 몇 가지 문제가 발생 하는 경우 유효한 남게 백업을 있는지 확인 하십시오.

2524743 수정: 복구 데이터베이스 SQL Server 2008 또는 SQL Server 2008 R2 환경에 대 한 예상 보다 오래 걸린다

2455009 FIX: 성능 저하 많은 Vlf 트랜잭션 로그를 SQL Server 2005, SQL Server 2008 또는 SQL Server 2008 r 2의 내부에 있는 경우 데이터베이스를 복구 하는 경우

2653893 FIX: SQL Server 2008 r 2에서 데이터베이스를 복원 하려면 오랜 시간이 걸립니다.

979042 FIX: SQL Server 2005에서 또는 SQL Server 2008의 데이터베이스에 많은 수의 가상 로그 파일에 있으면 주 데이터베이스가 복구 되지 않은

2882905 9017 정보 메시지가 SQL Server 인스턴스를 시작 하거나 복원 하거나 데이터베이스를 연결 하는 경우에 기록 됩니다.

추가 정보
가상 로그 파일에 대 한 자세한 내용은 다음 온라인 설명서 항목을 참조 하십시오. 트랜잭션 로그 물리 아키텍처

이 문제에 대 한 자세한 내용은 다음을 참조.

로그 파일 구조 데이터베이스 복구 시간에 주는 영향
트랜잭션 로그 Vlf-너무 많거나 너무 적은?
1413 오류 데이터베이스 미러링-가상 로그 파일의 수를 시작할 때 너무 많은?

문제가 트랜잭션 로그를 증가 하 고 고려해 야도.

2633151 SQL Server 데이터베이스 트랜잭션 로그 파일이 구성 된 파일 증가 값으로 증가 하지 않습니다.

참고: SQL Server 2014의 VLF 생성 알고리즘에 대 한 중요 한 변경에 알아봅니다.


제품 또는 SQL Server 인스턴스 및 SQL Server 제품 버전에서이 문제를 자동으로 확인 하는 도구에 대 한 자세한 내용은 다음 표를 참조.

규칙 소프트웨어규칙 제목규칙 설명평가된 규칙 기준 제품 버전
SQL Server 2008 R2 최상의 연습 분석기 (SQL Server 2008 R2 BPA)




높은 수 있는 VLF의 데이터베이스





SQL Server 2008 R2 최상의 연습 분석기 (SQL Server 2008 R2 BPA) 검색할 데이터베이스가 가상 로그 파일의 많은 수를 포함 하는 규칙을 제공 합니다. SQL Server 2008 R2 BPA는 SQL Server 2008 및 SQL Server 2008 r 2를 모두 지원합니다.

BPA 도구를 실행 하 고 제목이 VLF, 많이 사용 하 여 데이터베이스에서 데이터베이스 엔진에 오류가 발생 하면 영향을 받는 데이터베이스에 대 한 가상 로그 파일의 수를 확인 하 고 트랜잭션 로그 파일을 다시 구성 합니다.
SQL Server 2008
SQL Server 2008 R2






SQL Server 2012 최상의 연습 분석기 (SQL Server 2012 BPA)



높은 수 있는 VLF의 데이터베이스




SQL Server 2012 최상의 연습 분석기 (SQL Server 2012 BPA) 검색할 데이터베이스가 가상 로그 파일의 많은 수를 포함 하는 규칙을 제공 합니다.

BPA 도구를 실행 하 고 제목이 VLF, 많이 사용 하 여 데이터베이스에서 데이터베이스 엔진에 오류가 발생 하면 영향을 받는 데이터베이스에 대 한 가상 로그 파일의 수를 확인 하 고 트랜잭션 로그 파일을 다시 구성 합니다.
SQL Server 2012








경고: 이 문서는 자동으로 번역되었습니다.

속성

문서 ID: 2028436 - 마지막 검토: 08/05/2015 20:29:00 - 수정: 6.0

Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 Standard, Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Express, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Web, Microsoft SQL Server 2008 R2 Workgroup, Microsoft SQL Server 2008 Web, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Express, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2012 Web, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Express, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Web

  • kbmt KB2028436 KbMtko
피드백