RDS 파라미터 그룹을 파일로 저장하기 (AWS CLI)

RDS 파라미터 그룹을 파일로 저장하기 (AWS CLI)

RDS 파라미터 그룹을 AWS CLI로 수집하여 CSV 파일로 저장하는 방법을 소개합니다. 콘솔에서는 다운로드할 수 없는 DB 인스턴스와 DB 클러스터 파라미터를 파일로 관리하고 싶을 때 유용한 방법을 정리해봤습니다.
2026.07.08

안녕하세요.
이번 블로그에서는 RDS 파라미터 그룹을 AWS CLI로 수집하여 CSV 파일로 저장하는 방법을 소개합니다.

배경

RDS 파라미터 그룹은 콘솔 화면에서 확인할 수는 있지만, 그 내용을 파일로 다운로드하는 기능은 제공되지 않습니다.

파라미터를 파일로 따로 보관하거나 스프레드시트에서 관리하고 싶은 경우가 있어, AWS CLI로 파라미터를 수집한 뒤 CSV로 저장하는 방법을 정리해봤습니다.

이번 글에서는 aurora-mysql8.4 를 예시로 사용했습니다.

1. 파라미터 그룹의 종류

콘솔 화면에서 파라미터 그룹을 확인해보면 파라미터 목록이 표 형태로 표시됩니다.
또한 Aurora의 파라미터 그룹은 DB 인스턴스에 대한 파라미터 그룹DB 클러스터에 대한 파라미터 그룹으로 나뉩니다.
두 그룹 모두 필수로 설정하고 관리해야 합니다.

콘솔 화면

DB 인스턴스 파라미터 그룹
pa01

DB 클러스터 파라미터 그룹
pa02

두 파라미터 그룹의 차이는 다음과 같습니다.

구분 DB 클러스터 파라미터 그룹 DB 인스턴스 파라미터 그룹
적용 범위 클러스터 전체에 공통 적용 개별 인스턴스에 적용
주요 설정 예 문자셋, 바이너리 로그 등 클러스터 공통 설정 인스턴스 단위의 메모리·연결 관련 설정
CLI 조회 명령 describe-db-cluster-parameters describe-db-parameters

2. AWS CLI로 파라미터 파일로 저장하기

콘솔에서는 다운로드할 수 없으므로 AWS CLI로 파라미터를 수집합니다.

2.1. 명령어

기본 명령 형태는 다음과 같습니다. 꺾쇠(< >)로 표시한 부분을 파일화하려는 파라미터 그룹 유형에 맞게 채워 넣습니다.

파라미터 그룹을 CSV로 저장 (템플릿)
aws rds <조회 명령> \
  --<파라미터 그룹명> <파라미터 그룹> \
  --query 'Parameters[*].[ParameterName,ParameterValue,ApplyType,DataType,IsModifiable,Source,Description]' \
  --output json \
  --profile lim-div | python3 -c "
import json, csv, sys
data = json.load(sys.stdin)
with open('<다운로드 파일명>.csv', 'w', newline='') as f:
    w = csv.writer(f)
    w.writerow(['ParameterName','ParameterValue','ApplyType','DataType','IsModifiable','Source','Description'])
    for row in data:
        w.writerow(['-' if v is None else v for v in row])
"

채워 넣어야 하는 값은 다음과 같습니다.

  • <파라미터 그룹명> : 파일로 저장하려는 파라미터 그룹의 이름
  • <다운로드 파일명> : 저장하고 싶은 파일명
  • <조회 명령어><파라미터 그룹명 옵션> : 파일로 저장할 파라미터 그룹 유형에 따라 달라집니다.
유형 조회 명령어 파라미터 그룹명 옵션
DB 인스턴스 describe-db-parameters --db-parameter-group-name
DB 클러스터 describe-db-cluster-parameters --db-cluster-parameter-group-name
인스턴스 파라미터 그룹을 CSV 파일로 저장 (예시)
인스턴스 파라미터 그룹을 CSV로 저장
aws rds describe-db-parameters \
  --db-parameter-group-name mysql84-db-parameter-group \
  --query 'Parameters[*].[ParameterName,ParameterValue,ApplyType,DataType,IsModifiable,Source,Description]' \
  --output json | python3 -c "
import json, csv, sys
data = json.load(sys.stdin)
with open('rds-aurora-mysql-db-parameter-groups.csv', 'w', newline='') as f:
    w = csv.writer(f)
    w.writerow(['ParameterName','ParameterValue','ApplyType','DataType','IsModifiable','Source','Description'])
    for row in data:
        w.writerow(['-' if v is None else v for v in row])
"

결과
pa03

클러스터 파라미터 그룹을 CSV 파일로 저장 (예시)
클러스터 파라미터 그룹을 CSV로 저장
aws rds describe-db-cluster-parameters \
  --db-cluster-parameter-group-name mysql84-cluster-parameter-group \
  --query 'Parameters[*].[ParameterName,ParameterValue,ApplyType,DataType,IsModifiable,Source,Description]' \
  --output json | python3 -c "
import json, csv, sys
data = json.load(sys.stdin)
with open('rds-aurora-mysql-cluster-parameter-groups.csv', 'w', newline='') as f:
    w = csv.writer(f)
    w.writerow(['ParameterName','ParameterValue','ApplyType','DataType','IsModifiable','Source','Description'])
    for row in data:
        w.writerow(['-' if v is None else v for v in row])
"

결과
pa04

2.2. 수집 항목 설명

위 명령의 --query 로 수집하는 항목은 다음과 같습니다.

항목 설명
ParameterName 파라미터 이름
ParameterValue 현재 설정된 값
ApplyType dynamic변경하면 즉시 반영 (재부팅 불필요)
static변경해도 바로 안 되고 DB 인스턴스를 재부팅해야 적용됨
DataType 값의 데이터 타입
IsModifiable 변경 가능 여부
Source engine-defaultDB 엔진의 기본값 그대로 (아무도 안 바꿈)
systemRDS(시스템)가 자동으로 설정한 값
user사용자가 직접 변경한 값
Description 파라미터에 대한 설명

마치며

이번 블로그에서는 RDS 파라미터 그룹을 AWS CLI로 수집하여 CSV 파일로 저장하는 방법을 알아봤습니다.

5%off
library

この記事をシェアする

AWSのお困り事はクラスメソッドへ