

# Amazon RDS for SQL Server의 msdb 트랜잭션 로그 파일 축소
<a name="Appendix.SQLServer.CommonDBATasks.ShrinkMsdbLog"></a>

`msdb` 시스템 데이터베이스의 트랜잭션 로그 파일이 필요 이상으로 커진 경우 `rds_shrink_msdb_log_file` 저장 프로시저를 사용하여 축소할 수 있습니다. 목표 크기는 로그 파일의 현재 크기보다 작아야 합니다. 프로시저를 실행할 때 DB 인스턴스에 가동 중지 시간은 발생하지 않습니다.

`rds_shrink_msdb_log_file` 프로시저에는 다음과 같은 파라미터가 있습니다.



| 파라미터 이름 | 데이터 형식 | 기본값 | 필수 | 설명 | 
| --- | --- | --- | --- | --- | 
| `@log_file_name` | SYSNAME | NULL | 필수 | 축소할 `msdb` 트랜잭션 로그 파일의 논리명입니다. | 
| `@TargetSizeMB` | int | NULL | 필수 | 파일의 새로운 크기(메가바이트)입니다. 값은 0보다 크고 로그 파일의 현재 크기보다 작아야 합니다. | 

다음 예제에서는 `msdb` 트랜잭션 로그 파일의 논리명과 현재 크기를 확인합니다.

```
USE msdb;
GO

SELECT name, size * 8 / 1024 AS size_mb FROM sys.database_files WHERE type_desc = 'LOG';
GO
```

다음 예제에서는 `msdb` 트랜잭션 로그 파일을 30MB로 줄입니다. 예제에서 `@log_file_name` 값 {{MSDBLog}}를 로그 파일의 논리명으로 바꾸고 `@TargetSizeMB` 값 {{30}}을 MB 단위의 목표 크기로 바꿉니다.

```
EXEC msdb.dbo.rds_shrink_msdb_log_file @log_file_name = N'{{MSDBLog}}', @TargetSizeMB = {{30}};
```

이 프로시저는 축소 작업 전후의 논리적 파일 이름과 파일 크기가 포함된 결과 집합을 메가바이트 단위로 반환합니다.