기술 자료 ID |
: |
272318 |
마지막 검토 |
: |
2003년 11월 11일 화요일 |
수정 |
: |
3.0 |
이 문서는 이전에 다음 ID로 출판되었음: KR272318
요약
SQL Server 2000에서는 이제 로그를 축소하는 작업이 지연되지 않고 즉시 수행됩니다. 그러나, 일부 상황에서는 먼저 추가 작업을 수행해야 로그 파일을 원하는 크기로 축소할 수 있습니다.
추가 정보
DBCC SHRINKFILE을 실행할 때 SQL Server는 먼저 가상 로그 파일을 제거하여 로그 파일을 축소합니다. 대상 파일 크기로 축소되지 않았으면 SQL Server는 가상 로그가 채워질 때까지 마지막 가상 로그 파일에 더미(Dummy) 로그 항목을 넣고 로그의 윗 부분을 파일의 시작 위치로 옮깁니다. 그런 다음 트랜잭션 로그를 축소하는 작업을 완료하기 위해 아래와 같은 작업이 필요합니다.
• |
로그의 활성 부분을 비우기 위해 BACKUP LOG 문을 실행합니다. |
• |
로그 파일이 대상 크기로 줄어들 때까지 원하는 대상 크기를 사용하여 DBCC SHRINKFILE을 다시 실행합니다. |
아래 예제에서는 pubs 데이터베이스를 사용할 때 이 방법을 사용하여 pubs_log 파일을 2MB로 축소하는 단계를 보여줍니다.
1. |
DBCC SHRINKFILE(pubs_log, 2)을 실행합니다. |
2. |
대상 크기로 축소되지 않고 아래와 같은 메시지가 반환됩니다.
모든 논리 로그 파일이 사용 중이므로 로그 파일 2(Pubs_log)을(를) 축소할 수 없습니다.
DbId FileId CurrentSize MinimumSize UsedPages EstimatedPages
----- ------- ------------ ----------- ------------- ------------------
6 2 3048 128 3048 128 <- 여기 있는 모든 값은 변할 수 있습니다.
(1개 행 적용됨)
DBCC 실행이 완료되었습니다. DBCC에서 오류 메시지를 출력하면 시스템 관리자에게 문의하십시오.
|
3. |
BACKUP LOG pubs WITH TRUNCATE_ONLY를 실행합니다. |
4. |
DBCC SHRINKFILE(pubs_log,2)을 실행합니다. |
5. |
이제 트랜잭션 로그가 대상 크기로 줄어듭니다. |
자세한 내용은 SQL Server 2000 Books Online에서 "Shrinking the Transaction Log" 항목과 "DBCC SHRINKFILE" 항목을 참조하십시오.
SQL Server 7.0에서 트랜잭션 로그를 축소하는 방법에 대해서는 Microsoft 기술 자료의 다음 문서를 참조하십시오.