MSSQL-Log 자동축소
참조 사이트
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=wiseyess&logNo=150161762236
자동축소 설정 방법
1. 서버의 메모리 최대로 설정
--> Server 선택후 우클릭 > 속성 > 왼쪽의 메모리 선택 > 오른쪽의 최대 서버 메모리 설정
ex) DB 서버용 일경우 절반설정
16GB 면 > 8G 정도인 8192MB로 설정
2. Database 백업
log backup 실행
--> Database 선택 > 우클릭 > 테스크 > 백업 > 왼쪽의 일반 선택 > 오른쪽의 원본의 백업유형 > 트랜잭션 로그 선택 > 대상 의 백업할 위치 선택 후 백업실행
3. 데이터 파일 축소
1) DB와 로그 사이즈 확인
select * from sys.master_files where name like '%db_swerp%'
2) 로그 백업 및 잘라내기(잘라내기를 더 권장함)
- backup log 'database_name' to 'device_name(장치명)' -- 로그백업
- backup log 'database_name' with truncate_only -- 로그 잘라내기
3) 로그 축소하기(truncateonly 를 더 권장함)
USE [db_swerp]
GO
-- Truncate the log by changing the database recovery model to SIMPLE.
-- ==> 데이터베이스 복구 모델을 SIMPLE로 변경하여 로그를 자릅니다.
ALTER DATABASE [db_swerp]
SET RECOVERY SIMPLE
GO
-- Shrink the truncated log file to 10 MB. <- 로그파일을 10MB로 축소
-- ==> 잘린 로그 파일을 10MB로 축소합니다. <- 로그 파일을 10MB로 종료
DBCC SHRINKFILE ([DB_SWERP_log], 400)
GO
-- Reset the database recovery model.
-- ==> 데이터베이스 복구 모델을 재설정합니다.
ALTER DATABASE [db_swerp]
SET RECOVERY FULL
GO
-- 4) 로그 크기 고정(자동 증가 없앰) -- 참고사항이고 여기서는 실행하지 않는다.
database 선택 > 우클릭 > 속성 > 파일 > 로그파일 선택 > 자동증가/최대크기 선택 > 최대파일 크기 - 제한 선택
4. Database 선택후 > 우클릭 > 속성 > 왼쪽의 옵션 선택 > 자동에서 '자동 축소' --> True, 커서에서 '커밋 시 커서 닫기 설정' --> True
5. Database 선택후 > 우클릭 > 속성 > 왼쪽의 파일 선택 > 자동증가에서 자동증가 최대파일크기를 제한한다