DB(데이터베이스)/MSSQL(SQL Server)
MSSQL 로그 파일(LDF) 용량을 축소하는 DBCC SHRINKFILE
은하베리
2024. 12. 13. 17:13
728x90
반응형
서론
디스크 용량이 LDF 파일로 인해 꽉 차는 경우가 있다.
이런 경우에는 Shrink 쿼리 작업을 통해 LDF 파일을 정리해준다.
DBCC SHRINKFILE 명령어 설명 및 쿼리 예시
- file_name: 축소할 파일의 논리적 이름
- file_id: 축소할 파일의 ID
- target_size: 축소하고자 하는 파일의 사이즈 (MB)
- EMPTYFILE: 다른 파일로 데이터를 옮긴다. (같은 파일 그룹 내 파일이어야 함)
- NOTRUNCATE: target_size 값과 관계없이 데이터 파일의 끝에서 할당된 데이터를 파일 앞의 할당되지 않은 공간으로 이동만 한다.
- TRUNCATEONLY: 파일 끝의 모든 사용 가능한 공간을 운영체제에 반납한다. (데이터 이동은 없음)
use [DB명]
go
ALTER DATABASE [DB명] SET RECOVERY SIMPLE
GO
DBCC SHRINKFILE ([LDF_Loccal파일명], [NOTRUNCATE/TRUNCATEONLY])
GO
ALTER DATABASE [DB명] SET RECOVERY FULL
GO
SHRINK 쿼리 실행
LDF 파일 용량이 눈에띄게 줄어든 것을 확인할 수 있다.
결론
MSSQL에서 LDF 파일의 용량을 줄이는 SHRINKFILE 쿼리는 복구 모델을 SIMPLE로 설정하고 DBCC SHRINKFILE 명령어를 사용하여 로그 파일의 크기를 줄이는 것이다.
또한, TRUNCATEONLY 옵션을 사용하여 로그 파일의 끝에서 사용 가능한 모든 공간을 운영체제에 반납할 수 있다. 축소 작업의 결과를 확인하고, 필요한 경우 다시 시도한다.
728x90
반응형