반응형
RDS의 Parameter Groups에 어떤 Parameter들이 정의되어 있는지 CSV 파일로 추출해주는 스크립트입니다.
- 기대 효과
1. CSV로 저장하여 확인하고 싶을 경우
2. RDS 버전을 MySQL 5.6 -> 5.7 등으로 업그레이드 하고자 할 때 Excel로 비교하고 싶을 경우
import boto3
import csv
p_name = "default"
r_name = "ap-northeast-2"
param_group_name = "psql-param-group"
session = boto3.session.Session(profile_name=p_name)
client = session.client(service_name='rds', region_name=r_name)
paginator = client.get_paginator('describe_db_parameters')
response_iterator = paginator.paginate(
DBParameterGroupName=param_group_name
)
fields = ["ParameterName", "ParameterValue", "ApplyType",
"DataType", "IsModifiable", "ApplyMethod"]
with open(f"{p_name}-{param_group_name}-result.csv", 'w', newline='', encoding='utf-8') as f:
writer = csv.writer(f)
writer.writerow(fields)
for page in response_iterator:
response = page.get('Parameters')
for res in response:
value = []
value.append(res.get('ParameterName'))
param_value = res.get('ParameterValue', "-")
value.append(param_value)
value.append(res.get('ApplyType'))
value.append(res.get('DataType'))
value.append(res.get('IsModifiable'))
value.append(res.get('ApplyMethod'))
writer.writerow(value)
psql-param-group 이란 파라미터 그룹이 있다고 가정
스크립트 실행
Excel로 출력되는 모습을 확인할 수 있다.
반응형
'Programming > Python' 카테고리의 다른 글
[Python] 웹크롤링으로 AWS Personal health dashboard 이벤트 긁어오기 자동화 (0) | 2022.02.16 |
---|---|
[Python] sort() 함수 알아보기 (0) | 2021.10.30 |
[Python] Boto3로 Security Group rule 추가 (csv 파일 이용) (3) | 2021.08.14 |
[Python] 객체지향에서 필수 개념인 Property, Getter, Setter 간단히 알아보기 (0) | 2021.07.10 |
[Python] Decorator 개념 간단히 알아보기 (0) | 2021.07.10 |