Amazon RDS 추천 참조
Amazon RDS 추천 참조
Amazon RDS는 리소스가 생성되거나 수정될 때 리소스에 대한 추천을 생성합니다. 다음 표에서 Amazon RDS 추천의 예시를 확인할 수 있습니다.
| 유형 | 설명 | 추천 | 다운타임 필요 | 추가 정보 |
|---|---|---|---|---|
| 마그네틱 볼륨 사용 중(Magnetic volume is in use) | DB 인스턴스가 마그네틱 스토리지를 사용 중입니다. 대부분의 DB 인스턴스에는 마그네틱 스토리지가 권장되지 않습니다. General Purpose(SSD) 또는 Provisioned IOPS와 같은 다른 스토리지 유형을 선택하세요. | 다른 스토리지 유형을 선택하세요: General Purpose(SSD) 또는 Provisioned IOPS. | 예 | Amazon EC2 문서의 이전 세대 볼륨 |
| 리소스 자동 백업이 꺼져 있음(Resource Automated backups is turned off) | DB 인스턴스에서 자동 백업이 켜져 있지 않습니다. 자동 백업은 DB 인스턴스의 지정 시점 복구를 가능하게 하므로 권장됩니다. | 최대 14일의 보존 기간으로 자동 백업을 켜세요. | 예 | 자동 백업 활성화; AWS Database Blog의 Amazon RDS 백업 스토리지 비용 이해 |
| 엔진 마이너 버전 업그레이드 필요(Engine minor version upgrade is required) | 데이터베이스 리소스가 최신 마이너 DB 엔진 버전을 실행하고 있지 않습니다. 최신 마이너 버전에는 최신 보안 수정 및 기타 개선 사항이 포함되어 있습니다. | 최신 엔진 버전으로 업그레이드하세요. | 예 | DB 인스턴스 엔진 버전 업그레이드 |
| Enhanced Monitoring이 꺼져 있음(Enhanced Monitoring is turned off) | 데이터베이스 리소스에 Enhanced Monitoring이 켜져 있지 않습니다. Enhanced Monitoring은 모니터링 및 문제 해결을 위한 실시간 운영 체제 지표를 제공합니다. | Enhanced Monitoring을 켜세요. | 아니요 | Enhanced Monitoring으로 OS 지표 모니터링 |
| 스토리지 암호화가 꺼져 있음(Storage encryption is turned off) | Amazon RDS는 AWS Key Management Service(AWS KMS)에서 관리하는 키를 사용하여 모든 데이터베이스 엔진의 저장 시(at rest) 암호화를 지원합니다. Amazon RDS 암호화가 적용된 활성 DB 인스턴스에서는 자동 백업, 읽기 복제본, 스냅샷과 마찬가지로 스토리지에 저장된 데이터가 암호화됩니다. DB 인스턴스 생성 시 암호화를 켜지 않았다면 암호화를 켜기 전에 DB 인스턴스의 복호화된 스냅샷의 암호화된 복사본을 만들어 복원해야 합니다. | DB 인스턴스의 저장 시 데이터 암호화를 켜세요. | 예 | Amazon RDS의 보안; Amazon RDS의 DB 스냅샷 복사 |
| Performance Insights가 꺼져 있음(Performance Insights is turned off) | Performance Insights는 DB 인스턴스 부하를 모니터링하여 데이터베이스 성능 문제를 분석하고 해결하는 데 도움을 줍니다. Performance Insights를 켤 것을 권장합니다. | Performance Insights를 켜세요. | 아니요 | Amazon RDS의 Amazon CloudWatch Database Insights로 DB 부하 모니터링 |
| DB 인스턴스에 스토리지 자동 조정이 꺼져 있음(DB instances have storage autoscaling turned off) | DB 인스턴스에서 스토리지 자동 조정이 켜져 있지 않습니다. 데이터베이스 워크로드가 증가하면 RDS 스토리지 자동 조정이 다운타임 없이 스토리지 용량을 자동으로 확장합니다. | 지정된 최대 스토리지 임계값으로 Amazon RDS 스토리지 자동 조정을 켜세요. | 아니요 | Amazon RDS 스토리지 자동 조정으로 용량 자동 관리 |
| RDS 리소스 주 버전 업데이트 필요(RDS resources major versions update is required) | 현재 DB 엔진의 주 버전을 사용하는 데이터베이스는 지원되지 않습니다. 새 기능과 개선 사항이 포함된 최신 주 버전으로 업그레이드할 것을 권장합니다. | DB 엔진의 최신 주 버전으로 업그레이드하세요. | 예 | DB 인스턴스 엔진 버전 업그레이드; 데이터베이스 업데이트를 위한 Amazon RDS Blue/Green Deployments 사용 |
| RDS 리소스 인스턴스 클래스 업데이트 필요(RDS resources instance class update is required) | DB 인스턴스가 이전 세대의 DB 인스턴스 클래스를 실행 중입니다. 이전 세대의 DB 인스턴스 클래스를 비용, 성능 또는 둘 다 더 나은 DB 인스턴스 클래스로 교체했습니다. 더 새로운 세대의 DB 인스턴스 클래스로 DB 인스턴스를 실행할 것을 권장합니다. | DB 인스턴스 클래스를 업그레이드하세요. | 예 | DB 인스턴스 클래스의 지원되는 DB 엔진 |
| 라이선스 포함(license-included) 아래의 지원 종료 엔진 에디션을 사용하는 RDS 리소스 | 현재 라이선스 지원을 계속하려면 Amazon RDS가 지원하는 최신 엔진 버전으로 주 버전을 업그레이드할 것을 권장합니다. 현재 라이선스로는 데이터베이스의 엔진 버전이 지원되지 않습니다. | 라이선스 모델을 계속 사용하려면 Amazon RDS에서 지원하는 최신 버전으로 데이터베이스를 업그레이드할 것을 권장합니다. | 예 | Oracle 주 버전 업그레이드 |
| Multi-AZ 배포를 사용하지 않는 DB 인스턴스(DB instances not using Multi-AZ deployment) | Multi-AZ 배포를 사용할 것을 권장합니다. Multi-AZ 배포는 DB 인스턴스의 가용성과 내구성을 향상시킵니다. | 영향을 받는 DB 인스턴스에 Multi-AZ를 설정하세요. | 아니요 | 이 변경 중에는 다운타임이 발생하지 않습니다. 단, 성능 영향이 있을 수 있습니다. 자세한 내용은 Amazon RDS의 DB 인스턴스를 Multi-AZ 배포로 변환을 참조하세요. Amazon RDS Multi-AZ 요금 |
| DB 메모리 파라미터가 기본값과 다름(DB memory parameters are diverging from default) | DB 인스턴스의 메모리 파라미터가 기본값과 크게 다릅니다. 이러한 설정은 성능에 영향을 주고 오류를 유발할 수 있습니다. DB 인스턴스의 사용자 지정 메모리 파라미터를 DB 파라미터 그룹의 기본값으로 재설정할 것을 권장합니다. | 메모리 파라미터를 기본값으로 재설정하세요. | 아니요 | AWS Database Blog의 Amazon RDS for MySQL 성능 파라미터 구성 모범 사례 |
| InnoDB_Change_Buffering 파라미터가 최적 값 미만 사용(InnoDB_Change_Buffering parameter using less than optimum value) | 변경 버퍼링을 사용하면 MySQL DB 인스턴스가 보조 인덱스 유지에 필요한 몇 가지 쓰기를 연기할 수 있습니다. 이 기능은 느린 디스크 환경에서 유용했습니다. 변경 버퍼링 구성은 DB 성능을 약간 개선했지만 크래시 복구 지연과 업그레이드 중 긴 종료 시간을 유발했습니다. MySQL 8.4 버전에서는 기본적으로 OFF로 설정됩니다. | DB 파라미터 그룹에서 InnoDB_Change_Buffering 파라미터 값을 NONE으로 설정하세요. |
아니요 | AWS Database Blog의 Amazon RDS for MySQL 성능 파라미터 구성 모범 사례 |
| 쿼리 캐시 파라미터가 켜져 있음(Query cache parameter is turned on) | 변경으로 쿼리 캐시가 제거되어야 하는 경우 DB 인스턴스가 멈춘 것처럼 보일 수 있습니다. 대부분의 워크로드는 쿼리 캐시의 이점을 얻지 못합니다. 쿼리 캐시는 MySQL 8.0 이상 버전에서 제거되었습니다. query_cache_type 파라미터를 0으로 설정할 것을 권장합니다. |
DB 파라미터 그룹에서 query_cache_type 파라미터 값을 0으로 설정하세요. |
예 | AWS Database Blog의 Amazon RDS for MySQL 성능 파라미터 구성 모범 사례 |
| log_output 파라미터가 table로 설정됨(log_output parameter is set to table) | log_output이 TABLE로 설정되면 FILE로 설정된 경우보다 더 많은 스토리지가 사용됩니다. 스토리지 크기 제한에 도달하지 않도록 파라미터를 FILE로 설정할 것을 권장합니다. MySQL 8.4 이상 버전에서는 기본적으로 FILE로 설정됩니다. |
DB 파라미터 그룹에서 log_output 파라미터 값을 FILE로 설정하세요. |
아니요 | MySQL 데이터베이스 로그 파일 |
| 파라미터 그룹이 huge pages를 사용하지 않음(Parameter groups not using huge pages) | 큰 페이지(large pages)는 데이터베이스 확장성을 높일 수 있지만 DB 인스턴스가 큰 페이지를 사용하지 않고 있습니다. DB 인스턴스의 DB 파라미터 그룹에서 use_large_pages 파라미터 값을 ONLY로 설정할 것을 권장합니다. |
DB 파라미터 그룹에서 use_large_pages 파라미터 값을 ONLY로 설정하세요. |
예 | RDS for Oracle 인스턴스에서 HugePages 켜기 |
| autovacuum 파라미터가 꺼져 있음(autovacuum parameter is turned off) | DB 인스턴스에서 autovacuum 파라미터가 꺼져 있습니다. autovacuum을 끄면 테이블과 인덱스의 블로트(bloat)가 증가하고 성능에 영향을 줍니다. DB 파라미터 그룹에서 autovacuum을 켤 것을 권장합니다. | DB 파라미터 그룹에서 autovacuum 파라미터를 켜세요. | 아니요 | AWS Database Blog의 Amazon RDS for PostgreSQL 환경에서 autovacuum 이해 |
| synchronous_commit 파라미터가 꺼져 있음(synchronous_commit parameter is turned off) | synchronous_commit 파라미터가 꺼져 있으면 데이터베이스 크래시 시 데이터가 손실될 수 있습니다. 데이터베이스의 내구성이 위험해집니다. synchronous_commit 파라미터를 켤 것을 권장합니다. |
DB 파라미터 그룹에서 synchronous_commit 파라미터를 켜세요. |
예 | AWS Database Blog의 Amazon Aurora PostgreSQL 파라미터: 복제, 보안, 로깅 |
| track_counts 파라미터가 꺼져 있음(track_counts parameter is turned off) | track_counts 파라미터가 꺼져 있으면 데이터베이스가 데이터베이스 활동 통계를 수집하지 않습니다. Autovacuum은 올바르게 작동하기 위해 이러한 통계가 필요합니다. track_counts 파라미터를 1로 설정할 것을 권장합니다. |
track_counts 파라미터를 1로 설정하세요. |
아니요 | PostgreSQL의 런타임 통계 |
| enable_indexonlyscan 파라미터가 꺼져 있음(enable_indexonlyscan parameter is turned off) | 꺼져 있으면 쿼리 플래너 혹은 옵티마이저가 인덱스 전용 스캔 계획 유형을 사용할 수 없습니다. enable_indexonlyscan 파라미터 값을 1로 설정할 것을 권장합니다. |
enable_indexonlyscan 파라미터 값을 1로 설정하세요. |
아니요 | PostgreSQL의 플래너 메서드 구성 |
| enable_indexscan 파라미터가 꺼져 있음(enable_indexscan parameter is turned off) | 꺼져 있으면 쿼리 플래너 혹은 옵티마이저가 인덱스 스캔 계획 유형을 사용할 수 없습니다. enable_indexscan 값을 1로 설정할 것을 권장합니다. |
enable_indexscan 파라미터 값을 1로 설정하세요. |
아니요 | PostgreSQL의 플래너 메서드 구성 |
| innodb_flush_log_at_trx 파라미터가 꺼져 있음(innodb_flush_log_at_trx parameter is turned off) | DB 인스턴스의 innodb_flush_log_at_trx 파라미터 값이 안전한 값이 아닙니다. 이 파라미터는 커밋 작업의 디스크 유지(persistence)를 제어합니다. innodb_flush_log_at_trx 파라미터를 1로 설정할 것을 권장합니다. |
innodb_flush_log_at_trx 파라미터 값을 1로 설정하세요. |
아니요 | AWS Database Blog의 Amazon RDS for MySQL 성능 파라미터 구성 모범 사례 |
| sync_binlog 파라미터가 꺼져 있음(sync_binlog parameter is turned off) | DB 인스턴스에서 트랜잭션 커밋이 승인되기 전에 바이너리 로그의 디스크 동기화가 강제되지 않습니다. sync_binlog 파라미터 값을 1로 설정할 것을 권장합니다. |
sync_binlog 파라미터 값을 1로 설정하세요. |
아니요 | AWS Database Blog의 Amazon RDS for MySQL 복제 파라미터 구성 모범 사례 |
| innodb_stats_persistent 파라미터가 꺼져 있음(innodb_stats_persistent parameter is turned off) | DB 인스턴스가 InnoDB 통계를 디스크에 유지하도록 구성되지 않았습니다. 통계가 저장되지 않으면 인스턴스가 다시 시작되고 테이블에 액세스할 때마다 통계가 다시 계산됩니다. 이로 인해 쿼리 실행 계획에 변동이 생깁니다. 이 전역 파라미터의 값을 테이블 수준에서 수정할 수 있습니다. innodb_stats_persistent 파라미터 값을 ON으로 설정할 것을 권장합니다. |
innodb_stats_persistent 파라미터 값을 ON으로 설정하세요. |
아니요 | AWS Database Blog의 Amazon RDS for MySQL 성능 파라미터 구성 모범 사례 |
| innodb_open_files 파라미터가 낮음(innodb_open_files parameter is low) | innodb_open_files 파라미터는 InnoDB가 한 번에 열 수 있는 파일 수를 제어합니다. mysqld가 실행 중일 때 InnoDB는 모든 로그 및 시스템 테이블스페이스 파일을 엽니다. DB 인스턴스의 InnoDB가 한 번에 열 수 있는 최대 파일 수 값이 낮습니다. innodb_open_files 파라미터를 최소 65로 설정할 것을 권장합니다. |
innodb_open_files 파라미터를 최소값 65로 설정하세요. |
예 | MySQL의 InnoDB 열린 파일 |
| max_user_connections 파라미터가 낮음(max_user_connections parameter is low) | DB 인스턴스의 각 데이터베이스 계정에 대한 동시 연결 최대 수 값이 낮습니다. max_user_connections 파라미터를 5보다 큰 숫자로 설정할 것을 권장합니다. |
max_user_connections 파라미터 값을 5보다 큰 숫자로 늘리세요. |
예 | MySQL의 계정 리소스 한도 설정 |
| 읽기 복제본이 쓰기 가능 모드로 열려 있음(Read Replicas are open in writable mode) | DB 인스턴스에 쓰기 가능 모드의 읽기 복제본이 있어 클라이언트의 업데이트를 허용합니다. 읽기 복제본이 쓰기 가능 모드가 아니도록 read_only 파라미터를 TrueIfReplica로 설정할 것을 권장합니다. |
read_only 파라미터 값을 TrueIfReplica로 설정하세요. |
아니요 | AWS Database Blog의 Amazon RDS for MySQL 복제 파라미터 구성 모범 사례 |
| innodb_default_row_format 파라미터 설정이 안전하지 않음(innodb_default_row_format parameter setting is unsafe) | DB 인스턴스에 알려진 문제가 발생합니다: 8.0.26 미만의 MySQL 버전에서 row_format이 COMPACT 또는 REDUNDANT로 설정되어 생성된 테이블은 인덱스가 767바이트를 초과하면 액세스할 수 없고 복구할 수 없게 됩니다. innodb_default_row_format 파라미터 값을 DYNAMIC으로 설정할 것을 권장합니다. |
innodb_default_row_format 파라미터 값을 DYNAMIC으로 설정하세요. |
아니요 | MySQL 8.0.26의 변경 사항 |
| general_logging 파라미터가 켜져 있음(general_logging parameter is turned on) | DB 인스턴스에서 일반 로깅이 켜져 있습니다. 이 설정은 데이터베이스 문제 해결 시 유용합니다. 그러나 일반 로깅을 켜면 I/O 작업과 할당된 스토리지 공간이 증가하여 경합과 성능 저하가 발생할 수 있습니다. 일반 로깅 사용 요구 사항을 확인하세요. general_logging 파라미터 값을 0으로 설정할 것을 권장합니다. |
일반 로깅 사용 요구 사항을 확인하세요. 필수가 아니라면 general_logging 파라미터 값을 0으로 설정할 것을 권장합니다. |
아니요 | RDS for MySQL 데이터베이스 로그 개요 |
| RDS 인스턴스가 시스템 메모리 용량에 비해 과소 프로비저닝됨(RDS instance under-provisioned for system memory capacity) | 더 적은 메모리를 사용하도록 쿼리를 튜닝하거나 할당 메모리가 더 높은 DB 인스턴스 유형을 사용할 것을 권장합니다. 인스턴스 메모리가 부족하면 데이터베이스 성능에 영향을 줍니다. | 더 높은 메모리 용량의 DB 인스턴스를 사용하세요. | 예 | AWS Database Blog의 Amazon RDS 인스턴스 수직·수평 확장; Amazon RDS 인스턴스 유형; Amazon RDS 요금 |
| RDS 인스턴스가 시스템 CPU 용량에 비해 과소 프로비저닝됨(RDS instance under-provisioned for system CPU capacity) | 더 적은 CPU를 사용하도록 쿼리를 튜닝하거나 할당된 vCPU가 더 높은 DB 인스턴스 클래스를 사용하도록 DB 인스턴스를 수정할 것을 권장합니다. DB 인스턴스의 CPU가 부족하면 데이터베이스 성능이 저하될 수 있습니다. | 더 높은 CPU 용량의 DB 인스턴스를 사용하세요. | 예 | AWS Database Blog의 Amazon RDS 인스턴스 수직·수평 확장; Amazon RDS 인스턴스 유형; Amazon RDS 요금 |
| RDS 리소스가 연결 풀링을 올바르게 활용하지 않음(RDS resources are not utilizing connection pooling correctly) | 기존 데이터베이스 연결을 효율적으로 풀링하고 공유하려면 Amazon RDS Proxy를 활성화할 것을 권장합니다. 이미 데이터베이스에 프록시를 사용하는 경우 여러 DB 인스턴스에서 연결 풀링과 부하 분산을 개선하도록 올바르게 구성하세요. RDS Proxy는 가용성과 확장성을 개선하면서 연결 고갈과 다운타임 위험을 줄이는 데 도움이 될 수 있습니다. | RDS Proxy를 활성화하거나 기존 프록시 구성을 수정하세요. | 아니요 | AWS Database Blog의 Amazon RDS 인스턴스 수직·수평 확장; Amazon RDS Proxy; Amazon RDS Proxy 요금 |
| RDS 인스턴스가 과도한 임시 객체를 생성함(RDS instances are creating excessive temporary objects) | 과도한 임시 객체 생성을 방지하도록 워크로드를 튜닝하거나 최적화된 읽기(Optimized Reads)를 지원하는 RDS 인스턴스 클래스로 전환할 것을 권장합니다. RDS Optimized Reads는 많은 수의 임시 객체 및/또는 큰 임시 객체를 수반하는 워크로드에 대해 데이터베이스 성능을 개선합니다. 워크로드를 평가하여 RDS Optimized Reads를 사용하는 인스턴스가 데이터베이스 워크로드에 도움이 되는지 결정하세요. | RDS Optimized Reads를 사용하는 DB 인스턴스 유형을 사용하세요. | 예 | Amazon RDS 인스턴스 유형; Amazon RDS Optimized Reads로 RDS for MySQL 쿼리 성능 개선; Amazon RDS Optimized Reads로 RDS for MariaDB 쿼리 성능 개선; Amazon RDS Optimized Reads로 RDS for PostgreSQL 쿼리 성능 개선 |
| RDS 인스턴스가 시스템 IOPS 용량에 비해 과소 프로비저닝됨(RDS instances are under-provisioned for system IOPS capacity) | IOPS를 줄이도록 데이터베이스 워크로드를 튜닝하거나 기본 IOPS 한도가 더 높은 유형으로 DB 인스턴스를 확장할 것을 권장합니다. 현재 DB 인스턴스는 Provisioned IOPS를 지원할 수 없거나 데이터베이스 워크로드의 IOPS 사용률이 높습니다. | 기본 IOPS 한도가 더 높은 DB 인스턴스 유형을 사용하세요. | 예 | Amazon RDS 인스턴스 유형; Amazon RDS DB 인스턴스 스토리지; 데이터베이스 부하 |
| RDS 인스턴스에 과소 프로비저닝된 Amazon EBS 볼륨이 있음(RDS instances have under-provisioned Amazon EBS volumes) | IOPS를 줄이도록 데이터베이스 워크로드를 튜닝하거나 데이터베이스의 Provisioned IOPS를 늘릴 것을 권장합니다. IOPS 사용률이 Provisioned IOPS에 가까워지면 데이터베이스 성능이 저하될 수 있습니다. | DB 인스턴스에 더 많은 IOPS를 프로비저닝하세요. | 예 | Amazon RDS 인스턴스 유형; Amazon RDS DB 인스턴스 스토리지; 데이터베이스 부하 |
| RDS 인스턴스가 처리량 용량에 비해 과소 프로비저닝됨(RDS instances are under-provisioned for throughput capacity) | 처리량을 줄이도록 데이터베이스 워크로드를 튜닝하거나 데이터베이스의 프로비저닝된 처리량을 늘릴 것을 권장합니다. 처리량 사용률이 프로비저닝된 처리량에 가까워지면 데이터베이스 성능에 영향을 줄 수 있습니다. | DB 인스턴스에 더 많은 처리량을 프로비저닝하세요. | 예 | Amazon RDS 인스턴스 유형; Amazon RDS DB 인스턴스 스토리지; 데이터베이스 부하 |
| RDS 인스턴스가 EBS I/O에 비해 과소 프로비저닝됨(RDS instances are under-provisioned for EBS I/O) | I/O 작업을 줄이도록 데이터베이스 워크로드를 튜닝하거나 높은 성능, 높은 처리량, 낮은 지연 시간이 필요한 데이터베이스 워크로드를 위해 설계된 Amazon RDS io2 Block Express 볼륨을 사용하도록 DB 인스턴스를 수정할 것을 권장합니다. 현재 워크로드에서 데이터베이스가 요구되는 속도로 I/O 작업을 처리하지 못해 성능 저하가 발생할 수 있습니다. | RDS 인스턴스에 Amazon RDS io2 Block Express 볼륨을 사용하세요. | 아니요 | Amazon RDS DB 인스턴스 스토리지; Amazon RDS용 Amazon CloudWatch 지표; Amazon EBS 사용자 가이드의 Provisioned IOPS SSD 볼륨 |
출처: 문서
본문
Amazon RDS는 리소스가 생성되거나 수정될 때 리소스에 대한 추천을 생성합니다. 다음 표에서 Amazon RDS 추천의 예시를 확인할 수 있습니다.
추천 유형 표
- 마그네틱 볼륨 사용 중 – 설명: DB 인스턴스가 마그네틱 스토리지를 사용 중입니다. 대부분의 DB 인스턴스에는 마그네틱 스토리지가 권장되지 않습니다. General Purpose(SSD) 또는 Provisioned IOPS와 같은 다른 스토리지 유형을 선택하세요. 추천: 다른 스토리지 유형을 선택하세요: General Purpose(SSD) 또는 Provisioned IOPS. 다운타임: 예. 추가 정보: Amazon EC2 문서의 이전 세대 볼륨.
- 리소스 자동 백업이 꺼져 있음 – 설명: DB 인스턴스에서 자동 백업이 켜져 있지 않습니다. 자동 백업은 지정 시점 복구를 가능하게 하므로 권장됩니다. 추천: 최대 14일의 보존 기간으로 자동 백업을 켜세요. 다운타임: 예. 추가 정보: 자동 백업 활성화; AWS Database Blog의 Amazon RDS 백업 스토리지 비용 이해.
- 엔진 마이너 버전 업그레이드 필요 – 설명: 데이터베이스 리소스가 최신 마이너 DB 엔진 버전을 실행하고 있지 않습니다. 최신 마이너 버전에는 최신 보안 수정 및 기타 개선 사항이 포함되어 있습니다. 추천: 최신 엔진 버전으로 업그레이드하세요. 다운타임: 예. 추가 정보: DB 인스턴스 엔진 버전 업그레이드.
- Enhanced Monitoring이 꺼져 있음 – 설명: 데이터베이스 리소스에 Enhanced Monitoring이 켜져 있지 않습니다. Enhanced Monitoring은 모니터링 및 문제 해결을 위한 실시간 운영 체제 지표를 제공합니다. 추천: Enhanced Monitoring을 켜세요. 다운타임: 아니요. 추가 정보: Enhanced Monitoring으로 OS 지표 모니터링.
- 스토리지 암호화가 꺼져 있음 – 설명: Amazon RDS는 AWS KMS에서 관리하는 키를 사용하여 모든 데이터베이스 엔진의 저장 시 암호화를 지원합니다. Amazon RDS 암호화가 적용된 활성 DB 인스턴스에서는 자동 백업, 읽기 복제본, 스냅샷과 마찬가지로 스토리지에 저장된 데이터가 암호화됩니다. DB 인스턴스 생성 시 암호화를 켜지 않았다면 암호화를 켜기 전에 DB 인스턴스의 복호화된 스냅샷의 암호화된 복사본을 만들어 복원해야 합니다. 추천: DB 인스턴스의 저장 시 데이터 암호화를 켜세요. 다운타임: 예. 추가 정보: Amazon RDS의 보안; Amazon RDS의 DB 스냅샷 복사.
- Performance Insights가 꺼져 있음 – 설명: Performance Insights는 DB 인스턴스 부하를 모니터링하여 데이터베이스 성능 문제를 분석하고 해결하는 데 도움을 줍니다. Performance Insights를 켤 것을 권장합니다. 추천: Performance Insights를 켜세요. 다운타임: 아니요. 추가 정보: Amazon RDS의 Amazon CloudWatch Database Insights로 DB 부하 모니터링.
- DB 인스턴스에 스토리지 자동 조정이 꺼져 있음 – 설명: DB 인스턴스에서 스토리지 자동 조정이 켜져 있지 않습니다. 데이터베이스 워크로드가 증가하면 RDS 스토리지 자동 조정이 다운타임 없이 스토리지 용량을 자동으로 확장합니다. 추천: 지정된 최대 스토리지 임계값으로 Amazon RDS 스토리지 자동 조정을 켜세요. 다운타임: 아니요. 추가 정보: Amazon RDS 스토리지 자동 조정으로 용량 자동 관리.
- RDS 리소스 주 버전 업데이트 필요 – 설명: 현재 DB 엔진의 주 버전을 사용하는 데이터베이스는 지원되지 않습니다. 새 기능과 개선 사항이 포함된 최신 주 버전으로 업그레이드할 것을 권장합니다. 추천: DB 엔진의 최신 주 버전으로 업그레이드하세요. 다운타임: 예. 추가 정보: DB 인스턴스 엔진 버전 업그레이드; 데이터베이스 업데이트를 위한 Amazon RDS Blue/Green Deployments 사용.
- RDS 리소스 인스턴스 클래스 업데이트 필요 – 설명: DB 인스턴스가 이전 세대의 DB 인스턴스 클래스를 실행 중입니다. 이전 세대의 DB 인스턴스 클래스를 비용, 성능 또는 둘 다 더 나은 DB 인스턴스 클래스로 교체했습니다. 더 새로운 세대의 DB 인스턴스 클래스로 DB 인스턴스를 실행할 것을 권장합니다. 추천: DB 인스턴스 클래스를 업그레이드하세요. 다운타임: 예. 추가 정보: DB 인스턴스 클래스의 지원되는 DB 엔진.
- 라이선스 포함(license-included) 아래의 지원 종료 엔진 에디션을 사용하는 RDS 리소스 – 설명: 현재 라이선스 지원을 계속하려면 Amazon RDS가 지원하는 최신 엔진 버전으로 주 버전을 업그레이드할 것을 권장합니다. 현재 라이선스로는 데이터베이스의 엔진 버전이 지원되지 않습니다. 추천: 라이선스 모델을 계속 사용하려면 Amazon RDS에서 지원하는 최신 버전으로 데이터베이스를 업그레이드할 것을 권장합니다. 다운타임: 예. 추가 정보: Oracle 주 버전 업그레이드.
- Multi-AZ 배포를 사용하지 않는 DB 인스턴스 – 설명: Multi-AZ 배포를 사용할 것을 권장합니다. Multi-AZ 배포는 DB 인스턴스의 가용성과 내구성을 향상시킵니다. 추천: 영향을 받는 DB 인스턴스에 Multi-AZ를 설정하세요. 다운타임: 아니요. 추가 정보: 이 변경 중에는 다운타임이 발생하지 않습니다. 단, 성능 영향이 있을 수 있습니다. 자세한 내용은 Amazon RDS의 DB 인스턴스를 Multi-AZ 배포로 변환을 참조하세요. Amazon RDS Multi-AZ 요금.
- DB 메모리 파라미터가 기본값과 다름 – 설명: DB 인스턴스의 메모리 파라미터가 기본값과 크게 다릅니다. 이러한 설정은 성능에 영향을 주고 오류를 유발할 수 있습니다. db 인스턴스의 사용자 지정 메모리 파라미터를 DB 파라미터 그룹의 기본값으로 재설정할 것을 권장합니다. 추천: 메모리 파라미터를 기본값으로 재설정하세요. 다운타임: 아니요. 추가 정보: AWS Database Blog의 Amazon RDS for MySQL 성능 파라미터 구성 모범 사례.
- InnoDB_Change_Buffering 파라미터가 최적 값 미만 사용 – 설명: 변경 버퍼링을 사용하면 MySQL DB 인스턴스가 보조 인덱스 유지에 필요한 몇 가지 쓰기를 연기할 수 있습니다. 이 기능은 느린 디스크 환경에서 유용했습니다. 변경 버퍼링 구성은 DB 성능을 약간 개선했지만 크래시 복구 지연과 업그레이드 중 긴 종료 시간을 유발했습니다. MySQL 8.4 버전에서는 기본적으로 OFF로 설정됩니다. 추천: DB 파라미터 그룹에서
InnoDB_Change_Buffering파라미터 값을NONE으로 설정하세요. 다운타임: 아니요. 추가 정보: AWS Database Blog의 Amazon RDS for MySQL 성능 파라미터 구성 모범 사례. - 쿼리 캐시 파라미터가 켜져 있음 – 설명: 변경으로 쿼리 캐시가 제거되어야 하는 경우 DB 인스턴스가 멈춘 것처럼 보일 수 있습니다. 대부분의 워크로드는 쿼리 캐시의 이점을 얻지 못합니다. 쿼리 캐시는 MySQL 8.0 이상 버전에서 제거되었습니다.
query_cache_type파라미터를 0으로 설정할 것을 권장합니다. 추천: DB 파라미터 그룹에서query_cache_type파라미터 값을 0으로 설정하세요. 다운타임: 예. 추가 정보: AWS Database Blog의 Amazon RDS for MySQL 성능 파라미터 구성 모범 사례. - log_output 파라미터가 table로 설정됨 – 설명:
log_output이 TABLE로 설정되면 FILE로 설정된 경우보다 더 많은 스토리지가 사용됩니다. 스토리지 크기 제한에 도달하지 않도록 파라미터를 FILE로 설정할 것을 권장합니다. MySQL 8.4 이상 버전에서는 기본적으로 FILE로 설정됩니다. 추천: DB 파라미터 그룹에서log_output파라미터 값을 FILE로 설정하세요. 다운타임: 아니요. 추가 정보: MySQL 데이터베이스 로그 파일. - 파라미터 그룹이 huge pages를 사용하지 않음 – 설명: 큰 페이지는 데이터베이스 확장성을 높일 수 있지만 DB 인스턴스가 큰 페이지를 사용하지 않고 있습니다. DB 인스턴스의 DB 파라미터 그룹에서
use_large_pages파라미터 값을 ONLY로 설정할 것을 권장합니다. 추천: DB 파라미터 그룹에서use_large_pages파라미터 값을 ONLY로 설정하세요. 다운타임: 예. 추가 정보: RDS for Oracle 인스턴스에서 HugePages 켜기. - autovacuum 파라미터가 꺼져 있음 – 설명: DB 인스턴스에서 autovacuum 파라미터가 꺼져 있습니다. autovacuum을 끄면 테이블과 인덱스의 블로트가 증가하고 성능에 영향을 줍니다. DB 파라미터 그룹에서 autovacuum을 켤 것을 권장합니다. 추천: DB 파라미터 그룹에서 autovacuum 파라미터를 켜세요. 다운타임: 아니요. 추가 정보: AWS Database Blog의 Amazon RDS for PostgreSQL 환경에서 autovacuum 이해.
- synchronous_commit 파라미터가 꺼져 있음 – 설명:
synchronous_commit파라미터가 꺼져 있으면 데이터베이스 크래시 시 데이터가 손실될 수 있습니다. 데이터베이스의 내구성이 위험해집니다.synchronous_commit파라미터를 켤 것을 권장합니다. 추천: DB 파라미터 그룹에서synchronous_commit파라미터를 켜세요. 다운타임: 예. 추가 정보: AWS Database Blog의 Amazon Aurora PostgreSQL 파라미터: 복제, 보안, 로깅. - track_counts 파라미터가 꺼져 있음 – 설명:
track_counts파라미터가 꺼져 있으면 데이터베이스가 데이터베이스 활동 통계를 수집하지 않습니다. Autovacuum은 올바르게 작동하기 위해 이러한 통계가 필요합니다.track_counts파라미터를 1로 설정할 것을 권장합니다. 추천:track_counts파라미터를 1로 설정하세요. 다운타임: 아니요. 추가 정보: PostgreSQL의 런타임 통계. - enable_indexonlyscan 파라미터가 꺼져 있음 – 설명: 꺼져 있으면 쿼리 플래너 혹은 옵티마이저가 인덱스 전용 스캔 계획 유형을 사용할 수 없습니다.
enable_indexonlyscan파라미터 값을 1로 설정할 것을 권장합니다. 추천:enable_indexonlyscan파라미터 값을 1로 설정하세요. 다운타임: 아니요. 추가 정보: PostgreSQL의 플래너 메서드 구성. - enable_indexscan 파라미터가 꺼져 있음 – 설명: 꺼져 있으면 쿼리 플래너 혹은 옵티마이저가 인덱스 스캔 계획 유형을 사용할 수 없습니다.
enable_indexscan값을 1로 설정할 것을 권장합니다. 추천:enable_indexscan파라미터 값을 1로 설정하세요. 다운타임: 아니요. 추가 정보: PostgreSQL의 플래너 메서드 구성. - innodb_flush_log_at_trx 파라미터가 꺼져 있음 – 설명: DB 인스턴스의
innodb_flush_log_at_trx파라미터 값이 안전한 값이 아닙니다. 이 파라미터는 커밋 작업의 디스크 유지(persistence)를 제어합니다.innodb_flush_log_at_trx파라미터를 1로 설정할 것을 권장합니다. 추천:innodb_flush_log_at_trx파라미터 값을 1로 설정하세요. 다운타임: 아니요. 추가 정보: AWS Database Blog의 Amazon RDS for MySQL 성능 파라미터 구성 모범 사례. - sync_binlog 파라미터가 꺼져 있음 – 설명: DB 인스턴스에서 트랜잭션 커밋이 승인되기 전에 바이너리 로그의 디스크 동기화가 강제되지 않습니다.
sync_binlog파라미터 값을 1로 설정할 것을 권장합니다. 추천:sync_binlog파라미터 값을 1로 설정하세요. 다운타임: 아니요. 추가 정보: AWS Database Blog의 Amazon RDS for MySQL 복제 파라미터 구성 모범 사례. - innodb_stats_persistent 파라미터가 꺼져 있음 – 설명: DB 인스턴스가 InnoDB 통계를 디스크에 유지하도록 구성되지 않았습니다. 통계가 저장되지 않으면 인스턴스가 다시 시작되고 테이블에 액세스할 때마다 통계가 다시 계산됩니다. 이로 인해 쿼리 실행 계획에 변동이 생깁니다. 이 전역 파라미터의 값을 테이블 수준에서 수정할 수 있습니다.
innodb_stats_persistent파라미터 값을 ON으로 설정할 것을 권장합니다. 추천:innodb_stats_persistent파라미터 값을 ON으로 설정하세요. 다운타임: 아니요. 추가 정보: AWS Database Blog의 Amazon RDS for MySQL 성능 파라미터 구성 모범 사례. - innodb_open_files 파라미터가 낮음 – 설명:
innodb_open_files파라미터는 InnoDB가 한 번에 열 수 있는 파일 수를 제어합니다. mysqld가 실행 중일 때 InnoDB는 모든 로그 및 시스템 테이블스페이스 파일을 엽니다. DB 인스턴스의 InnoDB가 한 번에 열 수 있는 최대 파일 수 값이 낮습니다.innodb_open_files파라미터를 최소 65로 설정할 것을 권장합니다. 추천:innodb_open_files파라미터를 최소값 65로 설정하세요. 다운타임: 예. 추가 정보: MySQL의 InnoDB 열린 파일. - max_user_connections 파라미터가 낮음 – 설명: DB 인스턴스의 각 데이터베이스 계정에 대한 동시 연결 최대 수 값이 낮습니다.
max_user_connections파라미터를 5보다 큰 숫자로 설정할 것을 권장합니다. 추천:max_user_connections파라미터 값을 5보다 큰 숫자로 늘리세요. 다운타임: 예. 추가 정보: MySQL의 계정 리소스 한도 설정. - 읽기 복제본이 쓰기 가능 모드로 열려 있음 – 설명: DB 인스턴스에 쓰기 가능 모드의 읽기 복제본이 있어 클라이언트의 업데이트를 허용합니다. 읽기 복제본이 쓰기 가능 모드가 아니도록
read_only파라미터를TrueIfReplica로 설정할 것을 권장합니다. 추천:read_only파라미터 값을TrueIfReplica로 설정하세요. 다운타임: 아니요. 추가 정보: AWS Database Blog의 Amazon RDS for MySQL 복제 파라미터 구성 모범 사례. - innodb_default_row_format 파라미터 설정이 안전하지 않음 – 설명: DB 인스턴스에 알려진 문제가 발생합니다: 8.0.26 미만의 MySQL 버전에서
row_format이COMPACT또는REDUNDANT로 설정되어 생성된 테이블은 인덱스가 767바이트를 초과하면 액세스할 수 없고 복구할 수 없게 됩니다.innodb_default_row_format파라미터 값을DYNAMIC으로 설정할 것을 권장합니다. 추천:innodb_default_row_format파라미터 값을DYNAMIC으로 설정하세요. 다운타임: 아니요. 추가 정보: MySQL 8.0.26의 변경 사항. - general_logging 파라미터가 켜져 있음 – 설명: DB 인스턴스에서 일반 로깅이 켜져 있습니다. 이 설정은 데이터베이스 문제 해결 시 유용합니다. 그러나 일반 로깅을 켜면 I/O 작업과 할당된 스토리지 공간이 증가하여 경합과 성능 저하가 발생할 수 있습니다. 일반 로깅 사용 요구 사항을 확인하세요.
general_logging파라미터 값을 0으로 설정할 것을 권장합니다. 추천: 일반 로깅 사용 요구 사항을 확인하세요. 필수가 아니라면general_logging파라미터 값을 0으로 설정할 것을 권장합니다. 다운타임: 아니요. 추가 정보: RDS for MySQL 데이터베이스 로그 개요. - RDS 인스턴스가 시스템 메모리 용량에 비해 과소 프로비저닝됨 – 설명: 더 적은 메모리를 사용하도록 쿼리를 튜닝하거나 할당 메모리가 더 높은 DB 인스턴스 유형을 사용할 것을 권장합니다. 인스턴스 메모리가 부족하면 데이터베이스 성능에 영향을 줍니다. 추천: 더 높은 메모리 용량의 DB 인스턴스를 사용하세요. 다운타임: 예. 추가 정보: AWS Database Blog의 Amazon RDS 인스턴스 수직·수평 확장; Amazon RDS 인스턴스 유형; Amazon RDS 요금.
- RDS 인스턴스가 시스템 CPU 용량에 비해 과소 프로비저닝됨 – 설명: 더 적은 CPU를 사용하도록 쿼리를 튜닝하거나 할당된 vCPU가 더 높은 DB 인스턴스 클래스를 사용하도록 DB 인스턴스를 수정할 것을 권장합니다. DB 인스턴스의 CPU가 부족하면 데이터베이스 성능이 저하될 수 있습니다. 추천: 더 높은 CPU 용량의 DB 인스턴스를 사용하세요. 다운타임: 예. 추가 정보: AWS Database Blog의 Amazon RDS 인스턴스 수직·수평 확장; Amazon RDS 인스턴스 유형; Amazon RDS 요금.
- RDS 리소스가 연결 풀링을 올바르게 활용하지 않음 – 설명: 기존 데이터베이스 연결을 효율적으로 풀링하고 공유하려면 Amazon RDS Proxy를 활성화할 것을 권장합니다. 이미 데이터베이스에 프록시를 사용하는 경우 여러 DB 인스턴스에서 연결 풀링과 부하 분산을 개선하도록 올바르게 구성하세요. RDS Proxy는 가용성과 확장성을 개선하면서 연결 고갈과 다운타임 위험을 줄이는 데 도움이 될 수 있습니다. 추천: RDS Proxy를 활성화하거나 기존 프록시 구성을 수정하세요. 다운타임: 아니요. 추가 정보: AWS Database Blog의 Amazon RDS 인스턴스 수직·수평 확장; Amazon RDS Proxy; Amazon RDS Proxy 요금.
- RDS 인스턴스가 과도한 임시 객체를 생성함 – 설명: 과도한 임시 객체 생성을 방지하도록 워크로드를 튜닝하거나 최적화된 읽기(Optimized Reads)를 지원하는 RDS 인스턴스 클래스로 전환할 것을 권장합니다. RDS Optimized Reads는 많은 수의 임시 객체 및/또는 큰 임시 객체를 수반하는 워크로드에 대해 데이터베이스 성능을 개선합니다. 워크로드를 평가하여 RDS Optimized Reads를 사용하는 인스턴스가 데이터베이스 워크로드에 도움이 되는지 결정하세요. 추천: RDS Optimized Reads를 사용하는 DB 인스턴스 유형을 사용하세요. 다운타임: 예. 추가 정보: Amazon RDS 인스턴스 유형; Amazon RDS Optimized Reads로 RDS for MySQL 쿼리 성능 개선; Amazon RDS Optimized Reads로 RDS for MariaDB 쿼리 성능 개선; Amazon RDS Optimized Reads로 RDS for PostgreSQL 쿼리 성능 개선.
- RDS 인스턴스가 시스템 IOPS 용량에 비해 과소 프로비저닝됨 – 설명: IOPS를 줄이도록 데이터베이스 워크로드를 튜닝하거나 기본 IOPS 한도가 더 높은 유형으로 DB 인스턴스를 확장할 것을 권장합니다. 현재 DB 인스턴스는 Provisioned IOPS를 지원할 수 없거나 데이터베이스 워크로드의 IOPS 사용률이 높습니다. 추천: 기본 IOPS 한도가 더 높은 DB 인스턴스 유형을 사용하세요. 다운타임: 예. 추가 정보: Amazon RDS 인스턴스 유형; Amazon RDS DB 인스턴스 스토리지; 데이터베이스 부하.
- RDS 인스턴스에 과소 프로비저닝된 Amazon EBS 볼륨이 있음 – 설명: IOPS를 줄이도록 데이터베이스 워크로드를 튜닝하거나 데이터베이스의 Provisioned IOPS를 늘릴 것을 권장합니다. IOPS 사용률이 Provisioned IOPS에 가까워지면 데이터베이스 성능이 저하될 수 있습니다. 추천: DB 인스턴스에 더 많은 IOPS를 프로비저닝하세요. 다운타임: 예. 추가 정보: Amazon RDS 인스턴스 유형; Amazon RDS DB 인스턴스 스토리지; 데이터베이스 부하.
- RDS 인스턴스가 처리량 용량에 비해 과소 프로비저닝됨 – 설명: 처리량을 줄이도록 데이터베이스 워크로드를 튜닝하거나 데이터베이스의 프로비저닝된 처리량을 늘릴 것을 권장합니다. 처리량 사용률이 프로비저닝된 처리량에 가까워지면 데이터베이스 성능에 영향을 줄 수 있습니다. 추천: DB 인스턴스에 더 많은 처리량을 프로비저닝하세요. 다운타임: 예. 추가 정보: Amazon RDS 인스턴스 유형; Amazon RDS DB 인스턴스 스토리지; 데이터베이스 부하.
- RDS 인스턴스가 EBS I/O에 비해 과소 프로비저닝됨 – 설명: I/O 작업을 줄이도록 데이터베이스 워크로드를 튜닝하거나 높은 성능, 높은 처리량, 낮은 지연 시간이 필요한 데이터베이스 워크로드를 위해 설계된 Amazon RDS io2 Block Express 볼륨을 사용하도록 DB 인스턴스를 수정할 것을 권장합니다. 현재 워크로드에서 데이터베이스가 요구되는 속도로 I/O 작업을 처리하지 못해 성능 저하가 발생할 수 있습니다. 추천: RDS 인스턴스에 Amazon RDS io2 Block Express 볼륨을 사용하세요. 다운타임: 아니요. 추가 정보: Amazon RDS DB 인스턴스 스토리지; Amazon RDS용 Amazon CloudWatch 지표; Amazon EBS 사용자 가이드의 Provisioned IOPS SSD 볼륨.