DBCC SHRINKFILE을 사용하여 트랜잭션 로그를 축소하는 방법 입니다.
SQL Server 2000에서는 로그를 축소하는 작업이 지연되지 않고 즉시 수행됩니다. 그러나, 일부 상황에서는 먼저 추가 작업을 수행해야 로그 파일을 원하는 크기로 축소할 수 있습니다.
* 로그의 활성 부분을 비우기 위해 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"
SQL Server 2000에서는 로그를 축소하는 작업이 지연되지 않고 즉시 수행됩니다. 그러나, 일부 상황에서는 먼저 추가 작업을 수행해야 로그 파일을 원하는 크기로 축소할 수 있습니다.
* 로그의 활성 부분을 비우기 위해 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"