Microsoft로 로그인
로그인하거나 계정을 만듭니다.
안녕하세요.
다른 계정을 선택합니다.
계정이 여러 개 있음
로그인할 계정을 선택합니다.

Microsoft는 Microsoft SQL Server 2005, 2008 및 2008 R2 수정 사항을 하나의 다운로드 가능한 파일로 배포합니다. 수정 사항은 누적되므로 각 새 릴리스에는 이전 SQL Server 2005, 2008 및 2008 R2 수정 릴리스에 포함된 모든 핫픽스 및 모든 보안 수정 사항이 포함됩니다.

증상

다음과 같은 경우를 생각해 볼 수 있습니다.

  • 컴퓨터에 Microsoft SQL Server 2005, Microsoft SQL Server 2008 또는 Microsoft SQL Server 2008 R2를 설치합니다.

  • 하나 이상의 데이터베이스가 전체 또는 대량 로그 복구 모델에 있습니다.

  • 데이터베이스에 대한 트랜잭션 로그 파일의 초기 크기는 작습니다. 그러나 트랜잭션 파일은 커지게 됩니다.

  • 트랜잭션 로그 파일의 자동 증가 증가는 작은 크기로 구성됩니다. 예를 들어 자동 증가 증가는 1MB 또는 1%로 구성됩니다. 또는 작은 수동 증가를 사용하여 트랜잭션 로그 파일을 증가시킬 수 있습니다.

  • 트랜잭션 로그 파일은 작은 증가 증가로 증가합니다. 잠시 후 트랜잭션 로그 파일이 커집니다.

    예를 들어 트랜잭션 로그 파일은 100MB에서 10기가바이트로 증가합니다. 트랜잭션 로그 파일은 각 증가에서 1MB씩 증가합니다.

이 시나리오에서는 다음과 같은 문제가 발생할 수 있습니다.

  • 복구할 작업이 많은 경우 데이터베이스가 시작될 때 데이터베이스 복구 속도가 느립니다.

    예를 들어 트랜잭션이 오랫동안 열려 있는 경우입니다. 또는 크기가 작은 많은 트랜잭션은 SQL Server 종료되거나 다시 시작될 때 커밋되지 않습니다. 이 경우 분석 단계, 실행 취소 단계 또는 다시 실행 단계에서 장기 예상 복구 시간에 대한 오류가 발생할 수 있습니다. 이 오류는 다음과 유사하며 SQL Server 2005 오류 로그 파일에 기록됩니다.

    데이터베이스 'mydatabase'(7)의 분석은 0%가 완료되었습니다(약 1234초 남아 있음). 정보 메시지일 뿐입니다. 사용자 작업이 필요하지 않습니다.

  • 데이터베이스가 온라인 상태가 되면 전체 데이터베이스 백업 파일 및 추가 트랜잭션 로그 시퀀스가 복원되면 데이터베이스 복구 속도가 느립니다.

    참고 복원 작업 중에 데이터베이스를 온라인 상태로 전환하려면 WITH RECOVERY 구문 또는 WITH STANDBY = <옵션> 구문을 사용합니다.

  • 미러링 쌍의 파트너 서버에서 데이터베이스 미러링 복구가 느립니다.

  • 트랜잭션 복제에 대한 로그 판독기 에이전트의 진행률이 다음 작업에 대해 느립니다.

    • 게시자 데이터베이스의 트랜잭션 로그가 구문 분석됩니다.

    • 명령이 배포 데이터베이스에 추가됩니다.

    • 트랜잭션이 복제됩니다.

  • 많은 트랜잭션이 기록되거나 트랜잭션 로그가 오랫동안 활성 상태로 유지되는 경우 데이터베이스 스냅샷이 만들어질 때 성능이 저하됩니다. 이 문제는 스냅샷이 복구를 실행해야 하고 트랜잭션 로그를 롤백해야 하기 때문에 발생합니다.

  • DBCC CHECKDB 구문을 사용하여 일관성 검사를 실행하기 위해 데이터베이스 스냅샷을 완전히 복구해야 하는 숨겨진 데이터베이스 스냅샷을 만들 때 성능이 저하됩니다.

원인

이러한 문제는 트랜잭션 로그 파일의 VLF(가상 로그 파일)가 다음 작업 중에 이러한 VLF를 SQL Server 검사할 때 성능이 저하될 수 있기 때문에 발생합니다.

  • 데이터베이스 복구

  • 데이터베이스 미러링

  • 데이터베이스 스냅샷

  • 데이터베이스 트랜잭션 복제 로그 판독기 작업

데이터베이스에 대한 트랜잭션 로그 파일이 극단적인 증가 조건에서 작은 증가로 증가하면 단일 트랜잭션 로그(.ldf) 파일 집합 내에 수천~수십만 개의 VLF가 존재합니다. 그러나 로그가 크게 증가하면 비교하면 여러 VLF만 생성됩니다. 예를 들어 여러 VLF가 100개 미만일 수 있습니다.

참고 VLF는 트랜잭션 로그 파일의 SQL Server 내부적으로 사용되는 나누기 또는 세그먼트입니다.
 

해결 방법

누적 업데이트 정보

SQL Server 2008 R2


이 문제에 대한 수정 사항은 누적 업데이트 6에서 처음 릴리스되었습니다. SQL Server 2008 R2에 대한 이 누적 업데이트 패키지를 가져오는 방법에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료에서 문서를 확인합니다.

2489376 SQL Server 2008 R2용 누적 업데이트 패키지 6 참고 빌드는 누적되므로 각 새 수정 릴리스에는 모든 핫픽스 및 이전 SQL Server 2008 R2 수정 릴리스에 포함된 모든 보안 수정 사항이 포함됩니다. 이 핫픽스를 포함하는 최신 수정 릴리스를 적용하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.

981356 SQL Server 2008 R2가 릴리스된 후 릴리스된 SQL Server 2008 R2 빌드

SQL Server 2008 서비스 팩 1

이 문제에 대한 수정 사항은 SQL Server 2008 서비스 팩 1에 대한 누적 업데이트 12에서 처음 릴리스되었습니다.

참고 빌드는 누적되므로 각 새 수정 릴리스에는 모든 핫픽스 및 이전 SQL Server 2008 수정 릴리스에 포함된 모든 보안 수정 사항이 포함됩니다. 이 핫픽스를 포함하는 최신 수정 릴리스를 적용하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.

970365 SQL Server 2008 서비스 팩 1이 릴리스된 후 릴리스된 SQL Server 2008 빌드는 Microsoft SQL Server 2008 핫픽스가 특정 SQL Server 서비스 팩용으로 만들어집니다. SQL Server 2008 서비스 팩 1 핫픽스를 SQL Server 2008 서비스 팩 1 설치에 적용해야 합니다. 기본적으로 SQL Server 서비스 팩에 제공되는 핫픽스는 다음 SQL Server 서비스 팩에 포함됩니다.

SQL Server 2008 서비스 팩 2


이 문제에 대한 수정 사항은 SQL Server 2008 서비스 팩 2의 누적 업데이트 2에서 처음 릴리스되었습니다.

참고 빌드는 누적되므로 각 새 수정 릴리스에는 모든 핫픽스 및 이전 SQL Server 2008 수정 릴리스에 포함된 모든 보안 수정 사항이 포함됩니다. 이 핫픽스를 포함하는 최신 수정 릴리스를 적용하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.

2402659 SQL Server 2008 서비스 팩 2가 릴리스된 후 릴리스된 SQL Server 2008 빌드는 Microsoft SQL Server 2008 핫픽스가 특정 SQL Server 서비스 팩용으로 만들어집니다. SQL Server 2008 서비스 팩 2 핫픽스를 SQL Server 2008 서비스 팩 2 설치에 적용해야 합니다. 기본적으로 SQL Server 서비스 팩에 제공되는 핫픽스는 다음 SQL Server 서비스 팩에 포함됩니다.

SQL Server 2005 서비스 팩 3

이 문제에 대한 수정 사항은 SQL Server 2005 서비스 팩 3용 누적 업데이트 13에서 처음 릴리스되었습니다.

참고 빌드는 누적되므로 각 새 수정 릴리스에는 모든 핫픽스 및 이전 SQL Server 2005 수정 릴리스에 포함된 모든 보안 수정 사항이 포함됩니다. 이 핫픽스를 포함하는 최신 수정 릴리스를 적용하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.

960598 SQL Server 2005 서비스 팩 3이 릴리스된 후 릴리스된 SQL Server 2005 빌드는 Microsoft SQL Server 2005 핫픽스가 특정 SQL Server 서비스 팩용으로 만들어집니다. SQL Server 2005 서비스 팩 3 핫픽스를 SQL Server 2005 서비스 팩 3 설치에 적용해야 합니다. 기본적으로 SQL Server 서비스 팩에 제공되는 핫픽스는 다음 SQL Server 서비스 팩에 포함됩니다.
 

SQL Server 2005 서비스 팩 4

이 문제에 대한 수정 사항은 SQL Server 2005 서비스 팩 4용 누적 업데이트 1에서 처음 릴리스되었습니다.

참고 빌드는 누적되므로 각 새 수정 릴리스에는 모든 핫픽스 및 이전 SQL Server 2005 수정 릴리스에 포함된 모든 보안 수정 사항이 포함됩니다. 이 핫픽스를 포함하는 최신 수정 릴리스를 적용하는 것이 좋습니다.

SQL Server 2005 서비스 팩 4 핫픽스를 SQL Server 2005 서비스 팩 4 설치에 적용해야 합니다. 기본적으로 SQL Server 서비스 팩에 제공되는 핫픽스는 다음 SQL Server 서비스 팩에 포함됩니다.

상태

Microsoft는 "적용 대상" 절에 나열한 Microsoft 제품에서 이 문제를 확인했습니다.

해결 방법 

이 핫픽스를 설치하고 SQL Server 다시 시작하면 복구 성능이 향상될 수 있습니다. 예를 들어 이 핫픽스를 설치하고 SQL Server 다시 시작한 후 다음 작업에 대한 성능이 향상될 수 있습니다.

  • 데이터베이스 복구

  • 데이터베이스 미러링

  • 데이터베이스 스냅샷

  • 데이터베이스 트랜잭션 복제 로그 판독기 작업


이 핫픽스를 설치할 수 없는 경우 다음 해결 방법을 수행하여 기존 문제를 완화하고 향후 발생을 방지할 수 있습니다.

기존 문제 완화

  • 복원 또는 복구 작업이 완료

    되기를 기다립니다. 데이터베이스를 복원하거나 복구할 때 성능이 저하되는 복구되지 않은 데이터베이스가 있는 경우 복원 또는 복구 작업이 완료될 때까지 기다려야 할 수 있습니다. 예를 들어 오프라인 상태 또는 복구되지 않은 데이터베이스에 대한 SSMS(SQL Server Management Studio)의 복구 상태가 표시될 수 있습니다. SQL Server 중지하면 일반적으로 복구 속도가 느려지지 않으며 동일한 복구 분석 단계, 다시 실행 단계 또는 실행 취소 단계를 반복하는 데 더 많은 시간이 걸릴 수 있습니다.

  • 수천 개의 VLL을 포함하는 트랜잭션 로그 시퀀스를 복원하지 않습니다.

    백업 파일을 사용하여 데이터베이스를 복원하고 복구하는 동안 성능이 저하되는 경우 수천 개의 VLLF가 포함된 트랜잭션 로그 시퀀스를 복원하지 않아도 됩니다. 기록된 가상 로그 파일이 가장 많은 백업 파일을 식별하려면 다음 문을 사용하여 로그 백업 파일
    에서 FirstLSNLastLSN 열을 확인합니다. RESTORE HEADERONLY FROM DISK='C:\folder\file.trn'

    로그 백업 파일을 복원하지 않도록 결정할 수 있습니다. 또는 RESTORE 명령에서 STOP AT 문을 사용하여 트랜잭션 로그의 조각화된 부분을 방지할 수 있습니다. 오류 복구 시나리오 중에 로그 시퀀스를 최신 시점까지 완전히 복원하지 않으면 데이터베이스 SQL Server 데이터 손실이 발생합니다. 이 데이터 손실은 모든 트랜잭션이 유지되지 않기 때문에 발생합니다. 따라서 비즈니스 절충 결정이 있습니다. 고도로 조각화된 트랜잭션 로그를 완전히 복원할 수 있습니다. 그러나 이 작업에는 몇 시간이 걸릴 수 있습니다. 또는 복구에서 STOP AT 문을 사용하여 로그의 조각화된 부분 전에 복구를 중지할 수 있습니다. 그러나 생략한 누락된 트랜잭션은 모두 손실됩니다.

    이 핫픽스를 설치하지 않으면 일반적으로 SQL Server 다시 시작한 후 신속한 복구를 위한 안전한 의지가 없습니다. SQL Server 로그 파일을 분석하고 완료된 트랜잭션을 다시 실행한 다음 불완전한 트랜잭션을 실행 취소하여 복구를 완료하여 데이터베이스를 안전하게 온라인 상태로 만들기 위해 VLF 목록을 찾아야 합니다. 복구하는 동안 트랜잭션을 안전하게 건너뛸 수 없습니다.

향후 발생 방지

  • 데이터베이스의 자동 증가 증분을 적절한 크기

    로 설정 자동 증가 크기가 너무 작으면 VLF(가상 로그 파일)가 많고 SQL Server 성능이 저하될 수 있습니다. 자동 증가 크기가 너무 큰 경우 트랜잭션 로그를 자동으로 증가시키는 쿼리는 증가가 완료되기까지 오랜 시간 기다려야 할 수 있습니다. 따라서 SQL Server 시간 제한 오류가 발생할 수 있습니다. 이러한 문제를 해결하려면 데이터베이스의 자동 증가 증분 크기를 적절한 크기로 설정할 수 있습니다.

  • 많은 수의 VLL을 제거하고 수동 증가를

    사용합니다. 많은 VLL이 트랜잭션 로그에 있는 경우 트랜잭션 로그의 크기를 줄이고 수동 증가를 사용하여 수요를 충족하기 위해 최대 비즈니스 전에 증가시킵니다. 예를 들어 트랜잭션 로그는 큰 증가 또는 단일 수동 증가에서 적절한 평균 크기로 다시 증가합니다. 따라서 트랜잭션 로그의 크기가 최대 용량에 도달하고 로그 백업 파일은 자주 정기적으로 예약됩니다. 또한 트랜잭션 로그가 잘릴 수 있으며 트랜잭션 로그의 VLF를 주기에 다시 사용할 수 있습니다.

  • 트랜잭션 로그를 수동으로

    축소 및 늘리는 방법 VLF가 너무 많은 로그를 수정하려면 다음 단계에 따라 로그를 축소하고 수동으로 다시 늘입니다.

    1. 데이터베이스가 전체 또는 대량 로그 복구 모델에 있는 경우 활성 VLF가 잘리고 다시 사용할 수 있도록 트랜잭션 로그를 백업해야 합니다. BACKUP LOG databasename TO DISK='C:\folder\log_backupfile.trn'
      SSMS를 사용하여 트랜잭션 로그 파일을 백업하는 방법에 대한 자세한 내용은 다음 MSDN(Microsoft Developer Network) 웹 사이트를 참조하세요.

      SSMS를 사용하여 트랜잭션 로그 파일을 백업하는 방법Transact-SQL 문을 사용하여 트랜잭션 로그 파일을 백업하는 방법에 대한 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

      Transact-SQL 문을 사용하여 트랜잭션 로그 파일을 백업하는 방법

    2. 트랜잭션 로그 파일의 논리적 이름을 확인하려면 다음 문 중 하나를 실행합니다.
      문 1
      exec sp_helpfile 문 2
      select * from sys.sysfiles To reduce the size of the transaction log file to desired size, use the code:DBCC SHRINKFILE(transactionloglogicalfilename, TRUNCATEONLY)

    3. 트랜잭션 로그 파일의 크기를 적절한 크기로 늘릴 수 있습니다. 트랜잭션 로그 파일의 크기를 최대 일반 크기로 늘리는 것이 좋습니다. 따라서 자동 증가는 방지됩니다. 트랜잭션 로그의 크기를 설정하려면 SSMS에서 데이터베이스 속성 페이지를 사용하거나 다음 ALTER DATABASE 구문:MODIFY FILE(NAME = transactionloglogicalfilenae, SIZE=newtotalsize MB)
      을 사용합니다. SSMS에서 데이터베이스 크기를 늘리는 방법에 대한 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

      SSMS에서 데이터베이스 크기를 늘리는 방법ALTER DATABASE MODIFY FILE 구문에 대한 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

      ALTER DATABASE MODIFY FILE 구문에 대한 일반 정보

추가 정보

SQL 오류 로그 파일을 검토한 다음 각 트랜잭션 로그 백업 파일에서 LSN(로그 시퀀스 번호)을 찾아 VLF 세그먼트 수를 확인할 수 있습니다. LSN에서 콜론 기호 앞의 첫 번째 숫자는 LSN의 수에 해당합니다.

예를 들어 LSN에 대한 첫 번째 정보 메시지의 첫 번째 숫자는 1입니다. 그러나 LSN에 대한 두 번째 정보 메시지의 첫 번째 숫자는 100001. 이 시나리오에서는 첫 번째 정보 메시지의 시간과 두 번째 정보 메시지 사이에 사용되는 100,000개의 VLF가 있습니다. 따라서 VLF(가상 로그 파일)가 많은 기록된 조각화된 트랜잭션 로그는 다음과 유사합니다.
 

{로그가 백업되었습니다. 데이터베이스: mydbname, 생성 날짜(시간): 2010/07/08(12:36:46), 첫 번째 LSN: 1:5068:70, 마지막 LSN: 1:5108:1, 덤프 디바이스 수: 1, 디바이스 정보: (FILE=1, TYPE=DISK: {'C:\folder\logbackup1.trn'}). 정보 메시지일 뿐입니다. 사용자 작업이 필요하지 않습니다.

로그가 백업되었습니다. 데이터베이스: mydbname, 생성 날짜(시간): 2010/07/08(15:36:46), 첫 번째 LSN: 100001:5108:1, 마지막 LSN: 100002:5108:1, 덤프 디바이스 수: 1, 디바이스 정보: (FILE=2, TYPE=DISK: {'C:\folder\logbackup2.trn'}). 정보 메시지일 뿐입니다. 사용자 작업이 필요하지 않습니다.}

다음 표에서는 SQL Server 인스턴스의 "증상" 섹션과 규칙이 평가되는 SQL Server 버전에 설명된 조건을 자동으로 확인하는 제품 또는 도구에 대한 자세한 정보를 제공합니다.
 

규칙 소프트웨어

규칙 제목

규칙 설명

규칙이 평가되는 제품 버전

System Center Advisor

트랜잭션 복제를 사용하여 SQL Server 트랜잭션 로그의 크기 또는 VLF 수로 인해 로그 판독기 에이전트 성능이 영향을 받을 수 있습니다.

이 SQL Server 인스턴스 관리자는 VLF 수 또는 TLOG 크기가 상당히 큰 현재 상태 트랜잭션 복제를 검색했습니다. 로그 판독기 에이전트 성능은 트랜잭션 로그의 크기 또는 VLF 수에 의해 부정적인 영향을 받습니다. 트랜잭션 로그 크기 및 VLF 수를 줄여 로그 판독기 에이전트 성능을 향상시킵니다.

SQL Server 2008

년 SQL Server 2008 R2

SQL Server 2012



 

참고 자료

트랜잭션 로그의 물리적 아키텍처에 대한 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

트랜잭션 로그

의 물리적 아키텍처에 대한 일반 정보 LSN(로그 시퀀스 번호)에 대한 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

로그 시퀀스 번호

에 대한 일반 정보 데이터베이스 미러링이 시작될 때 발생하는 1413 오류에 대한 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

데이터베이스 미러링이 시작될

때 발생하는 1413 오류에 대한 일반 정보 로그 파일 구조가 데이터베이스 복구 시간에 미치는 영향에 대한 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

로그 파일 구조가 데이터베이스 복구 시간에

미치는 영향 트랜잭션 로그 VLL에 대한 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

트랜잭션 로그 파일에

대한 일반 정보 데이터베이스 스냅샷을 만드는 방법에 대한 자세한 내용은 다음 MSDN 웹 사이트를 참조하세요.

데이터베이스 스냅샷을 만드는 방법SQL Server 대한 증분 서비스 모델에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 문서를 확인합니다.

935897 SQL Server 팀에서 증분 서비스 모델을 사용하여 보고된 문제에 대한 핫픽스를 제공할 수 있습니다. SQL Server 업데이트에 대한 명명 스키마에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 문서를 확인합니다.

822499Microsoft SQL Server 소프트웨어 업데이트 패키지에 대한 새 명명 스키마 소프트웨어 업데이트 용어에 대한 자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료에서 문서를 확인합니다.

824684 Microsoft 소프트웨어 업데이트를 설명하는 데 사용되는 표준 용어에 대한 설명

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.

이 정보가 유용한가요?

언어 품질에 얼마나 만족하시나요?
사용 경험에 어떠한 영향을 주었나요?
제출을 누르면 피드백이 Microsoft 제품과 서비스를 개선하는 데 사용됩니다. IT 관리자는 이 데이터를 수집할 수 있습니다. 개인정보처리방침

의견 주셔서 감사합니다!

×