

# Amazon RDS DB 인스턴스 구성
<a name="CHAP_RDS_Configuring"></a>

이 단원에서는 Amazon RDS DB 인스턴스를 설정하는 방법을 보여줍니다. DB 인스턴스를 생성하기 전에 DB 인스턴스를 실행할 DB 인스턴스 클래스를 결정합니다. 또한 AWS 리전을 선택하여 DB 인스턴스를 실행할 위치를 결정합니다. 그런 다음 DB 인스턴스를 생성합니다.

옵션 그룹과 DB 파라미터 그룹을 사용하여 DB 인스턴스를 구성할 수 있습니다.
+ *옵션 그룹*은 Amazon RDS DB 인스턴스에서 사용 가능한 옵션이라는 기능을 지정합니다.
+ *DB 파라미터 그룹*은 하나 이상의 DB 인스턴스에 적용되는 엔진 구성 값의 컨테이너 역할을 합니다.

사용 가능한 옵션과 파라미터는 DB 엔진 및 DB 엔진 버전에 따라 다릅니다. DB 인스턴스를 생성할 때 옵션 그룹과 DB 파라미터 그룹을 지정할 수 있습니다. DB 인스턴스를 수정하여 지정할 수도 있습니다.

**Topics**
+ [Amazon RDS DB 인스턴스 생성](USER_CreateDBInstance.md)
+ [AWS CloudFormation을 사용하여 Amazon RDS 리소스 생성](creating-resources-with-cloudformation.md)
+ [Amazon RDS DB 인스턴스에 연결](CHAP_CommonTasks.Connect.md)
+ [옵션 그룹 작업](USER_WorkingWithOptionGroups.md)
+ [Amazon RDS의 파라미터 그룹](USER_WorkingWithParamGroups.md)
+ [Amazon RDS DB 인스턴스 설정을 사용하여 Amazon ElastiCache 캐시 생성](creating-elasticache-cluster-with-RDS-settings.md)
+ [AWS Database Migration Service를 사용하여 EC2 데이터베이스를 Amazon RDS로 자동 마이그레이션](USER_DMS_migration.md)
+ [자습서: 사용자 지정 파라미터 및 새로운 옵션 그룹을 사용하여 MySQL DB 인스턴스 만들기](tutorial-creating-custom-OPG.md)

# Amazon RDS DB 인스턴스 생성
<a name="USER_CreateDBInstance"></a>

Amazon RDS의 기본 빌딩 블록은 데이터베이스를 생성하는 DB 인스턴스입니다. DB 인스턴스를 생성할 때는 엔진 고유의 특성을 선택합니다. 또한 데이터베이스 서버가 실행되는 AWS 인스턴스의 스토리지 용량, CPU, 메모리 등도 선택합니다.

**Topics**
+ [DB 인스턴스 사전 조건](#USER_CreateDBInstance.Prerequisites)
+ [DB 인스턴스 생성](#USER_CreateDBInstance.Creating)
+ [DB 인스턴스에 대한 설정](USER_CreateDBInstance.Settings.md)

## DB 인스턴스 사전 조건
<a name="USER_CreateDBInstance.Prerequisites"></a>

**중요**  
Amazon RDS DB 인스턴스를 생성하기 전에 [Amazon RDS 환경 설정](CHAP_SettingUp.md)에서 작업을 완료합니다.

다음은 DB 인스턴스를 생성하기 위한 전제 조건입니다.

**Topics**
+ [DB 인스턴스의 네트워크 구성](#USER_CreateDBInstance.Prerequisites.VPC)
+ [추가 사전 조건](#USER_CreateDBInstance.Prerequisites.Additional)

### DB 인스턴스의 네트워크 구성
<a name="USER_CreateDBInstance.Prerequisites.VPC"></a>

Amazon VPC 서비스 기반의 Virtual Private Cloud(VPC)에서만 Amazon RDS DB 인스턴스를 생성할 수 있습니다. 또한 가용 영역이 2개 이상 있는 AWS 리전에 있어야 합니다. DB 인스턴스에 대해 선택한 DB 서브넷 그룹은 2개 이상의 가용 영역을 포함해야 합니다. 이 구성을 사용하면 DB 인스턴스를 생성할 때 다중 AZ 배포를 구성하거나 향후 쉽게 DB 인스턴스로 이동할 수 있습니다.

새 DB 인스턴스와 동일한 VPC의 Amazon EC2 인스턴스 간에 연결을 설정하려는 경우 DB 인스턴스 생성 시 설정합니다. 동일한 VPC의 EC2 인스턴스 이외의 리소스에서 DB 인스턴스에 연결하려는 경우 네트워크 연결을 수동으로 구성합니다.

**Topics**
+ [EC2 인스턴스와의 자동 네트워크 연결 구성](#USER_CreateDBInstance.Prerequisites.VPC.Automatic)
+ [네트워크 수동 구성](#USER_CreateDBInstance.Prerequisites.VPC.Manual)

#### EC2 인스턴스와의 자동 네트워크 연결 구성
<a name="USER_CreateDBInstance.Prerequisites.VPC.Automatic"></a>

RDS DB 인스턴스를 생성할 때 AWS Management Console을 사용하여 EC2 인스턴스와 새 DB 인스턴스 간의 연결을 설정할 수 있습니다. 이렇게 하면 RDS가 VPC 및 네트워크 설정을 자동으로 구성합니다. DB 인스턴스는 EC2 인스턴스가 DB 인스턴스에 액세스할 수 있도록 EC2 인스턴스와 동일한 VPC에 생성됩니다.

다음은 EC2 인스턴스를 DB 인스턴스와 연결하기 위한 요구 사항입니다.
+ DB 인스턴스를 생성하려면 먼저 EC2 인스턴스가 AWS 리전에 있어야 합니다.

  AWS 리전에 EC2 인스턴스가 없는 경우 콘솔은 인스턴스를 생성할 수 있는 링크를 제공합니다.
+ DB 인스턴스를 만드는 사용자는 다음 작업을 수행할 수 있는 권한이 있어야 합니다.
  + `ec2:AssociateRouteTable` 
  + `ec2:AuthorizeSecurityGroupEgress` 
  + `ec2:AuthorizeSecurityGroupIngress` 
  + `ec2:CreateRouteTable` 
  + `ec2:CreateSubnet` 
  + `ec2:CreateSecurityGroup` 
  + `ec2:DescribeInstances` 
  + `ec2:DescribeNetworkInterfaces` 
  + `ec2:DescribeRouteTables` 
  + `ec2:DescribeSecurityGroups` 
  + `ec2:DescribeSubnets` 
  + `ec2:ModifyNetworkInterfaceAttribute` 
  + `ec2:RevokeSecurityGroupEgress` 

이 옵션을 사용하면 프라이빗 DB 인스턴스가 생성됩니다. DB 인스턴스는 프라이빗 서브넷만 있는 DB 서브넷 그룹을 사용하여 VPC 내 리소스에 대한 액세스를 제한합니다.

EC2 인스턴스를 DB 인스턴스에 연결하려면 **데이터베이스 생성 페이지의** **연결** 섹션에서 **EC2 컴퓨팅 리소스에 연결**을 선택합니다.

![\[EC2 인스턴스 연결\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/images/ec2-set-up-connection-create.png)


**Connect to an EC2 compute resource**(EC2 컴퓨팅 리소스에 연결)를 선택하면 RDS가 다음 옵션을 자동으로 설정합니다. **Don't connect to an EC2 compute resource**(EC2 컴퓨팅 리소스에 연결하지 않음)를 선택하여 EC2 인스턴스와의 연결을 설정하지 않도록 선택하지 않는 한 이러한 설정을 변경할 수 없습니다.


****  

| 콘솔 옵션 | 자동 설정 | 
| --- | --- | 
|  **네트워크 유형**  |  RDS는 네트워크 유형을 **IPv4**로 설정합니다. 현재 듀얼 스택 모드는 EC2 인스턴스와 DB 인스턴스 간의 연결을 설정할 때 지원되지 않습니다.  | 
|  **가상 프라이빗 클라우드(VPC)**  |  RDS는 VPC를 EC2 인스턴스와 연결된 VPC로 설정합니다.  | 
|  **DB 서브넷 그룹**  | RDS에는 EC2 인스턴스와 동일한 가용 영역에 프라이빗 서브넷이 있는 DB 서브넷 그룹이 필요합니다. 이 요구 사항을 충족하는 DB 서브넷 그룹이 있다면 RDS는 기존 DB 서브넷 그룹을 사용합니다. 기본적으로 이 옵션은 Automatic setup(자동 설정)으로 설정되어 있습니다.**Automatic setup**(자동 설정)을 선택하고 이 요구 사항을 충족하는 DB 서브넷 그룹이 없으면 다음 작업이 수행됩니다. RDS는 가용 영역 중 하나가 EC2 인스턴스와 동일한 3개의 가용 영역에서 3개의 사용 가능한 프라이빗 서브넷을 사용합니다. 가용 영역에서 프라이빗 서브넷을 사용할 수 없는 경우 RDS는 가용 영역에 프라이빗 서브넷을 생성합니다. 그런 다음 RDS는 DB 서브넷 그룹을 생성합니다.프라이빗 서브넷을 사용할 수 있는 경우 RDS는 서브넷과 연결된 라우팅 테이블을 사용하고 생성된 모든 서브넷을 이 라우팅 테이블에 추가합니다. 프라이빗 서브넷을 사용할 수 없는 경우 RDS는 인터넷 게이트웨이 액세스가 없는 라우팅 테이블을 생성하고 생성한 서브넷을 라우팅 테이블에 추가합니다.RDS를 사용하면 기존 DB 서브넷 그룹도 사용할 수 있습니다. 선택한 기존 DB 서브넷 그룹을 사용하려면 **Choose existing**(기존 항목 선택)을 선택합니다.  | 
|  **공개 액세스(Public access**  |  RDS는 DB 인스턴스에 공개적으로 액세스할 수 없도록 **아니요**를 선택합니다. 보안을 위해 데이터베이스를 비공개로 유지하고 인터넷에서 액세스할 수 없도록 하는 것이 가장 좋습니다.  | 
|  **VPC 보안 그룹(방화벽)**  |  RDS는 DB 인스턴스와 연결된 새 보안 그룹을 생성합니다. 보안 그룹의 이름은 `rds-ec2-n`이며, 여기서 `n`은 숫자입니다. 이 보안 그룹에는 EC2 VPC 보안 그룹(방화벽)이 소스인 인바운드 규칙이 포함됩니다. DB 인스턴스와 연결된 이 보안 그룹을 통해 EC2 인스턴스가 DB 인스턴스에 액세스할 수 있습니다. RDS는 EC2 인스턴스와 연결된 새 보안 그룹도 생성합니다. 보안 그룹의 이름은 `ec2-rds-n`이며, 여기서 `n`은 숫자입니다. 이 보안 그룹에는 DB 인스턴스의 VPC 보안 그룹을 소스로 하는 아웃바운드 규칙이 포함됩니다. 이 보안 그룹을 사용하면 EC2 인스턴스가 DB 인스턴스로 트래픽을 보낼 수 있습니다. **Create new**(새로 생성)를 선택하고 새 보안 그룹의 이름을 입력하여 다른 새 보안 그룹을 추가할 수 있습니다. **Choose existing**(기존 항목 선택)을 선택하고 추가할 보안 그룹을 선택하여 기존 보안 그룹을 추가할 수 있습니다.  | 
|  **가용 영역**  |  **가용성 및 내구성**(단일 AZ 배포)에서 **단일 DB 인스턴스**를 선택한 경우 RDS는 EC2 인스턴스의 가용 영역을 선택합니다. **가용성 및 내구성**에서 **다중 AZ DB 인스턴스**를 선택한 경우(다중 AZ DB 인스턴스 배포), RDS는 배포에서 단일 DB 인스턴스에 대해 EC2 인스턴스의 가용 영역을 선택합니다. RDS는 다른 DB 인스턴스에 대해 서로 다른 가용 영역을 임의로 선택합니다. 기본 DB 인스턴스 또는 대기 복제본은 EC2 인스턴스와 동일한 가용 영역에서 생성됩니다. **다중 AZ DB 인스턴스**를 선택할 때 DB 인스턴스와 EC2 인스턴스가 서로 다른 가용 영역에 있는 경우 교차 가용 영역 비용이 발생할 가능성이 있습니다.  | 

이러한 설정에 대한 자세한 내용은 [DB 인스턴스에 대한 설정](USER_CreateDBInstance.Settings.md) 섹션을 참조하세요.

DB 인스턴스를 생성한 후에 이러한 설정을 변경할 경우 변경 사항이 EC2 인스턴스와 DB 인스턴스 간의 연결에 영향을 미칠 수 있습니다.

#### 네트워크 수동 구성
<a name="USER_CreateDBInstance.Prerequisites.VPC.Manual"></a>

동일한 VPC의 EC2 인스턴스 이외의 리소스에서 DB 인스턴스에 연결하려는 경우 네트워크 연결을 수동으로 구성합니다. AWS Management Console을 사용하여 DB 인스턴스를 생성하는 경우에는 Amazon RDS에서 VPC를 자동으로 생성할 수 있습니다. 또는 DB 인스턴스에서 기존 VPC를 사용하거나 새 VPC를 생성할 수 있습니다. 어떤 접근 방식이든 RDS DB 인스턴스와 함께 VPC를 사용하려면 2개 이상의 가용 영역마다 서브넷이 1개 이상 있어야 합니다.

기본적으로 Amazon RDS는 DB 인스턴스를 자동으로 가용 영역에 생성합니다. 특정 가용 영역을 선택하려면 **가용성 및 내구성** 설정을 **단일 DB 인스턴스**로 변경해야 합니다. 이렇게 하면 VPC의 가용 영역 중에서 선택할 수 있는 **가용 영역** 설정이 노출됩니다. 하지만 다중 AZ 배포를 선택하는 경우 RDS는 기본 또는 라이터 DB 인스턴스의 가용 영역을 자동으로 선택하고 **가용 영역** 설정이 표시되지 않습니다.

경우에 따라 기본 VPC가 없거나 VPC를 생성하지 않았을 수 있습니다. 이러한 경우에는 콘솔을 사용해 DB 인스턴스를 생성할 때 Amazon RDS에서 자동으로 VPC를 생성하도록 할 수 있습니다. 그렇지 않으면 다음을 수행하세요.
+ DB 인스턴스를 배포하려는 AWS 리전에서 두 개 이상의 가용 영역에 각각 한 개 이상의 서브넷을 갖는 VPC를 생성합니다. 자세한 내용은 [VPC에서 DB 인스턴스를 사용한 작업](USER_VPC.WorkingWithRDSInstanceinaVPC.md#Overview.RDSVPC.Create) 및 [자습서: DB 인스턴스에 사용할 Amazon VPC 생성(IPv4 전용)](CHAP_Tutorials.WebServerDB.CreateVPC.md) 섹션을 참조하세요.
+ DB 인스턴스에 대한 연결 권한을 부여할 수 있도록 VPC 보안 그룹을 지정합니다. 자세한 내용은 [보안 그룹을 생성하여 VPC 내부의 DB 인스턴스에 대한 액세스를 제공](CHAP_SettingUp.md#CHAP_SettingUp.SecurityGroup) 및 [보안 그룹을 통한 액세스 제어](Overview.RDSSecurityGroups.md) 섹션을 참조하세요.
+ DB 인스턴스에서 VPC의 서브넷 2개 이상을 사용할 수 있도록 RDS DB 서브넷 그룹을 지정합니다. 자세한 내용은 [DB 서브넷 그룹을 사용한 작업](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.Subnets) 섹션을 참조하세요.

DB 인스턴스와 동일한 VPC에 있지 않은 리소스에 연결하려는 경우 [VPC에서 DB 인스턴스에 액세스하는 시나리오](USER_VPC.Scenarios.md)에서 적절한 시나리오를 참조하십시오.

### 추가 사전 조건
<a name="USER_CreateDBInstance.Prerequisites.Additional"></a>

DB 인스턴스를 만들려면 먼저 다음과 같은 추가 사전 조건을 고려하십시오.
+ AWS Identity and Access Management(IAM) 보안 인증 정보를 사용하여 AWS에 연결하는 경우 AWS 계정에 특정 IAM 정책이 있어야 합니다. 이 정책은 Amazon RDS 작업을 수행하는 데 필요한 권한을 부여합니다. 자세한 내용은 [Amazon RDS의 자격 증명 및 액세스 관리](UsingWithRDS.IAM.md) 섹션을 참조하세요.

  IAM을 사용하여 RDS 콘솔에 액세스하려면 IAM 사용자 자격 증명으로 AWS Management Console에 로그인합니다. 그런 다음 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔로 이동합니다.
+ DB 인스턴스에 대한 구성 파라미터를 사용자 지정하려면 필요한 파라미터 설정으로 DB 파라미터 그룹을 지정합니다. DB 파라미터 그룹의 생성 및 수정에 대한 자세한 내용은 [Amazon RDS의 파라미터 그룹](USER_WorkingWithParamGroups.md) 단원을 참조하십시오.
**중요**  
Amazon RDS for Db2용 BYOL 모델을 사용하는 경우, DB 인스턴스를 만들기 전에 먼저 IBM Site ID 및 IBM Customer ID를 포함하는 사용자 지정 파라미터 그룹을 만들어야 합니다. 자세한 내용은 [Db2용 Bring Your Own License(BYOL)](db2-licensing.md#db2-licensing-options-byol) 섹션을 참조하세요.
+ DB 인스턴스에 지정할 TCP/IP 포트 번호를 정합니다. 일부 기업에서는 방화벽이 RDS DB 인스턴스에 대한 기본 포트 연결을 차단하는 경우도 있습니다. 이처럼 기업 방화벽이 기본 포트를 차단할 경우 DB 인스턴스에 다른 포트를 선택해야 합니다. Amazon RDS DB 엔진의 기본 포트는 다음과 같습니다.    
<a name="dbengineports"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html)

  RDS for SQL Server의 경우 다음 포트는 예약되어 있고 DB 인스턴스 `1234, 1434, 3260, 3343, 3389, 47001,` 및 `49152-49156`을 생성할 때 사용할 수 없습니다.

## DB 인스턴스 생성
<a name="USER_CreateDBInstance.Creating"></a>

AWS Management Console, AWS CLI 또는 RDS API를 사용하여 Amazon RDS DB 인스턴스를 생성할 수 있습니다.

**참고**  
RDS for Db2의 경우 RDS for Db2 DB 인스턴스를 생성하기 전에 라이선스 모델에 필요한 항목을 설정하는 것이 좋습니다. 자세한 내용은 [Amazon RDS for Db2 라이선스 옵션](db2-licensing.md) 섹션을 참조하세요.

### 콘솔
<a name="USER_CreateDBInstance.CON"></a>

**간편 생성(Easy Create)**을 활성화하거나 활성화하지 않고 AWS Management Console을 사용하여 DB 인스턴스를 생성할 수 있습니다. **Easy create(간편 생성)**를 활성화한 경우에는 DB 엔진 유형, DB 인스턴스 크기 및 DB 인스턴스 식별자만 지정합니다. **Easy create(간편 생성)**는 다른 구성 옵션에서도 기본 설정을 사용합니다. **Easy create(간편 생성)**가 활성화되지 않은 경우에는 데이터베이스를 생성할 때 가용성, 보안, 백업 및 유지 관리에 대한 옵션을 포함하여 더 많은 구성 옵션을 지정합니다.

**참고**  
다음 절차에서는 **표준 생성(Standard Create)**이 활성화되고 **간편 생성(Easy Create)**이 활성화되지 않습니다. 이 절차에서는 Microsoft SQL Server를 예로 사용합니다.  
**간편 생성(Easy Create)**을 사용하여 각 엔진의 샘플 DB 인스턴스를 생성하고 연결하는 방법을 안내하는 예제는 [Amazon RDS 시작하기](CHAP_GettingStarted.md) 섹션을 참조하세요.

**DB 인스턴스를 생성하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. Amazon RDS 콘솔의 오른쪽 상단에서 DB 인스턴스를 생성하려는 AWS 리전을 선택합니다.

1. 탐색 창에서 **Databases**(데이터베이스)를 선택합니다.

1. **데이터베이스 생성**에서 **표준 생성**을 선택합니다.

1. **엔진 유형**에서 IBM Db2, MariaDB, Microsoft SQL Server, MySQL, Oracle 또는 PostgreSQL을 선택합니다.

   여기서는 **Microsoft SQL Server**가 표시됩니다.  
![\[엔진 선택\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/images/create-instance-sqlserver.png)

1. Oracle 또는 SQL Server를 사용하는 경우 **데이터베이스 관리 유형**에서 **Amazon RDS** 또는 **Amazon RDS Custom**을 선택합니다.

   **Amazon RDS**가 여기에 표시됩니다. RDS Custom에 대한 자세한 내용은 [Amazon RDS Custom](rds-custom.md) 섹션을 참조하세요.

1. Oracle 또는 SQL Server를 사용하는 경우 **에디션**에서 사용할 DB 엔진 에디션을 선택합니다.

   MySQL에는 에디션에 대한 옵션이 하나 뿐이며, MariaDB와 PostgreSQL에는 없습니다.

1. **버전**에서 엔진 버전을 선택합니다.

1. **템플릿**에서 사용 사례에 맞는 템플릿을 선택합니다. **프로덕션**을 선택하면 이후 단계에서 다음 설정이 미리 선택됩니다.
   + **다중 AZ** 장애 조치 옵션
   + **프로비저닝된 IOPS(io1)** 스토리지 옵션
   + **삭제 방지 활성화** 옵션

   어떤 프로덕션 환경이든 이 기능을 권장합니다.
**참고**  
템플릿 옵션은 에디션별로 다릅니다.

1. **Settings**(설정) 섹션에서 **Credential Settings**(보안 인증 정보 설정)를 엽니다. 뒤이어 다음과 같이 하세요.

   1. (선택 사항) **마스터 사용자 이름(Master username)** 값을 변경합니다.

   1. 다음 자격 증명 관리 옵션 중 하나를 선택합니다.
      + **AWS Secrets Manager에서 관리됨**

        **암호화 키 선택**에서 Secrets Manager가 만드는 KMS 키 또는 사용자가 만든 키를 선택합니다.
**참고**  
자격 증명을 관리하기 위한 가장 안전한 기법으로 AWS Secrets Manager를 사용하는 것이 좋습니다. 추가 요금이 발생합니다. 자세한 내용은 [Amazon RDS 및 AWS Secrets Manager를 통한 암호 관리](rds-secrets-manager.md) 섹션을 참조하세요.
      + **자체 관리형**

        암호를 지정하려면 **암호 자동 생성** 확인란을 선택 취소합니다(선택되어 있는 경우). **마스터 암호** 및 **마스터 암호 확인**에 동일한 암호를 입력합니다.

1. (선택 사항) 이 DB 인스턴스의 컴퓨팅 리소스에 대한 연결을 설정합니다.

   DB 클러스터를 생성하는 동안 Amazon EC2 인스턴스와 새 DB 인스턴스 간의 연결을 구성할 수 있습니다. 자세한 내용은 [EC2 인스턴스와의 자동 네트워크 연결 구성](#USER_CreateDBInstance.Prerequisites.VPC.Automatic) 섹션을 참조하세요.

1. **VPC 보안 그룹(방화벽)** 아래의 **연결** 섹션에서 **새로 만들기**를 선택하면 로컬 컴퓨터의 IP 주소가 데이터베이스에 액세스할 수 있도록 허용하는 인바운드 규칙과 함께 VPC 보안 그룹이 생성됩니다.

1. 나머지 섹션에서 DB 인스턴스 설정을 지정합니다. 각 설정에 대한 자세한 내용은 [DB 인스턴스에 대한 설정](USER_CreateDBInstance.Settings.md) 단원을 참조하십시오.

1. **데이터베이스 생성**을 선택합니다.

   자동 생성된 암호를 사용하기로 한 경우에는 **데이터베이스** 페이지에 **View credential details(자격 증명 세부 정보 보기)** 버튼이 나타납니다.

   DB 인스턴스의 마스터 사용자 이름 및 암호를 보려면 **View credential details(자격 증명 세부 정보 보기)**를 선택합니다.

   DB 인스턴스를 마스터 사용자로 연결하려면 화면에 나타난 사용자 이름과 암호를 사용합니다.
**중요**  
마스터 사용자 암호를 다시 볼 수는 없습니다. 따라서 기록을 해두지 않으면 이를 변경해야 합니다. DB 인스턴스가 사용 가능한 상태가 되고 난 후에 마스터 사용자 암호를 변경해야 하는 경우에는 DB 인스턴스를 수정하여 암호를 변경합니다. DB 인스턴스 변경에 대한 자세한 내용은 [Amazon RDS DB 인스턴스 수정](Overview.DBInstance.Modifying.md) 단원을 참조하십시오.

1. **데이터베이스**에서 새 DB 인스턴스의 이름을 선택합니다.

   RDS 콘솔에 새 DB 인스턴스의 세부 정보가 표시됩니다. DB 인스턴스를 만들고 사용할 준비가 될 때까지 DB 인스턴스의 상태는 **Creating**입니다. 상태가 **사용 가능**으로 변경되면 DB 인스턴스에 연결할 수 있습니다. 할당된 DB 인스턴스 클래스와 스토리지에 따라 새 인스턴스를 사용할 수 있을 때까지 몇 분 정도 걸릴 수 있습니다.  
![\[내 DB 인스턴스 세부 정보\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/images/SQLSvr-Launch05.png)

### AWS CLI
<a name="USER_CreateDBInstance.CLI"></a>



**참고**  
AWS Marketplace를 통한 Db2 라이선스를 사용하려면 먼저 AWS Marketplace를 구독하고 AWS Management Console를 사용하여 IBM에 등록해야 합니다. 자세한 내용은 [Db2 Marketplace 리스팅 구독 및 IBM으로 등록](db2-licensing.md#db2-marketplace-subscribing-registering) 섹션을 참조하세요.

AWS CLI를 사용하여 DB 인스턴스를 생성하려면 다음 파라미터와 함께 [create-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) 명령을 호출합니다.
+ `--db-instance-identifier`
+ `--db-instance-class`
+ `--vpc-security-group-ids`
+ `--db-subnet-group`
+ `--engine`
+ `--master-username`
+ `--master-user-password` 또는 `--manage-master-user-password`
+ `--allocated-storage`
+ `--backup-retention-period`

각 설정에 대한 자세한 내용은 [DB 인스턴스에 대한 설정](USER_CreateDBInstance.Settings.md) 섹션을 참조하세요.

이 예에서는 Microsoft SQL Server를 사용합니다.

**Example**  
대상 LinuxmacOS, 또는Unix:  

```
 1. aws rds create-db-instance \
 2.     --engine sqlserver-se \
 3.     --db-instance-identifier mymsftsqlserver \
 4.     --allocated-storage 250 \
 5.     --db-instance-class db.t3.large \
 6.     --vpc-security-group-ids mysecuritygroup \
 7.     --db-subnet-group mydbsubnetgroup \
 8.     --master-username masterawsuser \
 9.     --manage-master-user-password \
10.     --backup-retention-period 3
```
Windows의 경우:  

```
 1. aws rds create-db-instance ^
 2.     --engine sqlserver-se ^
 3.     --db-instance-identifier mydbinstance ^
 4.     --allocated-storage 250 ^
 5.     --db-instance-class db.t3.large ^
 6.     --vpc-security-group-ids mysecuritygroup ^
 7.     --db-subnet-group mydbsubnetgroup ^
 8.     --master-username masterawsuser ^ 
 9.     --manage-master-user-password ^
10.     --backup-retention-period 3
```
다음과 비슷한 출력이 생성됩니다.  

```
1. DBINSTANCE  mydbinstance  db.t3.large  sqlserver-se  250  sa  creating  3  ****  n  10.50.2789
2. SECGROUP  default  active
3. PARAMGRP  default.sqlserver-se-14  in-sync
```

### RDS API
<a name="USER_CreateDBInstance.API"></a>

**참고**  
AWS Marketplace를 통한 Db2 라이선스를 사용하려면 먼저 AWS Marketplace를 구독하고 AWS Management Console를 사용하여 IBM에 등록해야 합니다. 자세한 내용은 [Db2 Marketplace 리스팅 구독 및 IBM으로 등록](db2-licensing.md#db2-marketplace-subscribing-registering) 섹션을 참조하세요.

Amazon RDS API를 사용하여 DB 인스턴스를 생성하려면 [CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) 작업을 호출합니다.

각 설정에 대한 자세한 내용은 [DB 인스턴스에 대한 설정](USER_CreateDBInstance.Settings.md) 단원을 참조하십시오.

# DB 인스턴스에 대한 설정
<a name="USER_CreateDBInstance.Settings"></a>

다음 표에는 DB 인스턴스를 생성할 때 선택하는 설정에 대한 세부 정보가 나와 있습니다. 이 표에는 각 설정이 지원되는 DB 엔진도 나와 있습니다.

콘솔, [ create-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) CLI 명령 또는 [CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) RDS API 작업을 사용하여 DB 인스턴스를 생성할 수 있습니다.


****  

| 콘솔 설정 | 설정 설명 | CLI 옵션 및 RDS API 파라미터 | 지원되는 DB 엔진 | 
| --- | --- | --- | --- | 
|  **할당된 스토리지**  |  DB 인스턴스에 할당할 스토리지 양(기가바이트 단위)입니다. 경우에 따라 DB 인스턴스에 대해 데이터베이스의 크기보다 많은 양의 스토리지를 할당하면 I/O 성능을 개선할 수 있습니다. 자세한 내용은 [Amazon RDS DB 인스턴스 스토리지](CHAP_Storage.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--allocated-storage` **API 파라미터:**  `AllocatedStorage`  |  모두  | 
| 아키텍처 설정 |  **Oracle 멀티테넌트 아키텍처**를 선택하면 RDS for Oracle에서 컨테이너 데이터베이스(CDB)가 생성됩니다. 이 옵션을 선택하지 않으면 RDS for Oracle에서 비 CDB가 생성됩니다. 비CDB에는 기존의 Oracle 데이터베이스 아키텍처가 사용됩니다. CDB에는 플러그형 데이터베이스(PDB)가 포함될 수 있지만 비CDB에는 포함될 수 없습니다. Oracle Database 21c는 CDB 아키텍처만 사용합니다. Oracle Database 19c는 CDB 또는 비CDB 아키텍처를 사용할 수 있습니다. Oracle Database 19c 이전의 릴리스는 비CDB 아키텍처만 사용합니다. 자세한 내용은 [RDS for Oracle CDB 개요](Oracle.Concepts.CDBs.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--engine oracle-ee-cdb`(Oracle 멀티테넌트) `--engine oracle-se2-cdb`(Oracle 멀티테넌트) `--engine oracle-ee`(기존) `--engine oracle-se2`(기존) **API 파라미터:** `Engine`  |  Oracle  | 
| 아키텍처 구성 |  이러한 설정은 **아키텍처 설정**으로 **Oracle 멀티테넌트 아키텍처**를 선택한 경우에만 유효합니다. 다음 추가 설정 중 하나를 선택합니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html) 어떤 구성을 선택하든 CDB에는 처음의 PDB 한 개가 포함됩니다. 다중 테넌트 구성에서는 나중에 RDS API를 사용하여 더 많은 PDB를 만들 수 있습니다. 자세한 내용은 [RDS for Oracle CDB 개요](Oracle.Concepts.CDBs.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--multi-tenant`(다중 테넌트 구성) `--no-multi-tenant`(단일 테넌트 구성) **API 파라미터:** `MultiTenant`  |  Oracle  | 
| 자동 마이너 버전 업그레이드 |  DB 엔진의 기본 마이너 버전 업그레이드가 제공되면 DB 인스턴스가 자동으로 이를 받을 수 있게 하려면 **마이너 버전 자동 업그레이드 사용**을 선택합니다. 이는 기본 설정 동작입니다. Amazon RDS는 유지 관리 기간에 자동 마이너 버전 업그레이드를 수행합니다. **마이너 버전 자동 업그레이드 사용**을 선택하지 않으면 새 마이너 버전이 출시될 때 DB 인스턴스가 자동으로 업그레이드되지 않습니다. 자세한 내용은 [마이너 엔진 버전 자동 업그레이드](USER_UpgradeDBInstance.Upgrading.md#USER_UpgradeDBInstance.Upgrading.AutoMinorVersionUpgrades) 섹션을 참조하세요.  |  **CLI 옵션:** `--auto-minor-version-upgrade` `--no-auto-minor-version-upgrade` **API 파라미터:** `AutoMinorVersionUpgrade`  | 모두 | 
|  가용 영역  |  DB 인스턴스의 가용 영역입니다. 가용 영역을 지정하지 않으려면 기본값으로 **No Preference**를 사용합니다. 자세한 내용은 [리전, 가용 영역 및 로컬 영역](Concepts.RegionsAndAvailabilityZones.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--availability-zone` **API 파라미터:** `AvailabilityZone`  | 모두 | 
|   **AWS KMS key**   |  **암호화**를 **암호화 활성화**로 설정한 경우에만 사용할 수 있습니다. 이 DB 인스턴스를 암호화하는 데 사용할 AWS KMS key을(를) 선택합니다. 자세한 내용은 [Amazon RDS 리소스 암호화](Overview.Encryption.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--kms-key-id` **API 파라미터:** `KmsKeyId`  | 모두 | 
| AWS License Manager 구성 |  AWS License Manager 라이선스 구성의 이름을 입력합니다. 이름은 100자 이하여야 하며 a\$1z, A\$1Z, 0\$19만 포함해야 합니다. 자세한 내용은 [을 와 통합AWS License Manager](db2-licensing.md#db2-lms-integration) 섹션을 참조하세요.  |  **CLI 옵션:** 자세한 내용은 [AWS License Manager CLI](db2-licensing.md#db2-lms-integration.cli) 섹션을 참조하세요. **API 파라미터:** 자세한 내용은 [AWS License Manager API](db2-licensing.md#db2-lms-integration.api) 섹션을 참조하세요.  | Db2 | 
| 백업 복제 |  재해 복구를 위해 추가 리전에 백업을 생성하려면 **다른 AWS 리전에서 복제 활성화**를 선택합니다. 그런 다음 추가 백업을 위한 **대상 리전(Destination Region)**을 선택합니다.  |  DB 인스턴스를 생성할 때는 사용할 수 없습니다. AWS CLI 또는 RDS API를 사용하여 교차 리전 백업을 활성화하는 방법에 대한 자세한 내용은 [Amazon RDS에 대해 교차 리전 자동 백업 활성화](AutomatedBackups.Replicating.Enable.md) 섹션을 참조하세요.  |  Db2 Oracle PostgreSQL SQL Server  | 
| 백업 보관 기간  |  DB 인스턴스의 자동 백업을 보존할 기간(단위: 일)입니다. 중요한 DB 인스턴스라면 이 값을 **1** 이상으로 설정합니다. 자세한 내용은 [백업 소개](USER_WorkingWithAutomatedBackups.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--backup-retention-period` **API 파라미터:** `BackupRetentionPeriod`  | 모두 | 
| 백업 대상 |  **AWS 클라우드**를 선택하여 자동 백업 및 수동 스냅샷을 상위 AWS 리전에 저장합니다. **Outposts(온프레미스)(Outposts (on-premises))**를 선택하여 Outpost에 로컬로 저장합니다. 이 옵션 설정은 Outposts 기반 RDS에만 적용됩니다. 자세한 내용은 [Amazon RDS on AWS Outposts DB 인스턴스 생성](rds-on-outposts.creating.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--backup-target` **API 파라미터:** `BackupTarget`  | MySQL, PostgreSQL, SQL Server | 
| 백업 기간: |  Amazon RDS가 자동으로 DB 인스턴스를 백업하는 기간입니다. 데이터베이스를 백업할 특정 기간을 지정하지 않으려면 기본값으로 **기본 설정 없음**을 사용합니다. 자세한 내용은 [백업 소개](USER_WorkingWithAutomatedBackups.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--preferred-backup-window` **API 파라미터:** `PreferredBackupWindow`  | 모두 | 
|  **인증 기관**  |  DB 인스턴스에서 사용하는 서버 인증서의 CA(인증 기관)입니다. 자세한 내용은 [SSL/TLS를 사용하여 DB 인스턴스 또는 클러스터 에 대한 연결 암호화](UsingWithRDS.SSL.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--ca-certificate-identifier` **RDS API 파라미터:** `CACertificateIdentifier`  |  모두  | 
| 문자 집합 |  DB 인스턴스에 대한 문자 세트입니다. DB 문자 집합에 대한 기본값 **AL32UTF8**은 Unicode 5.0 UTF-8 Universal 문자 집합을 나타냅니다. DB 인스턴스를 생성한 후에는 DB 문자 집합을 변경할 수 없습니다. 단일 테넌트 구성에서 기본이 아닌 DB 문자 집합은 CDB가 아니라 PDB에만 영향을 줍니다. 자세한 내용은 [CDB 아키텍처의 단일 테넌트 구성](Oracle.Concepts.CDBs.md#Oracle.Concepts.single-tenant) 섹션을 참조하세요. DB 문자 집합은 NCHAR 문자 집합이라고 하는 국가별 문자 집합과 다릅니다. DB 문자 집합과 달리 NCHAR 문자 집합은 데이터베이스 메타데이터에 영향을 주지 않고 NCHAR 데이터 형식(NCHAR, NVARCHAR2 및 NCLOB) 열에 대한 인코딩을 지정합니다. 자세한 내용은 [RDS for Oracle 문자 집합](Appendix.OracleCharacterSets.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--character-set-name` **API 파라미터:** `CharacterSetName`  | Oracle | 
| 콜레이션 |  DB 인스턴스에 대한 서버 수준 콜레이션입니다. 자세한 내용은 [Microsoft SQL Server의 서버 수준 콜레이션](Appendix.SQLServer.CommonDBATasks.Collation.md#Appendix.SQLServer.CommonDBATasks.Collation.Server) 섹션을 참조하세요.  |  **CLI 옵션:** `--character-set-name` **API 파라미터:** `CharacterSetName`  | SQL 서버 | 
| 스냅샷으로 태그 복사  |  이 옵션은 스냅샷을 생성할 때 DB 인스턴스 태그를 DB 스냅샷에 복사합니다. 자세한 내용은 [Amazon RDS 리소스에 태그 지정](USER_Tagging.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--copy-tags-to-snapshot` `--no-copy-tags-to-snapshot` **RDS API 파라미터:** `CopyTagsToSnapshot`  | 모두 | 
|  Database authentication(데이터베이스 인증  |  사용하려는 데이터베이스 인증 옵션입니다. 데이터베이스 암호로만 데이터베이스 사용자를 인증할 수 있도록 **Password authentication(암호 인증)**을 선택합니다. 사용자 및 역할을 통해 데이터베이스 암호 및 사용자 자격 증명으로 데이터베이스 사용자를 인증할 수 있도록 **Password and IAM DB authentication**(암호 및 IAM DB 인증)을 선택합니다. 자세한 내용은 [MariaDB, MySQL 및 PostgreSQL IAM 데이터베이스 인증](UsingWithRDS.IAMDBAuth.md) 섹션을 참조하세요. 이 옵션은 MySQL 및 PostgreSQL에 대해서만 지원됩니다. AWS Managed Microsoft AD로 생성한 Directory Service를 통해 데이터베이스 암호 및 Kerberos 인증으로 데이터베이스 사용자를 인증할 수 있도록 [**암호 및 Kerberos 인증(Password and Kerberos authentication)**]을 선택합니다. 그다음에는 디렉터리를 선택하거나 **새 디렉터리 생성**을 선택합니다. 자세한 내용은 다음 중 하나를 참조하십시오. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html)  |  ***IAM:*** **CLI 옵션:** `--enable-iam-database-authentication` `--no-enable-iam-database-authentication` **RDS API 파라미터:** `EnableIAMDatabaseAuthentication` ***Kerberos:*** **CLI 옵션:** `--domain` `--domain-iam-role-name` **RDS API 파라미터:** `Domain` `DomainIAMRoleName`  |  인증 유형에 따라 다름  | 
| 데이터베이스 관리 유형 |  환경을 사용자 지정할 필요가 없는 경우 **Amazon RDS**를 선택합니다. 데이터베이스, OS 및 인프라를 사용자 지정하려는 경우 **Amazon RDS Custom**을 선택합니다. 자세한 내용은 [Amazon RDS Custom](rds-custom.md) 섹션을 참조하세요.  |  CLI 및 API의 경우 데이터베이스 엔진 유형을 지정합니다.  |  Oracle SQL Server  | 
|  데이터베이스 포트  |  DB 인스턴스에 액세스하는 데 사용할 포트입니다. 기본 포트가 표시됩니다.  일부 기업에서는 방화벽이 기본 MariaDB, MySQL 및 PostgreSQL 포트에 대한 연결을 차단합니다. 이처럼 기업 방화벽이 기본 포트를 차단할 경우 DB 인스턴스에 다른 포트를 입력해야 합니다.   |  **CLI 옵션:** `--port` **RDS API 파라미터:** `Port`  | 모두 | 
|  DB 엔진 버전  |  사용할 데이터베이스 엔진의 버전입니다.  |  **CLI 옵션:** `--engine-version` **RDS API 파라미터:** `EngineVersion`  | 모두 | 
|  DB 인스턴스 클래스:  |  DB 인스턴스에 대한 구성입니다. 예를 들어, **db.t3.small** DB 인스턴스 클래스에는 2GiB 메모리, vCPU 2개, 가상 코어 1개, 가변 ECU 1개, 중간 정도의 I/O 용량이 있습니다. 가능하면 일반 쿼리 작업 세트가 메모리에 상주할 수 있을 정도로 큰 DB 인스턴스 클래스를 선택합니다. 작업 세트가 메모리에 상주할 경우 시스템의 디스크 쓰기가 불필요하여 성능이 향상됩니다. 자세한 내용은 [DB 인스턴스 클래스](Concepts.DBInstanceClass.md) 섹션을 참조하세요. RDS for Oracle에서 [**추가 메모리 구성 포함(Include additional memory configurations)**]을 선택할 수 있습니다. 이러한 구성은 vCPU에 대한 메모리 비율이 높도록 최적화되었습니다. 예를 들어, **db.r5.6xlarge.tpc2.mem4x**는 코어당 2개의 스레드(tpc2)가 있고 표준 db.r5.6xlarge DB 인스턴스의 메모리가 4배인 db.r5.8x DB 인스턴스입니다. 자세한 내용은 [RDS for Oracle DB 인스턴스 클래스](Oracle.Concepts.InstanceClasses.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--db-instance-class` **RDS API 파라미터:** `DBInstanceClass`  | 모두 | 
|  DB 인스턴스 식별자:  |  DB 인스턴스의 이름입니다. 온프레미스 서버와 동일한 방식으로 DB 인스턴스의 이름을 지정합니다. DB 인스턴스 식별자는 최대 63자의 영숫자 문자를 포함할 수 있으며 선택한 AWS 리전의 계정에 대해 고유해야 합니다.  |  **CLI 옵션:** `--db-instance-identifier` **RDS API 파라미터:** `DBInstanceIdentifier`  | 모두 | 
|  DB 파라미터 그룹:  |  DB 인스턴스의 파라미터 그룹입니다. 기본 파라미터 그룹을 사용하거나 사용자 지정 파라미터 그룹을 생성할 수 있습니다. RDS for Db2용 BYOL 모델을 사용하는 경우, DB 인스턴스를 만들기 전에 먼저 IBM Site ID 및 IBM Customer ID를 포함하는 사용자 지정 파라미터 그룹을 만들어야 합니다. 자세한 내용은 [Db2용 Bring Your Own License(BYOL)](db2-licensing.md#db2-licensing-options-byol) 섹션을 참조하세요. 자세한 내용은 [Amazon RDS의 파라미터 그룹](USER_WorkingWithParamGroups.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--db-parameter-group-name` **RDS API 파라미터:** `DBParameterGroupName`  | 모두 | 
|  DB 서브넷 그룹  | DB 클러스터에 사용할 DB 서브넷 그룹입니다.기존 DB 서브넷 그룹을 사용하려면 Choose existing(기존 항목 선택)을 선택합니다. 그런 다음 Existing DB subnet groups(기존 DB 서브넷 그룹) 드롭다운 목록에서 필요한 서브넷 그룹을 선택합니다.RDS가 호환되는 DB 서브넷 그룹을 선택하도록 하려면 **Automatic setup**(자동 설정)을 선택합니다. 해당 그룹이 없으면 RDS는 클러스터에 대한 새 서브넷 그룹을 생성합니다.자세한 내용은 [DB 서브넷 그룹을 사용한 작업](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.Subnets) 섹션을 참조하세요. |  **CLI 옵션:** `--db-subnet-group-name` **RDS API 파라미터:** `DBSubnetGroupName`  | 모두 | 
| 전용 로그 볼륨 |  전용 로그 볼륨(DLV)을 사용하여 데이터베이스 테이블이 들어 있는 볼륨과 분리된 스토리지 볼륨에 데이터베이스 트랜잭션 로그를 저장합니다. 자세한 내용은 [전용 로그 볼륨(DLV) 사용](USER_PIOPS.dlv.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--dedicated-log-volume` **RDS API 파라미터:** `DedicatedLogVolume`  | 모두 | 
| 삭제 방지 |  DB 인스턴스가 삭제되지 않도록 방지하려면, **삭제 방지를 활성화**합니다. AWS Management Console을 사용하여 프로덕션 DB 인스턴스를 생성할 경우 기본적으로 삭제 방지가 활성화됩니다. 자세한 내용은 [DB 인스턴스 삭제](USER_DeleteInstance.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--deletion-protection` `--no-deletion-protection` **RDS API 파라미터:** `DeletionProtection`  | 모두 | 
|  암호화  |  이 DB 인스턴스에 대해 유휴 암호화를 활성화하기 위한 [**Enable Encryption**]. 자세한 내용은 [Amazon RDS 리소스 암호화](Overview.Encryption.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--storage-encrypted` `--no-storage-encrypted` **RDS API 파라미터:** `StorageEncrypted`  | 모두 | 
|  확장 모니터링  |  DB 인스턴스가 실행되는 운영 체제에 대한 실시간 측정치 수집을 활성화하려면 [**Enable enhanced monitoring**]을 선택합니다. 자세한 내용은 [Enhanced Monitoring을 사용하여 OS 지표 모니터링](USER_Monitoring.OS.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--monitoring-interval` `--monitoring-role-arn` **RDS API 파라미터:** `MonitoringInterval` `MonitoringRoleArn`  | 모두 | 
|  엔진 유형  |  이 DB 인스턴스에 사용할 데이터베이스 엔진을 선택합니다.  |  **CLI 옵션:** `--engine` **RDS API 파라미터:** `Engine`  | 모두 | 
|  초기 데이터베이스 이름  |  DB 인스턴스에 있는 데이터베이스의 이름입니다. 이름을 입력하지 않으면 Amazon RDS가 DB 인스턴스(Oracle 및 PostgreSQL 제외)에서 데이터베이스를 생성하지 않습니다. 이름은 데이터베이스 엔진에서 예약한 단어일 수 없으며, DB 엔진에 따라 다른 제약 조건이 있습니다. Db2:  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html) MariaDB 및 MySQL: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html) Oracle: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html) PostgreSQL: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html)  |  **CLI 옵션:** `--db-name` **RDS API 파라미터:** `DBName`  | SQL Server를 제외한 모든 항목 | 
|  라이선스 |  라이선스 모델의 유효 값: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html)  |  **CLI 옵션:** `--license-model` **RDS API 파라미터:** `LicenseModel`  |  모두  | 
|  **로그 내보내기**  |  Amazon CloudWatch Logs에 게시할 데이터베이스 로그 파일의 유형입니다. 자세한 내용은 [Amazon CloudWatch Logs에 데이터베이스 로그 게시](USER_LogAccess.Procedural.UploadtoCloudWatch.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--enable-cloudwatch-logs-exports` **RDS API 파라미터:** `EnableCloudwatchLogsExports`  |  모두  | 
|  유지보수 윈도우  |  대기 중인 DB 인스턴스 설정 변경이 적용되기 위해 경과해야 하는 기간(30분)입니다. 이 시간이 중요하지 않은 경우 [**No Preference**]를 선택합니다. 자세한 내용은 [Amazon RDS 유지 관리 기간](USER_UpgradeDBInstance.Maintenance.md#Concepts.DBMaintenance) 섹션을 참조하세요.  |  **CLI 옵션:** `--preferred-maintenance-window` **RDS API 파라미터:** `PreferredMaintenanceWindow`  | 모두 | 
|  에서 마스터 보안 인증 정보 관리AWS Secrets Manager  |  Secrets Manager에서 보안 암호의 마스터 사용자 암호를 관리하려면 **AWS Secrets Manager에서 마스터 자격 증명 관리**를 선택합니다. 원하는 경우 보안 암호를 보호하는 데 사용할 KMS 키를 선택합니다. 자신의 계정에서 KMS 키를 선택하거나 다른 계정의 키를 입력할 수 있습니다. 자세한 내용은 [Amazon RDS 및 AWS Secrets Manager를 통한 암호 관리](rds-secrets-manager.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--manage-master-user-password \| --no-manage-master-user-password` `--master-user-secret-kms-key-id` **RDS API 파라미터:** `ManageMasterUserPassword` `MasterUserSecretKmsKeyId`  | 모두 | 
|  마스터 암호  |  마스터 사용자 계정의 암호입니다. 암호에 있는 인쇄 가능한 ASCII 문자(`/`, `"`, 공백 및 `@` 제외)의 수는 다음과 같습니다. 이는 DB 엔진에 따라 달라집니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html)  |  **CLI 옵션:** `--master-user-password` **RDS API 파라미터:** `MasterUserPassword`  | 모두 | 
|  Master username  |  모든 데이터베이스 권한을 사용해 DB 인스턴스에 로그인하기 위해 마스터 사용자 이름으로 사용할 이름입니다. 이름 지정 시 다음과 같은 제한 사항이 있습니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html) DB 인스턴스가 생성된 후에는 마스터 사용자 이름을 변경할 수 없습니다. Db2의 경우 자체 관리형 Db2 인스턴스 이름과 동일한 마스터 사용자 이름을 사용하는 것이 좋습니다. 마스터 사용자에게 부여된 권한에 대한 자세한 내용은 [마스터 사용자 계정 권한](UsingWithRDS.MasterAccounts.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--master-username` **RDS API 파라미터:** `MasterUsername`  | 모두 | 
| Microsoft SQL Server Windows 인증 |  **Microsoft SQL Server Windows 인증을 활성화**한 다음 권한이 있는 도메인 사용자가 Windows 인증을 사용하여 이 SQL Server 인스턴스로 권한을 부여할 수 있도록 허용할 **디렉터리를 찾습니다**.  |  **CLI 옵션:** `--domain` `--domain-iam-role-name` **RDS API 파라미터:** `Domain`  `DomainIAMRoleName`  |  SQL 서버  | 
|  다중 AZ 배포  |  장애 조치를 위해 다른 가용 영역에 DB 인스턴스의 수동 보조 복제본을 생성하려면 **Create a standby instance(대기 인스턴스를 생성)**를 선택합니다. 이때 고가용성을 유지하려면 프로덕션 워크로드를 위한 다중 AZ를 권장합니다. 개발 및 테스트의 경우 **Do not create a standby instance(대기 인스턴스를 생성하지 않음)**를 선택할 수 있습니다. 자세한 내용은 [Amazon RDS에 대한 다중 AZ 배포 구성 및 관리](Concepts.MultiAZ.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--multi-az` `--no-multi-az` **RDS API 파라미터:** `MultiAZ`  | 모두 | 
| 국가별 문자 집합(NCHAR) |  DB 인스턴스에 국가별 문자 집합으로, 일반적으로 NCHAR 문자 집합이라고 합니다. 국가별 문자 집합을 AL16UTF16(기본값) 또는 UTF-8로 설정할 수 있습니다. DB 인스턴스를 생성한 후에는 국가별 문자 집합을 변경할 수 없습니다. 국가별 문자 집합은 DB 문자 집합과 다릅니다. DB 문자 집합과 달리 국가별 문자 집합은 데이터베이스 메타데이터에 영향을 주지 않고 NCHAR 데이터 형식(NCHAR, NVARCHAR2 및 NCLOB) 열에 대한 인코딩을 지정합니다. 자세한 내용은 [RDS for Oracle 문자 집합](Appendix.OracleCharacterSets.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--nchar-character-set-name` **API 파라미터:** `NcharCharacterSetName`  | Oracle | 
|  네트워크 유형  |  DB 인스턴스에서 지원하는 IP 주소 지정 프로토콜입니다. **IPv4**(기본값) 리소스가 인터넷 프로토콜 버전 4 (IPv4) 주소 지정 프로토콜을 통해서만 DB 인스턴스와 통신할 수 있도록 지정합니다. **듀얼 스택 모드**리소스가 IPv4, 인터넷 프로토콜 버전 6 (IPv6) 또는 둘 다를 통해 DB 인스턴스와 통신할 수 있도록 지정합니다. IPv6 주소 지정 프로토콜을 통해 DB 인스턴스와 통신해야 하는 리소스가 있는 경우 이중 스택 모드를 사용합니다. 또한 IPv6 CIDR 블록을 지정한 DB 서브넷 그룹의 모든 서브넷과 연결해야 합니다. 자세한 내용은 [Amazon RDS IP 주소 지정](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.IP_addressing) 섹션을 참조하세요.  |  **CLI 옵션:** `--network-type` **RDS API 파라미터:** `NetworkType`  |  모두  | 
|  옵션 그룹  |  DB 인스턴스의 옵션 그룹입니다. 기본 옵션 그룹을 사용하거나 사용자 지정 옵션 그룹을 생성할 수 있습니다. 자세한 내용은 [옵션 그룹 작업](USER_WorkingWithOptionGroups.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--option-group-name` **RDS API 파라미터:** `OptionGroupName`  |  모두  | 
| 성능 개선 도우미 |  데이터베이스 성능을 분석하고 문제를 해결할 수 있도록 DB 인스턴스 로드를 모니터링하려면 **Performance Insights 활성화**를 선택합니다. 보존 기간을 선택하여 성능 개선 도우미 데이터 기록을 얼마나 유지할지 결정합니다. 보존 설정은 **기본값(7일)**입니다. 성능 데이터를 더 오래 보존하려면 1\$124개월을 지정하십시오. 보존 기간에 대한 자세한 내용은 [성능 개선 도우미의 요금 및 데이터 보존](USER_PerfInsights.Overview.cost.md) 섹션을 참조하세요. 이 데이터베이스 볼륨을 암호화하는 데 사용되는 키를 보호하는 데 사용할 KMS 키를 선택합니다. 자신의 계정에서 KMS 키를 선택하거나 다른 계정의 키를 입력할 수 있습니다. 자세한 내용은 [성능 개선 도우미를 통한 Amazon RDS 모니터링](USER_PerfInsights.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--enable-performance-insights` `--no-enable-performance-insights` `--performance-insights-retention-period` `--performance-insights-kms-key-id` **RDS API 파라미터:** `EnablePerformanceInsights` `PerformanceInsightsRetentionPeriod` `PerformanceInsightsKMSKeyId`  | Db2를 제외한 모든 항목 | 
|  **프로비저닝된 IOPS**  |  DB 인스턴스의 프로비저닝된 IOPS(초당 I/O 작업 수) 값입니다. 이 설정은 **스토리지 유형**에서 다음 중 하나를 선택한 경우에만 사용할 수 있습니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html) 자세한 내용은 [Amazon RDS DB 인스턴스 스토리지](CHAP_Storage.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--iops` **RDS API 파라미터:** `Iops`  |  모두  | 
|  공개 액세스(Public access  |  DB 인스턴스에 퍼블릭 IP 주소를 부여하려면(즉 VPC 외부에서 액세스할 수 있음) **예**를 선택합니다. 공개적으로 액세스가 가능하려면 DB 인스턴스도 VPC의 퍼블릭 서브넷에 있어야 합니다. VPC 내부에서만 DB 인스턴스에 액세스할 수 있게 하려면 [**No**]. 자세한 내용은 [VPC에 있는 DB 인스턴스를 인터넷에서 숨기기](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.Hiding) 섹션을 참조하세요. VPC 외부에서 DB 인스턴스에 연결하려면 DB 인스턴스에 공개적으로 액세스할 수 있어야 합니다. 또한 DB 인스턴스 보안 그룹의 인바운드 규칙을 사용하여 액세스 권한을 부여해야 하며, 다른 요구 사항도 충족해야 합니다. 자세한 내용은 [Amazon RDS DB 인스턴스에 연결할 수 없음](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting) 섹션을 참조하세요. DB 인스턴스에 공개적으로 액세스할 수 없는 경우 AWS Site-to-Site VPN 연결 또는 Direct Connect 연결을 사용하여 프라이빗 네트워크에서 액세스합니다. 자세한 내용은 [인터네트워크 트래픽 개인 정보](inter-network-traffic-privacy.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--publicly-accessible` `--no-publicly-accessible` **RDS API 파라미터:** `PubliclyAccessible`  | 모두 | 
| RDS 추가 지원 |  지원되는 메이저 엔진 버전이 RDS 표준 지원 종료 날짜를 지나서도 계속 실행되도록 하려면 **RDS 추가 지원 활성화**를 선택합니다. DB 클러스터를 생성할 때 Amazon RDS는 기본적으로 RDS 확장 지원을 사용합니다. RDS 표준 지원 종료일 후에 새 DB 인스턴스가 생성되지 않도록 하고 RDS 확장 지원에 대한 요금이 부과되지 않도록 하려면 이 설정을 비활성화하세요. 기존 DB 인스턴스에는 RDS 확장 지원 요금 시작일이 되기 전까지는 요금이 부과되지 않습니다. 자세한 내용은 [Amazon RDS를 사용한 Amazon RDS 추가 지원](extended-support.md) 섹션을 참조하세요. |  **CLI 옵션:** `--engine-lifecycle-support` **RDS API 파라미터:** `EngineLifecycleSupport`  |  MySQL PostgreSQL  | 
|  **RDS 프록시**  |  **Create an RDS Proxy**(RDS 프록시 생성)를 선택하여 DB 인스턴스의 프록시를 생성합니다. Amazon RDS는 프록시에 대한 IAM 역할과 Secrets Manager 암호를 자동으로 생성합니다. 자세한 내용은 [ Amazon RDS Proxy](rds-proxy.md) 섹션을 참조하세요.  |  DB 인스턴스를 생성할 때는 사용할 수 없습니다.  |  MariaDB MySQL PostgreSQL  | 
|  Storage autoscaling(스토리지 Autoscaling  |  **Enable storage autoscaling(스토리지 Autoscaling 활성화)**를 사용하면 필요할 경우 Amazon RDS가 스토리지를 자동으로 확장하여 DB 인스턴스의 스토리지 공간이 부족해지는 문제를 방지할 수 있습니다. **Maximum storage threshold(최대 스토리지 임계값)**를 사용하여 Amazon RDS가 DB 인스턴스의 스토리지를 자동으로 확장할 수 있는 상한선을 설정합니다. 기본값은 1,000GiB입니다. 자세한 내용은 [Amazon RDS 스토리지 Autoscaling을 사용한 용량 자동 관리](USER_PIOPS.Autoscaling.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--max-allocated-storage` **RDS API 파라미터:** `MaxAllocatedStorage`  | 모두 | 
|  **스토리지 처리량(throughput**  |  DB 인스턴스의 스토리지 처리량(throughput) 값입니다. 이 설정은 **스토리지 유형**으로 **범용 SSD(gp3)**를 선택한 경우에만 사용할 수 있습니다. 자세한 내용은 [gp3 스토리지(권장)](CHAP_Storage.md#gp3-storage) 섹션을 참조하세요.  |  **CLI 옵션:** `--storage-throughput` **RDS API 파라미터:** `StorageThroughput`  | 모두 | 
|  스토리지 유형  |  DB 인스턴스의 스토리지 유형입니다. **범용 SSD(gp3)**를 선택하면 **고급 설정**에서 프로비저닝된 IOPS 및 스토리지 처리량(throughput)을 추가로 프로비저닝할 수 있습니다. **프로비저닝된 IOPS SSD(io1)** 또는 **프로비저닝된 IOPS SSD(io2)**를 선택하는 경우 **프로비저닝된 IOPS** 값을 입력합니다. 자세한 내용은 [Amazon RDS 스토리지 유형](CHAP_Storage.md#Concepts.Storage) 섹션을 참조하세요.  |  **CLI 옵션:** `--storage-type` **RDS API 파라미터:** `StorageType`  | 모두 | 
| 추가 스토리지 볼륨  |  RDS for Oracle 또는 RDS for SQL Server DB 인스턴스에 최대 3개의 스토리지 볼륨을 추가할 수 있습니다. gp3 또는 io2 스토리지 유형을 사용하도록 각 추가 볼륨을 구성할 수 있습니다. 다른 할당된 스토리지, IOPS 및 처리량 설정을 지정하여 워크로드 요구 사항에 맞게 최적화할 수도 있습니다. 볼륨 이름을 `rdsdbdata2`, `rdsdbdata3` 또는 `rdsdbdata4`로 지정해야 합니다. 기본 볼륨과 추가 볼륨의 결합된 스토리지는 256TiB를 초과할 수 없습니다.  |  **CLI 옵션:** `--additional-storage-volumes` **RDS API 파라미터:** `AdditionalStorageVolumes`  | Oracle 및 SQL Server | 
| 서브넷 그룹  |  이 DB 인스턴스에 연결할 DB 서브넷 그룹입니다. 자세한 내용은 [DB 서브넷 그룹을 사용한 작업](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.Subnets) 섹션을 참조하세요.  |  **CLI 옵션:** `--db-subnet-group-name` **RDS API 파라미터:** `DBSubnetGroupName`  | 모두 | 
| 테넌트 데이터베이스 이름 |  Oracle 아키텍처의 다중 테넌트 구성에 있는 초기 PDB의 이름입니다. 이 설정은 **아키텍처 구성**으로 **다중 테넌트 구성**을 선택한 경우에만 사용할 수 있습니다. 테넌트 데이터베이스 이름은 이름이 `RDSCDB`인 CDB의 이름과 달라야 합니다. CDB 이름은 변경할 수 없습니다.  |  **CLI 옵션:** `--db-name` **RDS API 파라미터:** `DBName`  |  Oracle  | 
| 테넌트 데이터베이스 마스터 사용자 이름 |  모든 데이터베이스 권한을 사용해 테넌트 데이터베이스(PDB)에 로그인하기 위해 마스터 사용자 이름으로 사용할 이름입니다. 이 설정은 **아키텍처 구성**으로 **다중 테넌트 구성**을 선택한 경우에만 사용할 수 있습니다. 이름 지정 시 다음과 같은 제한 사항이 있습니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html) 다음을 수행할 수 없습니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.Settings.html)  |  **CLI 옵션:** `--master-username` **RDS API 파라미터:** `MasterUsername`  |  Oracle  | 
| 테넌트 데이터베이스 마스터 암호 |  테넌트 데이터베이스(PDB)의 마스터 사용자 계정 암호입니다. 이 설정은 **아키텍처 구성**으로 **다중 테넌트 구성**을 선택한 경우에만 사용할 수 있습니다. 암호는 8\$130자의 인쇄 가능한 ASCII 문자로 구성되어야 합니다(`/`, `"`, 공백 및 `@` 제외).  |  **CLI 옵션:** `--master-password` **RDS API 파라미터:** `MasterPassword`  |  Oracle  | 
| 테넌트 데이터베이스 문자 집합 |  초기 테넌트 데이터베이스의 문자 집합입니다. 이 설정은 **아키텍처 구성**으로 **다중 테넌트 구성**을 선택한 경우에만 사용할 수 있습니다. RDS for Oracle CDB 인스턴스만 지원됩니다. 테넌트 데이터베이스 문자 집합에 대한 기본값 **AL32UTF8**은 Unicode 5.0 UTF-8 Universal 문자 집합을 나타냅니다. CDB 문자 집합과 다른 테넌트 데이터베이스 문자 집합을 선택할 수 있습니다. 자세한 내용은 [RDS for Oracle 문자 집합](Appendix.OracleCharacterSets.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--character-set-name` **RDS API 파라미터:** `CharacterSetName`  |  Oracle  | 
| 테넌트 데이터베이스 내셔널 문자 집합 |  테넌트 데이터베이스의 내셔널 문자 집합으로, 일반적으로 `NCHAR` 문자 집합이라고 합니다. 이 설정은 **아키텍처 구성**으로 **다중 테넌트 구성**을 선택한 경우에만 사용할 수 있습니다. RDS for Oracle CDB 인스턴스만 지원됩니다. 국가별 문자 집합을 **AL16UTF16**(기본값) 또는 **UTF-8**로 설정할 수 있습니다. 테넌트 데이터베이스를 생성한 후에는 국가별 문자 집합을 변경할 수 없습니다. 테넌트 데이터베이스 내셔널 문자 집합은 테넌트 데이터베이스 문자 집합과 다릅니다. 내셔널 문자 집합은 `NCHAR` 데이터 유형(`NCHAR`, `NVARCHAR2` 및`NCLOB`)을 사용하는 열의 인코딩만 지정하고 데이터베이스 메타데이터에는 영향을 주지 않습니다. 자세한 내용은 [RDS for Oracle 문자 집합](Appendix.OracleCharacterSets.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--nchar-character-set-name` **API 파라미터:** `NcharCharacterSetName`  |  Oracle  | 
|  시간대  |  DB 인스턴스의 시간대입니다. 표준 시간대를 선택하지 않으면 DB 인스턴스는 기본 표준 시간대를 사용합니다. DB 인스턴스가 생성된 후에는 시간대를 변경할 수 없습니다. 자세한 내용은 [Amazon RDS for Db2 DB 인스턴스의 현지 시간대](db2-time-zone.md) 및 [Microsoft SQL Server DB 인스턴스의 현지 시간대](SQLServer.Concepts.General.TimeZone.md) 섹션을 참조하세요.  |  **CLI 옵션:** `--timezone` **RDS API 파라미터:** `Timezone`  |  Db2 SQL Server RDS Custom for SQL Server  | 
|  Virtual Private Cloud(VPC). |  이 DB 인스턴스와 연결할 Amazon VPC 서비스 기반 VPC입니다. 자세한 내용은 [Amazon VPC 및 Amazon RDS](USER_VPC.md) 섹션을 참조하세요.  |  CLI 및 API의 경우 VPC 보안 그룹 ID를 지정합니다.  | 모두 | 
|  VPC 보안 그룹(방화벽)  |  DB 인스턴스에 연결할 보안 그룹입니다. 자세한 내용은 [VPC 보안 그룹 개요](Overview.RDSSecurityGroups.md#Overview.RDSSecurityGroups.VPCSec) 섹션을 참조하세요.  |  **CLI 옵션:** `--vpc-security-group-ids` **RDS API 파라미터:** `VpcSecurityGroupIds`  | 모두 | 

# AWS CloudFormation을 사용하여 Amazon RDS 리소스 생성
<a name="creating-resources-with-cloudformation"></a>

Amazon RDS는 리소스 및 인프라를 생성하고 관리하는 데 소요되는 시간을 줄일 수 있도록 AWS 리소스를 모델링하고 설정하는 데 도움이 되는 서비스인 AWS CloudFormation과 통합됩니다. DB 인스턴스 및 DB 파라미터 그룹과 같이 원하는 모든 AWS 리소스(DB 클러스터 및 DB 클러스터 파라미터 그룹 를 설명하는 템플릿을 생성하고 CloudFormation은 해당 리소스를 자동으로 프로비저닝하고 구성합니다.

CloudFormation을 사용할 때 템플릿을 재사용하여 RDS 리소스를 일관되고 반복적으로 설정할 수 있습니다. 리소스를 한 번 설명한 후 여러 AWS 계정 및 리전에서 동일한 리소스를 반복적으로 프로비저닝할 수 있습니다.

## RDS과CloudFormation템플릿
<a name="working-with-templates"></a>

[CloudFormation 템플릿](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html)은 JSON 또는 YAML로 서식 지정된 텍스트 파일입니다. 이 템플릿은 CloudFormation 스택에서 프로비저닝할 리소스에 대해 설명합니다. JSON 또는 YAML에 익숙하지 않은 경우, CloudFormation Designer를 사용하면 CloudFormation 템플릿을 시작하는 데 도움이 됩니다. 자세한 내용은 *AWS CloudFormation 사용 설명서*에서 [CloudFormation Designer이란 무엇입니까?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/working-with-templates-cfn-designer.html)를 참조하세요.

RDS는 CloudFormation에서 리소스 생성을 지원합니다. 이러한 리소스에 대한 JSON 및 YAML 템플릿의 예를 비롯한 자세한 내용은 *AWS CloudFormation 사용 설명서*에서 [RDS 리소스 유형 참조](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_RDS.html)를 참조하세요.

## CloudFormation에 대해 자세히 알아보기
<a name="learn-more-cloudformation"></a>

CloudFormation에 대한 자세한 내용은 다음 리소스를 참조하세요.
+ [AWS CloudFormation](https://aws.amazon.com/cloudformation/)
+ [AWS CloudFormation 사용자 안내서](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)
+ [CloudFormation API 참조](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/Welcome.html)
+ [AWS CloudFormation 명령줄 인터페이스 사용자 안내서](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/what-is-cloudformation-cli.html)

# Amazon RDS DB 인스턴스에 연결
<a name="CHAP_CommonTasks.Connect"></a>

 DB 인스턴스에 연결하려면 먼저 DB 인스턴스를 생성해야 합니다. 자세한 내용은 [Amazon RDS DB 인스턴스 생성](USER_CreateDBInstance.md) 섹션을 참조하세요. Amazon RDS가 DB 인스턴스를 프로비저닝한 후에는 해당 DB 엔진용 표준 클라이언트 애플리케이션 또는 유틸리티를 사용하여 DB 인스턴스에 연결합니다. 연결 문자열에는 호스트 파라미터로 DB 인스턴스 엔드포인트의 DNS 주소를 지정합니다. 또한 DB 인스턴스 엔드포인트의 포트 번호를 포트 파라미터로 지정합니다.

Amazon RDS DB 인스턴스의 연결 정보 또는 VPC의 DB 인스턴스에 액세스하기 위한 시나리오를 찾는 방법에 대한 자세한 내용은 다음 주제를 참조하세요.
+ [Amazon RDS DB 인스턴스에 대한 연결 정보 찾기](CHAP_CommonTasks.Connect.EndpointAndPort.md)
+ [VPC에서 DB 인스턴스에 액세스하는 시나리오](CHAP_CommonTasks.Connect.ScenariosForAccess.md)

# Amazon RDS DB 인스턴스에 대한 연결 정보 찾기
<a name="CHAP_CommonTasks.Connect.EndpointAndPort"></a>

DB 인스턴스의 연결 정보에는 엔드포인트, 포트 및 유효한 데이터베이스 사용자(예: 마스터 사용자)가 포함됩니다. 예를 들어 MySQL DB 인스턴스의 엔드포인트 값이 `mydb.123456789012.us-east-1.rds.amazonaws.com`이라고 가정합니다. 이 경우 포트 값은 `3306`이고 데이터베이스 사용자는 `admin`입니다. 이 정보를 바탕으로 연결 문자열에 다음 값을 지정합니다.
+ 호스트 또는 호스트 이름 또는 DNS 이름에 `mydb.123456789012.us-east-1.rds.amazonaws.com`을 지정합니다.
+ 포트에 대해 `3306`을 지정합니다.
+ 사용자에 `admin`을 지정합니다.

엔드포인트는 DB 인스턴스마다 고유하며 포트 및 사용자 값이 다를 수 있습니다. 다음 목록은 각 DB 엔진의 가장 일반적인 포트를 보여 줍니다.
+ Db2 - 50,000
+ MariaDB – 3306
+ Microsoft SQL Server – 1433
+ MySQL – 3306
+ Oracle – 1521
+ PostgreSQL – 5432

DB 인스턴스에 연결하려면 DB 엔진에 대해 임의의 클라이언트를 사용합니다. 예를 들어 mysql 유틸리티를 사용하여 MariaDB 또는 MySQL DB 인스턴스에 연결할 수 있습니다. Microsoft SQL Server Management Studio를 사용하여 SQL Server DB 인스턴스에 연결할 수 있습니다. Oracle SQL Developer를 사용하여 Oracle DB 인스턴스에 연결할 수 있습니다. 마찬가지로, psql 명령줄 유틸리티를 사용하여 PostgreSQL DB 인스턴스에 연결할 수 있습니다.

DB 인스턴스에 대한 연결 정보를 찾으려면 AWS Management Console을 사용합니다. 또한 AWS Command Line Interface(AWS CLI) [describe-db-instances](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) 명령 또는 RDS API [DescribeDBInstances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html) 작업을 사용할 수도 있습니다.

## 콘솔
<a name="CHAP_CommonTasks.Connect.EndpointAndPort.Console"></a>

**AWS Management Console에서 DB 인스턴스에 대한 연결 정보를 찾으려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 [**데이터베이스(Database)**] 를 선택하여 DB 인스턴스 목록을 표시합니다.

1. DB 인스턴스의 이름을 선택하여 세부 정보를 표시합니다.

1. **Connectivity & security(연결 및 보안)** 탭에서 엔드포인트를 복사합니다. 또한 포트 번호를 적어 둡니다. DB 인스턴스에 연결하려면 엔드포인트와 포트 번호가 모두 필요합니다.  
![\[DB 인스턴스의 엔드포인트 및 포트\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/images/endpoint-port.png)

1. 마스터 사용자 이름을 찾아야 하는 경우 [**구성(Configuration)**] 탭을 선택하고 [**마스터 사용자 이름(Master username)**] 값을 확인합니다.

## AWS CLI
<a name="CHAP_CommonTasks.Connect.EndpointAndPort.CLI"></a>

AWS CLI를 사용하여 DB 인스턴스의 연결 정보를 찾으려면 [describe-db-instances](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-instances.html) 명령을 호출합니다. 이 호출에서 DB 인스턴스 ID, 엔드포인트, 포트 및 마스터 사용자 이름을 쿼리합니다.

대상 LinuxmacOS, 또는Unix:

```
aws rds describe-db-instances \
  --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"
```

Windows의 경우:

```
aws rds describe-db-instances ^
  --query "*[].[DBInstanceIdentifier,Endpoint.Address,Endpoint.Port,MasterUsername]"
```

다음과 유사하게 출력되어야 합니다.

```
[
    [
        "mydb",
        "mydb.123456789012.us-east-1.rds.amazonaws.com",
        3306,
        "admin"
    ],
    [
        "myoracledb",
        "myoracledb.123456789012.us-east-1.rds.amazonaws.com",
        1521,
        "dbadmin"
    ],
    [
        "mypostgresqldb",
        "mypostgresqldb.123456789012.us-east-1.rds.amazonaws.com",
        5432,
        "postgresadmin"
    ]
]
```

## RDS API
<a name="CHAP_CommonTasks.Connect.EndpointAndPort.API"></a>

Amazon RDS API를 사용하여 DB 인스턴스의 연결 정보를 찾으려면 [DescribeDBInstances](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBInstances.html) 작업을 호출합니다. 출력에서 엔드포인트 주소, 엔드포인트 포트 및 마스터 사용자 이름의 값을 찾습니다.

# VPC에서 DB 인스턴스에 액세스하는 시나리오
<a name="CHAP_CommonTasks.Connect.ScenariosForAccess"></a>

Amazon Virtual Private Cloud(Amazon VPC)를 사용하여 Amazon RDS DB 인스턴스와 같은 AWS 리소스를 Virtual Private Cloud(VPC)에서 시작할 수 있습니다. Amazon VPC를 사용하면 가상 네트워킹 환경을 완벽하게 제어할 수 있습니다. 자기만의 IP 주소 범위를 선택하고, 서브넷을 생성하고, 라우팅 및 액세스 제어 목록을 구성할 수 있습니다.

VPC 보안 그룹은 VPC 내부의 DB 인스턴스에 대한 액세스를 제어합니다. 각 VPC 보안 그룹 규칙을 설정하면 특정 소스가 해당 VPC 보안 그룹과 연결되어 있는 VPC의 DB 인스턴스에 액세스할 수 있습니다. 소스는 주소 범위(예: 203.0.113.0/24) 또는 다른 VPC 보안 그룹일 수 있습니다. VPC 보안 그룹을 소스로 지정하면 소스 VPC 보안 그룹을 사용하는 모든 인스턴스(일반적으로 애플리케이션 서버)에서 수신 트래픽이 허용됩니다.

DB 인스턴스에 연결하기 전에 사용 사례에 맞게 VPC를 구성합니다. 다음은 VPC에서 DB 인스턴스에 액세스하는 일반적인 시나리오입니다.
+ **동일한 VPC의 Amazon EC2 인스턴스가 VPC의 – DB 인스턴스에 액세스** VPC에서 DB 인스턴스의 일반적인 사용 사례는 동일한 VPC의 EC2 인스턴스에서 실행 중인 애플리케이션 서버와 데이터를 공유하는 것입니다. EC2 인스턴스는 DB 인스턴스와 상호 작용하는 애플리케이션을 통해 웹 서버를 실행할 수 있습니다.
+ **다른 VPC의 EC2 인스턴스가 VPC의 DB 인스턴스에 액세스** – 경우에 따라 액세스하는 데 사용 중인 EC2 인스턴스와 다른 VPC에 DB 인스턴스가 있을 수 있습니다. 그렇다면 VPC 피어링을 사용하여 DB 인스턴스에 액세스할 수 있습니다.
+ **클라이언트 애플리케이션이 인터넷을 통해 VPC의 DB 인스턴스에 액세스** – 클라이언트 애플리케이션에서 인터넷을 통해 VPC의 DB 인스턴스에 액세스하려면, 단일 퍼블릭 서브넷으로 VPC를 구성합니다. 인터넷을 통한 통신을 활성화하도록 인터넷 게이트웨이도 구성합니다.

  VPC 외부에서 DB 인스턴스에 연결하려면 DB 인스턴스에 공개적으로 액세스할 수 있어야 합니다. 또한 DB 인스턴스 보안 그룹의 인바운드 규칙을 사용하여 액세스 권한을 부여해야 하며, 기타 요구 사항을 충족해야 합니다. 자세한 내용은 [Amazon RDS DB 인스턴스에 연결할 수 없음](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting) 단원을 참조하십시오.
+ **프라이빗 네트워크로 액세스하는 VPC의 DB 인스턴스** - DB 인스턴스에 공개적으로 액세스할 수 없는 경우 다음 옵션 중 하나를 사용하여 프라이빗 네트워크에서 액세스할 수 있습니다.
  + AWS Site-to-Site VPN 연결
  + Direct Connect 연결
  + AWS Client VPN 연결

자세한 내용은 [VPC에서 DB 인스턴스에 액세스하는 시나리오](USER_VPC.Scenarios.md) 단원을 참조하십시오.

## AWS 드라이버를 사용하여 DB 인스턴스에 연결
<a name="RDS.Connecting.Drivers"></a>

더 빠른 전환 및 장애 조치 시간, AWS Secrets Manager, AWS Identity and Access Management(IAM) 및 페더레이션 ID를 사용한 인증을 지원하도록 설계된 AWS 드라이버 제품군입니다. AWS 드라이버는 DB 인스턴스 상태 모니터링과 인스턴스 토폴로지 파악을 통해 새 기본 인스턴스를 결정합니다. 이 접근 방식은 전환 및 장애 조치 시간을 오픈 소스 드라이버의 경우 수십 초였던 것에 비해 10초 미만으로 단축합니다.

다음 표에는 각 드라이버에 지원되는 기능이 나와 있습니다. 새로운 서비스 기능이 도입됨에 따라 AWS 드라이버 제품군의 목표는 이러한 서비스 기능에 대한 지원을 기본 제공하는 것입니다.


| 기능 | [AWS JDBC 드라이버](https://github.com/awslabs/aws-advanced-jdbc-wrapper) | [AWS Python 드라이버](https://github.com/awslabs/aws-advanced-python-wrapper) | [MySQL용 AWS ODBC 드라이버](https://github.com/aws/aws-mysql-odbc) | 
| --- | --- | --- | --- | 
| 장애 조치 지원 | [예](https://github.com/awslabs/aws-advanced-jdbc-wrapper/blob/main/docs/using-the-jdbc-driver/using-plugins/UsingTheFailoverPlugin.md) | [예](https://github.com/awslabs/aws-advanced-python-wrapper/blob/main/docs/using-the-python-driver/using-plugins/UsingTheFailoverPlugin.md) | [예](https://github.com/aws/aws-mysql-odbc/blob/main/docs/using-the-aws-driver/UsingTheAwsDriver.md#failover-process) | 
| 향상된 장애 조치 모니터링 | [예](https://github.com/awslabs/aws-advanced-jdbc-wrapper/blob/main/docs/using-the-jdbc-driver/using-plugins/UsingTheHostMonitoringPlugin.md) | [예](https://github.com/awslabs/aws-advanced-python-wrapper/blob/main/docs/using-the-python-driver/using-plugins/UsingTheHostMonitoringPlugin.md) | [예](https://github.com/aws/aws-mysql-odbc/blob/main/docs/using-the-aws-driver/HostMonitoring.md#enhanced-failure-monitoring) | 
| 읽기/쓰기 분할 | [예](https://github.com/awslabs/aws-advanced-jdbc-wrapper/blob/main/docs/using-the-jdbc-driver/using-plugins/UsingTheReadWriteSplittingPlugin.md) | [예](https://github.com/awslabs/aws-advanced-python-wrapper/blob/main/docs/using-the-python-driver/using-plugins/UsingTheReadWriteSplittingPlugin.md) | 아니요 | 
| 드라이버 메타데이터 연결 | [예](https://github.com/awslabs/aws-advanced-jdbc-wrapper/blob/main/docs/using-the-jdbc-driver/using-plugins/UsingTheDriverMetadataConnectionPlugin.md) | 해당 사항 없음 | 해당 사항 없음 | 
| 원격 측정 | [예](https://github.com/awslabs/aws-advanced-jdbc-wrapper/blob/main/docs/using-the-jdbc-driver/Telemetry.md) | [예](https://github.com/aws/aws-advanced-python-wrapper/blob/main/docs/using-the-python-driver/Telemetry.md) | 아니요 | 
| Secrets Manager | [예](https://github.com/awslabs/aws-advanced-jdbc-wrapper/blob/main/docs/using-the-jdbc-driver/using-plugins/UsingTheAwsSecretsManagerPlugin.md) | [예](https://github.com/awslabs/aws-advanced-python-wrapper/blob/main/docs/using-the-python-driver/using-plugins/UsingTheAwsSecretsManagerPlugin.md) | [예](https://github.com/aws/aws-mysql-odbc/blob/main/docs/using-the-aws-driver/UsingTheAwsDriver.md#secrets-manager-authentication) | 
| IAM 인증 | [예](https://github.com/awslabs/aws-advanced-jdbc-wrapper/blob/main/docs/using-the-jdbc-driver/using-plugins/UsingTheIamAuthenticationPlugin.md) | [예](https://github.com/awslabs/aws-advanced-python-wrapper/blob/main/docs/using-the-python-driver/using-plugins/UsingTheIamAuthenticationPlugin.md) | [예](https://github.com/aws/aws-mysql-odbc/blob/main/docs/using-the-aws-driver/UsingTheAwsDriver.md#iam-authentication) | 
| 페더레이션 ID(AD FS) | [예](https://github.com/awslabs/aws-advanced-jdbc-wrapper/blob/main/docs/using-the-jdbc-driver/using-plugins/UsingTheFederatedAuthPlugin.md) | [예](https://github.com/awslabs/aws-advanced-python-wrapper/blob/main/docs/using-the-python-driver/using-plugins/UsingTheFederatedAuthenticationPlugin.md) | 아니요 | 
| 페더레이션 ID(Okta) | [예](https://github.com/awslabs/aws-advanced-jdbc-wrapper/blob/main/docs/using-the-jdbc-driver/using-plugins/UsingTheFederatedAuthPlugin.md) | 아니요 | 아니요 | 
| 다중 AZ DB 클러스터 | [예](https://github.com/awslabs/aws-advanced-jdbc-wrapper/blob/main/docs/using-the-jdbc-driver/SupportForRDSMultiAzDBCluster.md) | [예](https://github.com/aws/aws-advanced-python-wrapper/blob/main/docs/using-the-python-driver/SupportForRDSMultiAzDBCluster.md) | 아니요 | 

AWS 드라이버에 대한 자세한 내용은 [RDS for MariaDB](MariaDB.Connecting.Drivers.md#MariaDB.Connecting.JDBCDriver), [RDS for MySQL](MySQL.Connecting.Drivers.md#MySQL.Connecting.JDBCDriver) 또는 [RDS for PostgreSQL](PostgreSQL.Connecting.JDBCDriver.md) DB 인스턴스에 대한 해당 언어 드라이버를 참조하세요.

**참고**  
RDS for MariaDB에서 지원되는 유일한 기능은 AWS Secrets Manager, AWS Identity and Access Management(IAM) 및 페더레이션 ID를 사용한 인증입니다.

## 특정 DB 엔진을 실행하는 DB 인스턴스에 연결
<a name="CHAP_CommonTasks.Connect.DBEngine"></a>

특정 DB 엔진을 실행 중인 DB 인스턴스에 연결하는 방법을 알아보려면 DB 엔진의 지침을 따르세요.
+ [RDS for Db2](USER_ConnectToDb2DBInstance.md)
+ [RDS for MariaDB](USER_ConnectToMariaDBInstance.md)
+ [RDS for SQL Server](USER_ConnectToMicrosoftSQLServerInstance.md)
+ [RDS for MySQL](USER_ConnectToInstance.md)
+ [RDS for Oracle](USER_ConnectToOracleInstance.md)
+ [RDS for PostgreSQL](USER_ConnectToPostgreSQLInstance.md)

## RDS Proxy와의 연결 관리
<a name="CHAP_CommonTasks.Connect.RDSProxy"></a>

또한 Amazon RDS 프록시를 사용하여 RDS for MariaDB, RDS for Microsoft SQL Server, RDS for MySQL, RDS for PostgreSQL DB 인스턴스에 대한 연결을 관리할 수 있습니다. RDS Proxy를 사용하면 애플리케이션이 데이터베이스 연결을 풀링하고 공유하여 확장성을 향상할 수 있습니다. 자세한 내용은 [ Amazon RDS Proxy](rds-proxy.md) 섹션을 참조하세요.

## 데이터베이스 인증 옵션
<a name="CHAP_CommonTasks.Connect.DatabaseAuthentication"></a>

Amazon RDS는 데이터베이스 사용자를 인증하는 다음과 같은 방법을 지원합니다.
+ **암호 인증** – DB 인스턴스가 모든 사용자 계정 관리 작업을 수행합니다. 여러분은 사용자를 생성하고 SQL 문을 사용하여 암호를 지정합니다. 사용할 수 있는 SQL 문은 DB 엔진에 따라 다릅니다.
+ **AWS Identity and Access Management(IAM)데이터베이스 인증** - DB 인스턴스에 연결할 때 암호를 사용할 필요가 없습니다. 대신에 인증 토큰을 사용합니다.
+ **Kerberos 인증** – Kerberos 및 Microsoft Active Directory를 통해 데이터베이스 사용자의 외부 인증을 사용합니다. Kerberos는 티켓과 대칭 키 암호화를 사용하여 네트워크를 통해 암호를 전송할 필요가 없는 네트워크 인증 프로토콜입니다. Kerberos는 Active Directory에 내장되어 있으며 데이터베이스와 같은 네트워크 리소스에 대해 사용자를 인증하도록 설계되었습니다.

IAM 데이터베이스 인증 및 Kerberos 인증은 특정 DB 엔진 및 버전에만 사용할 수 있습니다.

자세한 내용은 [Amazon RDS 를 사용한 데이터베이스 인증](database-authentication.md) 섹션을 참조하세요.

## 암호화된 연결
<a name="CHAP_CommonTasks.Connect.EncryptedConnections"></a>

애플리케이션에서 SSL(Secure Socket Layer) 또는 TLS(전송 계층 보안)를 사용하여 DB 인스턴스에 대한 연결을 암호화할 수 있습니다. 각 DB 엔진에는 SSL/TLS를 구현하기 위한 고유한 프로세스가 있습니다. 자세한 내용은 [SSL/TLS를 사용하여 DB 인스턴스 또는 클러스터 에 대한 연결 암호화](UsingWithRDS.SSL.md) 섹션을 참조하세요.

# 옵션 그룹 작업
<a name="USER_WorkingWithOptionGroups"></a>

DB 엔진 중에는 데이터와 데이터베이스를 더욱 쉽게 관리할 뿐만 아니라 데이터베이스 보안을 더욱 강화한 추가 기능을 가진 엔진도 있습니다. Amazon RDS는 옵션 그룹을 사용하여 이러한 기능을 활성화하고 구성합니다. *옵션 그룹*은 Amazon RDS DB 인스턴스에서 사용 가능한 옵션이라는 기능을 지정할 수 있습니다. 옵션은 여러 설정을 통해 옵션의 활용 방식을 지정합니다. 이후 DB 인스턴스와 옵션 그룹을 연동시키면 지정한 옵션과 옵션 설정이 연동된 DB 인스턴스에서 활성화됩니다.

 Amazon RDS는 다음 데이터베이스 엔진 옵션을 지원합니다.


****  

| 데이터베이스 엔진 | 관련 설명서 | 
| --- | --- | 
|  `Db2`  |  [RDS for Db2 DB 인스턴스 옵션](Db2.Options.md)  | 
|  `MariaDB`  |  [MariaDB 데이터베이스 엔진을 위한 옵션](Appendix.MariaDB.Options.md)  | 
|  `Microsoft SQL Server`  |  [Microsoft SQL Server 데이터베이스 엔진의 옵션](Appendix.SQLServer.Options.md)  | 
|  `MySQL`  |  [MySQL DB 인스턴스 옵션](Appendix.MySQL.Options.md)  | 
|  `Oracle`  |  [Oracle DB 인스턴스에 옵션 추가](Appendix.Oracle.Options.md)  | 
|  `PostgreSQL`  |  PostgreSQL은 옵션 및 옵션 그룹을 사용하지 않습니다. PostgreSQL은 확장 및 모듈을 사용하여 추가 기능을 제공합니다. 자세한 내용은 [지원되는 PostgreSQL 확장 버전](PostgreSQL.Concepts.General.FeatureSupport.Extensions.md) 섹션을 참조하세요.  | 

## 옵션 그룹 개요
<a name="Overview.OptionGroups"></a>

Amazon RDS는 새로운 DB 인스턴스마다 비어있는 기본 옵션 그룹을 제공합니다. 이 기본 옵션 그룹은 수정하거나 삭제할 수 없지만, 생성되는 새로운 옵션 그룹은 기본 옵션 그룹에서 해당 설정을 가져옵니다. 옵션을 DB 인스턴스에 적용하려면 다음을 수행해야 합니다.

1. 새 옵션 그룹을 생성하거나 기존 옵션 그룹을 복사 또는 수정합니다.

1. 하나 이상의 옵션을 옵션 그룹에 추가합니다.

1. 옵션 그룹을 DB 인스턴스에 연동시킵니다.

   옵션 그룹을 DB 인스턴스와 연결하려면 DB 인스턴스를 수정합니다. 자세한 내용은 [Amazon RDS DB 인스턴스 수정](Overview.DBInstance.Modifying.md) 섹션을 참조하세요.

DB 인스턴스와 DB 스냅샷은 모두 옵션 그룹과 연동시킬 수 있습니다. 어떤 경우에는 DB 스냅샷에서 복원하거나 DB 인스턴스에 대해 특정 시점으로의 복원을 수행할 수 있습니다. 이 경우 DB 스냅샷 또는 DB 인스턴스에 연결된 옵션 그룹은 기본적으로 복원된 DB 인스턴스와 연결됩니다. 다른 옵션 그룹을 복구된 DB 인스턴스와 연동시킬 수 있습니다. 다만 새로운 옵션 그룹에는 원래 옵션 그룹에 포함되었던 지속적 또는 영구적 옵션이 있어야 합니다. 지속적이거나 영구적인 옵션은 다음과 같이 설명됩니다.

DB 인스턴스에서 옵션을 실행하려면 추가 메모리가 필요합니다. 따라서 DB 인스턴스의 현재 용도에 따라 옵션 사용을 위해 대용량 인스턴스를 시작해야 하는 경우가 있을 수 있습니다. 예를 들어 Oracle Enterprise Manager Database Control은 약 300MB의 RAM을 사용합니다. 스몰 DB 인스턴스에 대해 이 옵션을 활성화할 경우 성능 문제 또는 메모리 부족 오류가 발생할 수 있습니다.

### 지속적이거나 영구적인 옵션
<a name="Overview.OptionGroups.Permanent"></a>

두 가지 유형인 지속적이거나 영구적인 옵션은 옵션 그룹에 추가할 때 세심한 주의가 필요합니다.

DB 인스턴스가 이 옵션 그룹과 연결되어 있는 동안에는 지속적인 옵션을 해당 옵션 그룹에서 제거할 수 없습니다. 지속적인 옵션의 한 가지 예는 Microsoft SQL Server Transparent Data Encryption(TDE)을 위한 TDE 옵션입니다. 옵션 그룹에서 지속적인 옵션을 제거하려면 먼저 모든 DB 인스턴스를 옵션 그룹에서 연동 해제해야 합니다. 어떤 경우에는 DB 스냅샷에서 복원 또는 특정 시점으로의 복원을 수행할 수 있습니다. 이러한 경우 해당 DB 스냅샷과 연결되어 있는 옵션 그룹에 지속적인 옵션이 포함된 경우에는 복원된 DB 인스턴스만 이 옵션 그룹과 연결할 수 있습니다.

반면 Oracle Advanced Security TDE를 위한 TDE 옵션처럼 영구적인 옵션은 옵션 그룹에서 절대로 제거할 수 없습니다. 영구적인 옵션을 사용 중인 DB 인스턴스의 옵션 그룹은 변경할 수 있습니다. 그러나 DB 인스턴스에 연결된 옵션 그룹에는 동일한 영구 옵션이 포함되어야 합니다. 어떤 경우에는 DB 스냅샷에서 복원 또는 특정 시점으로의 복원을 수행할 수 있습니다. 이러한 경우 해당 DB 스냅샷과 연결되어 있는 옵션 그룹에 영구적인 옵션이 포함된 경우에는 옵션 그룹이 있는 복원된 DB 인스턴스만 이 영구 옵션과 연결할 수 있습니다.

Oracle DB 인스턴스의 경우 `Timezone` 또는 `OLS` 옵션(또는 둘 다)이 있는 공유 DB 스냅샷을 복사할 수 있습니다. 이렇게 하려면 DB 스냅샷을 복사할 때 이 옵션이 포함된 대상 옵션 그룹을 지정하십시오. OLS 옵션은 Oracle 버전 12.2 이상을 실행하는 Oracle DB 인스턴스에 대해서만 영구적이고 지속적입니다. 이러한 옵션에 대한 자세한 내용은 [Oracle 시간대](Appendix.Oracle.Options.Timezone.md) 및 [Oracle 레이블 보안](Oracle.Options.OLS.md) 단원을 참조하세요.

### VPC 고려 사항
<a name="Overview.OptionGroups.Platform"></a>

DB 인스턴스와 연결된 옵션 그룹은 DB 인스탄스의 VPC에도 연결됩니다. 즉, 인스턴스를 다른 VPC로 복원하려고 하면 DB 인스턴스에 할당된 옵션 그룹을 사용할 수 없습니다. DB 인스턴스를 다른 VPC로 복원하는 경우 다음 중 하나를 수행할 수 있습니다.
+ 기본 옵션 그룹을 해당 DB 인스턴스에 배정.
+ 해당 VPC에 연결된 옵션 그룹을 할당합니다.
+ 새 옵션 그룹을 생성하여 해당 DB 인스턴스에 배정.

Oracle TDE와 같은 지속적 또는 영구적 옵션의 경우 새 옵션 그룹을 생성해야 합니다. 이 옵션 그룹에는 DB 인스턴스를 다른 VPC로 복원할 때 지속적 또는 영구적 옵션을 포함해야 합니다.

옵션 특성은 옵션 설정에 따라 달라집니다. 예를 들어 Oracle 고급 보안 옵션인 `NATIVE_NETWORK_ENCRYPTION`은 DB 인스턴스로 전송 및 수신되는 네트워크 트래픽에 암호화 알고리즘을 지정할 수 있는 설정이 있습니다. 옵션 설정 중에는 Amazon RDS 사용에 최적화하여 변경할 수 없는 설정도 있습니다.

### 함께 사용할 수 없는 옵션
<a name="Overview.OptionGroups.Exclusive"></a>

일부 옵션은 함께 사용할 수 없습니다. 한 옵션 또는 다른 옵션을 사용할 수 있지만 두 옵션을 동시에 사용할 수 없습니다. 함께 사용할 수 없는 옵션은 다음과 같습니다.
+ [Oracle Enterprise Manager Database Express](Appendix.Oracle.Options.OEM_DBControl.md), , 및 [Oracle Management Agent for Enterprise Manager Cloud Control](Oracle.Options.OEMAgent.md) 
+ [Oracle 기본 네트워크 암호화](Appendix.Oracle.Options.NetworkEncryption.md), , 및 [Oracle 보안 소켓 Layer](Appendix.Oracle.Options.SSL.md) 

## 옵션 그룹 생성
<a name="USER_WorkingWithOptionGroups.Create"></a>

기본 옵션 그룹에서 설정을 가져오는 새 옵션 그룹을 생성할 수 있습니다. 그런 다음, 하나 이상의 옵션을 새 옵션 그룹에 추가합니다. 아니면 이미 기존 옵션 그룹이 있는 경우에는 기존 옵션 그룹과 모든 옵션을 새 옵션 그룹에 복사할 수 있습니다. 자세한 내용은 [옵션 그룹 생성](#USER_WorkingWithOptionGroups.Copy) 단원을 참조하십시오.

생성된 새 옵션 그룹에는 옵션이 없습니다. 옵션을 옵션 그룹에 추가하는 방법을 배우려면 [옵션 그룹에 옵션 추가](#USER_WorkingWithOptionGroups.AddOption) 단원을 참조하십시오. 원하는 옵션을 추가했다면 이제 옵션 그룹을 DB 인스턴스에 연동시킬 수 있습니다. 이렇게 하면 DB 인스턴스에서 옵션을 사용할 수 있습니다. 옵션 그룹과 DB 인스턴스의 연동에 대한 자세한 내용은 [옵션 그룹 작업](#USER_WorkingWithOptionGroups)에서 해당 엔진의 설명서를 참조하세요.

### 콘솔
<a name="USER_WorkingWithOptionGroups.Create.Console"></a>

 옵션 그룹을 생성하는 한 가지 방법은 AWS Management Console을 사용하는 것입니다.

**콘솔을 이용하여 새 옵션 그룹을 생성하려면,**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **옵션 그룹**을 선택합니다.

1. **그룹 생성**을 선택합니다.

1. **보안 그룹 생성** 창에서 다음과 같이 합니다.

   1. [**이름(Name)**]에 AWS 계정 내에서 쉽게 식별할 수 있는 옵션 그룹 이름을 입력합니다. 이름은 글자, 숫자 및 하이픈만 사용 가능합니다.

   1. **Description**에 옵션 그룹에 대한 간략한 설명을 입력합니다. 이 설명은 표시 용도로만 사용됩니다.

   1. **Engine**에서 원하는 DB 엔진을 선택합니다.

   1. **메이저 엔진 버전**에서 DB 엔진의 원하는 메이저 버전을 선택합니다.

1. 계속하려면 **생성**을 선택합니다. 작업을 취소하려면 **Cancel**을 선택합니다.

### AWS CLI
<a name="USER_WorkingWithOptionGroups.Create.CLI"></a>

옵션 그룹을 생성하려면 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/create-option-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-option-group.html) 명령을 다음 필수 파라미터와 함께 사용합니다.
+ `--option-group-name`
+ `--engine-name`
+ `--major-engine-version`
+ `--option-group-description`

**Example**  
다음은 `testoptiongroup`이라는 이름의 옵션 그룹을 생성하는 예제입니다. 이 옵션 그룹은 Oracle Enterprise Edition DB 엔진과 연동됩니다. 설명은 인용 부호로 묶여 있습니다.  
대상 LinuxmacOS, 또는Unix:  

```
       
aws rds create-option-group \
    --option-group-name testoptiongroup \
    --engine-name oracle-ee \
    --major-engine-version 19 \
    --option-group-description "Test option group for Oracle Database 19c EE"
```
Windows의 경우:  

```
aws rds create-option-group ^
    --option-group-name testoptiongroup ^
    --engine-name oracle-ee ^-
    --major-engine-version 19 ^
    --option-group-description "Test option group for Oracle Database 19c EE"
```

### RDS API
<a name="USER_WorkingWithOptionGroups.Create.API"></a>

옵션 그룹을 생성하려면 Amazon RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateOptionGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateOptionGroup.html) 작업을 호출합니다. 다음 파라미터를 포함합니다.
+ `OptionGroupName`
+ `EngineName`
+ `MajorEngineVersion`
+ `OptionGroupDescription`

## 옵션 그룹 생성
<a name="USER_WorkingWithOptionGroups.Copy"></a>

AWS CLI 또는 Amazon RDS API를 사용하여 옵션 그룹을 복사할 수 있습니다. 옵션 그룹을 복사하면 편리할 수 있습니다. 기존 옵션 그룹이 있으며 이 그룹의 사용자 지정 파라미터 및 값의 대부분을 새 옵션 그룹에 포함하려는 경우를 예로 들 수 있습니다. 프로덕션 환경에서 사용하는 옵션 그룹 사본을 만든 다음 사본 설정을 변경하여 다른 옵션 설정을 테스트할 수도 있습니다.

**참고**  
현재는 옵션 그룹을 다른 AWS 리전에 복사할 수 없습니다.

### AWS CLI
<a name="USER_WorkingWithOptionGroups.Copy.CLI"></a>

옵션 그룹을 복사하려면 AWS CLI [copy-option-group](https://docs.aws.amazon.com/cli/latest/reference/rds/copy-option-group.html) 명령을 사용합니다. 다음 필수 옵션을 포함합니다.
+ `--source-option-group-identifier`
+ `--target-option-group-identifier`
+ `--target-option-group-description`

**Example**  
다음은 `new-option-group`이라는 이름의 옵션 그룹을 생성하는 예제입니다. 이 옵션 그룹은 옵션 그룹 `my-option-group`의 로컬 사본입니다.  
대상 LinuxmacOS, 또는Unix:  

```
aws rds copy-option-group \
    --source-option-group-identifier my-option-group \
    --target-option-group-identifier new-option-group \
    --target-option-group-description "My new option group"
```
Windows의 경우:  

```
aws rds copy-option-group ^
    --source-option-group-identifier my-option-group ^
    --target-option-group-identifier new-option-group ^
    --target-option-group-description "My new option group"
```

### RDS API
<a name="USER_WorkingWithOptionGroups.Copy.API"></a>

옵션 그룹을 복사하려면 Amazon RDS API [CopyOptionGroup](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CopyOptionGroup.html) 작업을 호출합니다. 다음 필수 파라미터를 포함합니다.
+ `SourceOptionGroupIdentifier`
+ `TargetOptionGroupIdentifier`
+ `TargetOptionGroupDescription`

## 옵션 그룹에 옵션 추가
<a name="USER_WorkingWithOptionGroups.AddOption"></a>

옵션을 기존 옵션 그룹에 추가할 수 있습니다. 원하는 옵션을 추가했다면 이제 옵션 그룹을 DB 인스턴스에 연동시켜 옵션을 DB 인스턴스에서 사용할 수 있습니다. 옵션 그룹과 DB 인스턴스의 연동에 대한 자세한 정보는 [옵션 그룹 작업](#USER_WorkingWithOptionGroups)에 나열된 구체적인 해당 DB 엔진 설명서를 참조하십시오.

다음 두 가지 경우에 옵션 그룹 변경 사항이 즉시 적용되어야 합니다.
+ `OEM` 옵션처럼 포트 값을 추가하거나 업데이트하는 옵션을 추가하는 경우.
+ 포트 값이 포함된 옵션이 있는 옵션 그룹을 추가하거나 삭제하는 경우.

이러한 경우 콘솔에서 **즉시 적용** 옵션을 선택합니다. 또는 AWS CLI를 사용할 때 `--apply-immediately` 옵션을 포함하거나 Amazon RDS API를 사용할 때 `ApplyImmediately` 파라미터를 `true`로 설정할 수 있습니다. 포트 값이 포함되지 않은 옵션도 즉시 적용하거나, 혹은 DB 인스턴스의 다음 유지 관리 기간에 적용할 수 있습니다.

**참고**  
옵션 그룹의 옵션 값으로 보안 그룹을 지정하는 경우 옵션 그룹을 수정하여 보안 그룹을 관리합니다. DB 인스턴스를 수정하여 이 보안 그룹을 변경하거나 제거할 수 없습니다. 또한 보안 그룹은 AWS Management Console이나 AWS CLI 명령 `describe-db-instances`의 출력에 있는 DB 인스턴스 세부 정보에 나타나지 않습니다.

### 콘솔
<a name="USER_WorkingWithOptionGroups.AddOption.Console"></a>

AWS Management Console을 사용하여 옵션을 옵션 그룹에 추가할 수 있습니다.

**콘솔을 사용하여 옵션을 옵션 그룹에 추가하려면,**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **옵션 그룹**을 선택합니다.

1. 수정하려는 옵션 그룹을 선택한 다음 **옵션 추가**를 선택합니다.  
![\[콘솔 옵션 그룹\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/images/optiongroup-addoption1.png)

1. **옵션 추가** 창에서 다음과 같이 합니다.

   1. 추가할 옵션을 선택합니다. 선택하는 옵션에 따라 값을 추가로 입력해야 하는 경우도 있습니다. 예를 들어, `OEM` 옵션을 선택하면 포트 값을 입력하고 보안 그룹도 지정해야 합니다.

   1. 옵션을 추가하는 즉시 연동된 모든 DB 인스턴스에서 옵션을 활성화하려면 **Apply Immediately**에서 **Yes**를 선택합니다. **No**(기본 설정)를 선택하면 다음 유지 관리 기간에 연동된 모든 DB 인스턴스에서 옵션이 활성화됩니다.  
![\[콘솔 옵션 그룹\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/images/optiongroup-addoption2.png)

1. 원하는 대로 설정이 되었으면 **옵션 추가**를 선택합니다.

### AWS CLI
<a name="USER_WorkingWithOptionGroups.AddOptions.CLI"></a>

옵션을 옵션 그룹에 추가하려면 추가할 옵션과 함께 AWS CLI [add-option-to-option-group](https://docs.aws.amazon.com/cli/latest/reference/rds/add-option-to-option-group.html) 명령을 실행합니다. 새로운 옵션을 연동된 모든 DB 인스턴스에서 즉시 활성화하려면 `--apply-immediately` 파라미터를 추가합니다. 기본적으로 이 옵션은 다음 유지 관리 기간에 연동된 모든 DB 인스턴스에서 활성화됩니다. 다음 필수 파라미터를 포함합니다.
+ `--option-group-name`

**Example**  
다음은 `testoptiongroup`이라는 이름의 옵션 그룹에 `America/Los_Angeles` 설정으로 `Timezone` 옵션을 추가한 후 즉시 활성화하는 예제입니다.  
대상 LinuxmacOS, 또는Unix:  

```
aws rds add-option-to-option-group \
    --option-group-name testoptiongroup \
    --options "OptionName=Timezone,OptionSettings=[{Name=TIME_ZONE,Value=America/Los_Angeles}]" \
    --apply-immediately
```
Windows의 경우:  

```
aws rds add-option-to-option-group ^
    --option-group-name testoptiongroup ^
    --options "OptionName=Timezone,OptionSettings=[{Name=TIME_ZONE,Value=America/Los_Angeles}]" ^
    --apply-immediately
```
명령은 다음과 유사하게 출력됩니다.  

```
...{
       "OptionName": "Timezone",
       "OptionDescription": "Change time zone",
       "Persistent": true,
       "Permanent": false,
       "OptionSettings": [
           {
               "Name": "TIME_ZONE",
               "Value": "America/Los_Angeles",
               "DefaultValue": "UTC",
               "Description": "Specifies the timezone the user wants to change the system time to",
               "ApplyType": "DYNAMIC",
               "DataType": "STRING",
               "AllowedValues": "Africa/Cairo,...",
               "IsModifiable": true,
               "IsCollection": false
           }
       ],
       "DBSecurityGroupMemberships": [],
       "VpcSecurityGroupMemberships": []
   }...
```

**Example**  
다음 예에서는 Oracle OEM 옵션을 옵션 그룹에 추가합니다. 또한 사용자 지정 포트를 지정하고 이 포트에 사용할 한 쌍의 Amazon EC2 VPC 보안 그룹을 지정합니다.  
대상 LinuxmacOS, 또는Unix:  

```
aws rds add-option-to-option-group \
    --option-group-name testoptiongroup \
    --options OptionName=OEM,Port=5500,VpcSecurityGroupMemberships="sg-test1,sg-test2" \
    --apply-immediately
```
Windows의 경우:  

```
aws rds add-option-to-option-group ^
    --option-group-name testoptiongroup ^
    --options OptionName=OEM,Port=5500,VpcSecurityGroupMemberships="sg-test1,sg-test2" ^
    --apply-immediately
```
명령은 다음과 유사하게 출력됩니다.  

```
OPTIONGROUP  False  oracle-ee  19 arn:aws:rds:us-east-1:1234567890:og:testoptiongroup   Test Option Group  testoptiongroup vpc-test 
OPTIONS Oracle 12c EM Express   OEM     False   False   5500
VPCSECURITYGROUPMEMBERSHIPS     active  sg-test1
VPCSECURITYGROUPMEMBERSHIPS     active  sg-test2
```

**Example**  
다음은 Oracle 옵션 `NATIVE_NETWORK_ENCRYPTION`을 옵션 그룹에 추가한 후 옵션 설정을 지정하는 예제입니다. 지정할 옵션 설정이 없는 경우에는 기본 값을 사용합니다.  
대상 LinuxmacOS, 또는Unix:  

```
aws rds add-option-to-option-group \
    --option-group-name testoptiongroup \
    --options '[{"OptionSettings":[{"Name":"SQLNET.ENCRYPTION_SERVER","Value":"REQUIRED"},{"Name":"SQLNET.ENCRYPTION_TYPES_SERVER","Value":"AES256,AES192,DES"}],"OptionName":"NATIVE_NETWORK_ENCRYPTION"}]' \
    --apply-immediately
```
Windows의 경우:  

```
aws rds add-option-to-option-group ^
    --option-group-name testoptiongroup ^
    --options "OptionSettings"=[{"Name"="SQLNET.ENCRYPTION_SERVER","Value"="REQUIRED"},{"Name"="SQLNET.ENCRYPTION_TYPES_SERVER","Value"="AES256\,AES192\,DES"}],"OptionName"="NATIVE_NETWORK_ENCRYPTION" ^
    --apply-immediately
```
명령은 다음과 유사하게 출력됩니다.  

```
...{
    "OptionName": "NATIVE_NETWORK_ENCRYPTION",
    "OptionDescription": "Native Network Encryption",
    "Persistent": false,
    "Permanent": false,
    "OptionSettings": [
        {
            "Name": "SQLNET.ENCRYPTION_TYPES_SERVER",
             "Value": "AES256,AES192,DES",
            "DefaultValue": "RC4_256,AES256,AES192,3DES168,RC4_128,AES128,3DES112,RC4_56,DES,RC4_40,DES40",
            "Description": "Specifies list of encryption algorithms in order of intended use",
            "ApplyType": "STATIC",
            "DataType": "STRING",
            "AllowedValues": "RC4_256,AES256,AES192,3DES168,RC4_128,AES128,3DES112,RC4_56,DES,RC4_40,DES40",
            "IsModifiable": true,
            "IsCollection": true
        },
        {
            "Name": "SQLNET.ENCRYPTION_SERVER",
            "Value": "REQUIRED",
            "DefaultValue": "REQUESTED",
            "Description": "Specifies the desired encryption behavior",
            "ApplyType": "STATIC",
            "DataType": "STRING",
            "AllowedValues": "ACCEPTED,REJECTED,REQUESTED,REQUIRED",
            "IsModifiable": true,
            "IsCollection": false
        },...
```

### RDS API
<a name="USER_WorkingWithOptionGroups.AddOptions.API"></a>

Amazon RDS API를 사용하여 옵션을 옵션 그룹에 추가하려면 추가할 옵션과 함께 [ModifyOptionGroup](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyOptionGroup.html) 작업을 호출합니다. 새로운 옵션을 연동된 모든 DB 인스턴스에서 즉시 활성화하려면 `ApplyImmediately` 파라미터를 추가하고 `true`로 설정합니다. 기본적으로 이 옵션은 다음 유지 관리 기간에 연동된 모든 DB 인스턴스에서 활성화됩니다. 다음 필수 파라미터를 포함합니다.
+ `OptionGroupName`

## 옵션 그룹의 옵션 및 옵션 설정 표시하기
<a name="USER_WorkingWithOptionGroups.ListOption"></a>

 옵션 그룹의 옵션과 옵션 설정을 모두 표시할 수 있습니다.

### 콘솔
<a name="USER_WorkingWithOptionGroups.ListOption.Console"></a>

AWS Management Console을 사용하여 옵션 그룹의 옵션과 옵션 설정을 모두 표시할 수 있습니다.

**옵션 그룹의 옵션과 옵션 설정을 표시하는 방법**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **옵션 그룹**을 선택합니다.

1. 세부 정보를 표시할 옵션 그룹의 이름을 선택합니다. 옵션 그룹의 옵션과 옵션 설정이 나열됩니다.

### AWS CLI
<a name="USER_WorkingWithOptionGroups.ListOption.CLI"></a>

옵션 그룹의 옵션과 옵션 설정을 표시하려면 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-option-groups.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-option-groups.html) 명령을 사용합니다. 표시할 옵션과 설정이 포함된 옵션 그룹 이름을 지정합니다. 옵션 그룹 이름을 지정하지 않으면 모든 옵션 그룹이 표시됩니다.

**Example**  
다음은 모든 옵션 그룹에 포함된 옵션과 옵션 설정을 표시하는 예제입니다.  

```
aws rds describe-option-groups
```

**Example**  
다음은 `testoptiongroup`이라는 이름의 옵션 그룹에 포함된 옵션과 옵션 설정을 표시하는 예제입니다.  

```
aws rds describe-option-groups --option-group-name testoptiongroup
```

### RDS API
<a name="USER_WorkingWithOptionGroups.ListOption.API"></a>

옵션 그룹의 옵션과 옵션 설정을 표시하려면 Amazon RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeOptionGroups.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeOptionGroups.html) 작업을 사용합니다. 표시할 옵션과 설정이 포함된 옵션 그룹 이름을 지정합니다. 옵션 그룹 이름을 지정하지 않으면 모든 옵션 그룹이 표시됩니다.

## 옵션 설정 수정
<a name="USER_WorkingWithOptionGroups.ModifyOption"></a>

옵션 설정을 변경할 수 있는 옵션은 추가한 이후에도 언제든지 설정을 변경할 수 있습니다. 옵션 그룹의 옵션 또는 옵션 설정을 변경할 경우에는 해당 옵션 그룹과 연동되어 있는 모든 DB 인스턴스에 변경 사항이 적용됩니다. 다양한 옵션에서 이용할 수 있는 설정에 대한 자세한 정보는 [옵션 그룹 작업](#USER_WorkingWithOptionGroups)에서 해당 엔진의 설명서를 참조하세요.

다음 두 가지 경우에 옵션 그룹 변경 사항이 즉시 적용되어야 합니다.
+ `OEM` 옵션처럼 포트 값을 추가하거나 업데이트하는 옵션을 추가하는 경우.
+ 포트 값이 포함된 옵션이 있는 옵션 그룹을 추가하거나 삭제하는 경우.

이러한 경우 콘솔에서 **즉시 적용** 옵션을 선택합니다. 또는 `--apply-immediately`를 사용할 때 AWS CLI 옵션을 포함하거나 RDS API를 사용할 때 `ApplyImmediately` 파라미터를 `true`로 설정할 수 있습니다. 포트 값이 포함되지 않은 옵션도 즉시 적용하거나, 혹은 DB 인스턴스의 다음 유지 관리 기간에 적용할 수 있습니다.

**참고**  
옵션 그룹의 옵션 값으로 보안 그룹을 지정하는 경우 옵션 그룹을 수정하여 보안 그룹을 관리합니다. DB 인스턴스를 수정하여 이 보안 그룹을 변경하거나 제거할 수 없습니다. 또한 보안 그룹은 AWS Management Console이나 AWS CLI 명령 `describe-db-instances`의 출력에 있는 DB 인스턴스 세부 정보에 나타나지 않습니다.

### 콘솔
<a name="USER_WorkingWithOptionGroups.ModifyOption.Console"></a>

AWS Management Console을 사용하여 옵션 설정을 변경할 수 있습니다.

**콘솔을 사용하여 옵션 설정을 변경하려면,**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **옵션 그룹**을 선택합니다.

1. 옵션을 수정하려는 옵션 그룹을 선택한 후 **옵션 수정**을 선택합니다.

1. **옵션 수정** 창의 **설치된 옵션**에서 설정을 수정하려는 옵션을 선택합니다. 원하는 설정을 변경합니다.

1. 옵션을 추가하는 즉시 활성화하려면 **Apply Immediately**에서 **Yes**를 선택합니다. **No**(기본 설정)를 선택하면 다음 유지 관리 기간에 연동된 모든 DB 인스턴스에서 옵션이 활성화됩니다.

1. 원하는 대로 설정이 되었으면 **Modify Option**을 선택합니다.

### AWS CLI
<a name="USER_WorkingWithOptionGroups.ModifyOption.CLI"></a>

옵션 설정을 수정하려면 변경할 옵션 그룹 및 옵션과 함께 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/add-option-to-option-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/add-option-to-option-group.html) 명령을 사용합니다. 기본적으로 이 옵션은 다음 유지 관리 기간에 연동된 모든 DB 인스턴스에서 활성화됩니다. 변경 사항을 연동된 모든 DB 인스턴스에 즉시 적용하려면 `--apply-immediately` 파라미터를 포함합니다. 옵션 설정을 변경하려면 `--settings` 인수를 사용합니다.

**Example**  
다음은 `testoptiongroup`이라는 이름의 옵션 그룹에서 Oracle Enterprise Manager Database Control(OEM)이 사용하는 포트 설정을 변경한 다음 이 변경 사항을 즉시 적용하는 예제입니다.  
대상 LinuxmacOS, 또는Unix:  

```
aws rds add-option-to-option-group \
    --option-group-name testoptiongroup \
    --options OptionName=OEM,Port=5432,DBSecurityGroupMemberships=default \
    --apply-immediately
```
Windows의 경우:  

```
aws rds add-option-to-option-group ^
    --option-group-name testoptiongroup ^
    --options OptionName=OEM,Port=5432,DBSecurityGroupMemberships=default ^
    --apply-immediately
```
명령은 다음과 유사하게 출력됩니다.  

```
OPTIONGROUP   False  oracle-ee  19  arn:aws:rds:us-east-1:1234567890:og:testoptiongroup   Test Option Group    testoptiongroup
OPTIONS Oracle 12c EM Express   OEM     False   False   5432
DBSECURITYGROUPMEMBERSHIPS   default  authorized
```

**Example**  
다음은 Oracle 옵션 `NATIVE_NETWORK_ENCRYPTION`의 설정을 변경하는 예제입니다.  
대상 LinuxmacOS, 또는Unix:  

```
aws rds add-option-to-option-group \
    --option-group-name testoptiongroup \
    --options '[{"OptionSettings":[{"Name":"SQLNET.ENCRYPTION_SERVER","Value":"REQUIRED"},{"Name":"SQLNET.ENCRYPTION_TYPES_SERVER","Value":"AES256,AES192,DES,RC4_256"}],"OptionName":"NATIVE_NETWORK_ENCRYPTION"}]' \
    --apply-immediately
```
Windows의 경우:  

```
aws rds add-option-to-option-group ^
    --option-group-name testoptiongroup ^
    --options "OptionSettings"=[{"Name"="SQLNET.ENCRYPTION_SERVER","Value"="REQUIRED"},{"Name"="SQLNET.ENCRYPTION_TYPES_SERVER","Value"="AES256\,AES192\,DES\,RC4_256"}],"OptionName"="NATIVE_NETWORK_ENCRYPTION" ^
    --apply-immediately
```
명령은 다음과 유사하게 출력됩니다.  

```
OPTIONGROUP   False  oracle-ee  19  arn:aws:rds:us-east-1:1234567890:og:testoptiongroup   Test Option Group    testoptiongroup                
OPTIONS Oracle Advanced Security - Native Network Encryption    NATIVE_NETWORK_ENCRYPTION       False   False
OPTIONSETTINGS  RC4_256,AES256,AES192,3DES168,RC4_128,AES128,3DES112,RC4_56,DES,RC4_40,DES40 STATIC  STRING  
   RC4_256,AES256,AES192,3DES168,RC4_128,AES128,3DES112,RC4_56,DES,RC4_40,DES40    Specifies list of encryption algorithms in order of intended use        
   True     True    SQLNET.ENCRYPTION_TYPES_SERVER  AES256,AES192,DES,RC4_256
OPTIONSETTINGS  ACCEPTED,REJECTED,REQUESTED,REQUIRED    STATIC  STRING  REQUESTED   Specifies the desired encryption behavior  False   True  SQLNET.ENCRYPTION_SERVER    REQUIRED
OPTIONSETTINGS  SHA1,MD5   STATIC  STRING  SHA1,MD5    Specifies list of checksumming algorithms in order of intended use      True    True    SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER  SHA1,MD5
OPTIONSETTINGS  ACCEPTED,REJECTED,REQUESTED,REQUIRED  STATIC  STRING  REQUESTED     Specifies the desired data integrity behavior   False   True    SQLNET.CRYPTO_CHECKSUM_SERVER  REQUESTED
```

### RDS API
<a name="USER_WorkingWithOptionGroups.ModifyOption.API"></a>

옵션 설정을 수정하려면 변경할 옵션 그룹 및 옵션과 함께 Amazon RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyOptionGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyOptionGroup.html) 명령을 사용합니다. 기본적으로 이 옵션은 다음 유지 관리 기간에 연동된 모든 DB 인스턴스에서 활성화됩니다. 변경 사항을 연동된 모든 DB 인스턴스에 즉시 적용하려면 `ApplyImmediately` 파라미터를 포함시키고 `true`로 설정합니다.

## 옵션 그룹에서 옵션 제거
<a name="USER_WorkingWithOptionGroups.RemoveOption"></a>

일부 옵션은 옵션 그룹에서 제거할 수 있지만 그렇지 않은 옵션도 있습니다. 지속적인 옵션은 DB 인스턴스와 해당 옵션 그룹의 연동을 해제해야만 옵션 그룹에서 제거가 가능합니다. 영구적인 옵션은 옵션 그룹에서 절대로 제거할 수 없습니다. 제거할 수 있는 옵션에 대한 자세한 정보는 [옵션 그룹 작업](#USER_WorkingWithOptionGroups)에 나열된 구체적인 해당 엔진 설명서를 참조하십시오.

옵션 그룹에서 모든 옵션을 제거하더라도 Amazon RDS가 옵션 그룹을 삭제하지는 않습니다. 비어 있는 옵션 그룹과 연동되어 있는 DB 인스턴스도 활성화된 옵션이 없을 뿐 연동 상태는 유지합니다. 또는 DB 인스턴스를 기본(비어있는) 옵션 그룹과 연동시키면 DB 인스턴스에서 모든 옵션을 제거할 수 있습니다.

### 콘솔
<a name="USER_WorkingWithOptionGroups.RemoveOption.Console"></a>

AWS Management Console을 사용하여 옵션 그룹에서 옵션을 제거할 수 있습니다.

**console을 사용하여 옵션 그룹에서 옵션을 제거하려면,**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **옵션 그룹**을 선택합니다.

1. 옵션을 제거하려는 옵션 그룹을 선택한 후 **옵션 삭제**를 선택합니다.

1. **옵션 삭제** 창에서 다음과 같이 합니다.
   +  삭제하려는 옵션 확인란을 선택합니다.
   + 삭제 후 바로 적용하려면 **즉시 적용**에서 **예**를 선택합니다. **No**(기본 설정)를 선택하면 다음 유지 관리 기간에 연동된 모든 DB 인스턴스에서 옵션이 삭제됩니다.  
![\[옵션 그룹 삭제\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/images/optiongroup-removeoption2.png)

1. 원하는 대로 설정이 되었으면 **Yes, Delete**를 선택합니다.

### AWS CLI
<a name="USER_WorkingWithOptionGroups.RemoveOption.CLI"></a>

옵션 그룹에서 옵션을 제거하려면 삭제할 옵션과 함께 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/remove-option-from-option-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/remove-option-from-option-group.html) 명령을 사용합니다. 기본적으로 이 옵션은 다음 유지 관리 기간에 연동된 모든 DB 인스턴스에서 제거됩니다. 변경 사항을 즉시 적용하려면 `--apply-immediately` 파라미터를 추가합니다.

**Example**  
다음은 `testoptiongroup`이라는 이름의 옵션 그룹에서 Oracle Enterprise Manager Database Control(OEM) 옵션을 제거한 후 변경 사항을 즉시 적용하는 예제입니다.  
대상 LinuxmacOS, 또는Unix:  

```
  
aws rds remove-option-from-option-group \
    --option-group-name testoptiongroup \
    --options OEM \
    --apply-immediately
```
Windows의 경우:  

```
aws rds remove-option-from-option-group ^
    --option-group-name testoptiongroup ^
    --options OEM ^
    --apply-immediately
```
명령은 다음과 유사하게 출력됩니다.  

```
OPTIONGROUP    testoptiongroup oracle-ee   19    Test option group
```

### RDS API
<a name="USER_WorkingWithOptionGroups.RemoveOption.API"></a>

옵션 그룹에서 옵션을 제거하려면 Amazon RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyOptionGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyOptionGroup.html) 작업을 사용합니다. 기본적으로 이 옵션은 다음 유지 관리 기간에 연동된 모든 DB 인스턴스에서 제거됩니다. 변경 사항을 즉시 적용하려면 `ApplyImmediately` 파라미터를 추가하고 `true`로 설정합니다.

다음 파라미터를 포함합니다.
+ `OptionGroupName`
+ `OptionsToRemove.OptionName`

## 옵션 그룹 삭제
<a name="USER_WorkingWithOptionGroups.Delete"></a>

다음 기준을 충족하는 경우에만 옵션 그룹을 삭제할 수 있습니다.
+ Amazon RDS 리소스와 연결된 상태가 아니어야 합니다. 옵션 그룹은 DB 인스턴스, 수동 DB 스냅샷 또는 자동화된 DB 스냅샷에 연결할 수 있습니다.
+ 기본 옵션 그룹이 아니어야 합니다.

DB 인스턴스와 DB 스냅샷에서 사용하는 옵션 그룹을 식별하려면 다음 CLI 명령을 사용하면 됩니다.

```
aws rds describe-db-instances \
    --query 'DBInstances[*].[DBInstanceIdentifier,OptionGroupMemberships[].OptionGroupName]'

aws rds describe-db-snapshots | jq -r '.DBSnapshots[] | "\(.DBInstanceIdentifier),\(.OptionGroupName)"' | sort | uniq
```

RDS 리소스와 연결된 옵션 그룹을 삭제하려고 하면 다음과 같은 오류가 반환됩니다.

```
An error occurred (InvalidOptionGroupStateFault) when calling the DeleteOptionGroup operation: The option group 'optionGroupName' cannot be deleted because it is in use.            
```

**옵션 그룹과 연결된 Amazon RDS 리소스를 찾으려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **옵션 그룹**을 선택합니다.

1. 세부 정보를 표시할 옵션 그룹의 이름을 선택합니다.

1. 연결된 Amazon RDS 리소스의 **연결된 인스턴스 및 스냅샷** 섹션을 확인하십시오.

DB 인스턴스가 옵션 그룹과 연결되어 있으면 DB 인스턴스가 다른 옵션 그룹을 사용하도록 수정하십시오. 자세한 내용은 [Amazon RDS DB 인스턴스 수정](Overview.DBInstance.Modifying.md) 단원을 참조하십시오.

수동 DB 스냅샷이 옵션 그룹과 연결되어 있으면 DB 스냅샷이 다른 옵션 그룹을 사용하도록 수정합니다. AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-snapshot.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-snapshot.html) 명령을 사용하여 수정할 수 있습니다.

**참고**  
자동화된 DB 스냅샷의 옵션 그룹은 수정할 수 없습니다.

### 콘솔
<a name="USER_WorkingWithOptionGroups.Delete.Console"></a>

 옵션 그룹을 삭제하는 한 가지 방법은 AWS Management Console을 사용하는 것입니다.

**콘솔을 사용해 옵션 그룹을 삭제하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **옵션 그룹**을 선택합니다.

1. 옵션 그룹을 선택합니다.

1. **그룹 삭제**를 선택합니다.

1. 확인 페이지에서 **삭제**를 선택하여 옵션 그룹 삭제를 완료하거나 **취소**를 선택하여 삭제를 취소합니다.

### AWS CLI
<a name="USER_WorkingWithOptionGroups.Delete.CLI"></a>

옵션 그룹을 삭제하려면 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/delete-option-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-option-group.html) 명령을 다음 필수 파라미터와 함께 사용합니다.
+ `--option-group-name`

**Example**  
다음 예제에서는 이름이 `testoptiongroup`인 옵션 그룹을 삭제합니다.  
대상 LinuxmacOS, 또는Unix:  

```
       
aws rds delete-option-group \
    --option-group-name testoptiongroup
```
Windows의 경우:  

```
aws rds delete-option-group ^
    --option-group-name testoptiongroup
```

### RDS API
<a name="USER_WorkingWithOptionGroups.Delete.API"></a>

옵션 그룹을 삭제하려면 Amazon RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteOptionGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteOptionGroup.html) 작업을 호출합니다. 다음 파라미터를 포함합니다.
+ `OptionGroupName`

# Amazon RDS의 파라미터 그룹
<a name="USER_WorkingWithParamGroups"></a>

[*데이터베이스 파라미터(Database parameters)*]에서 데이터베이스 구성 방법을 지정합니다. 예를 들어 데이터베이스 파라미터는 메모리를 비롯하여 데이터베이스에 할당할 리소스의 양을 지정할 수 있습니다.

DB 인스턴스 및 Multi-AZ DB 클러스터를 파라미터 그룹과 연결하여 데이터베이스 구성을 관리합니다. Amazon RDS는 기본 설정으로 파라미터 그룹을 정의합니다. 맞춤형 설정으로 자신만의 파라미터 그룹을 정의할 수 있습니다.

**참고**  
일부 DB 엔진은 데이터베이스의 옵션 그룹에 옵션으로 추가할 수 있는 추가 기능을 제공합니다. 옵션 그룹에 대한 자세한 내용은 [옵션 그룹 작업](USER_WorkingWithOptionGroups.md) 섹션을 참조하세요.

**Topics**
+ [파라미터 그룹 개요](parameter-groups-overview.md)
+ [Amazon RDS DB 인스턴스용 DB 파라미터 그룹](USER_WorkingWithDBInstanceParamGroups.md)
+ [다중 AZ DB 클러스터용 DB 클러스터 파라미터 그룹 작업](USER_WorkingWithDBClusterParamGroups.md)
+ [DB 파라미터 그룹 비교](USER_WorkingWithParamGroups.Comparing.md)
+ [DB 파라미터 지정](USER_ParamValuesRef.md)

# 파라미터 그룹 개요
<a name="parameter-groups-overview"></a>

**DB 파라미터 그룹은 하나 이상의 DB 인스턴스에 적용되는 엔진 구성 값의 컨테이너 역할을 합니다.

**DB 클러스터 파라미터 그룹은 다중 AZ DB 클러스터에만 적용됩니다. 다중 AZ DB 클러스터에서 DB 클러스터 파라미터 그룹의 설정은 클러스터의 모든 DB 인스턴스에 적용됩니다. DB 엔진 및 DB 엔진 버전에 대한 기본 DB 파라미터 그룹은 DB 클러스터의 각 DB 인스턴스에 사용됩니다.

**Topics**
+ [기본 및 사용자 지정 파라미터 그룹](#parameter-groups-overview.custom)
+ [정적 및 동적 DB 인스턴스 파라미터](#parameter-groups-overview.db-instance)
+ [정적 및 동적 DB 클러스터 파라미터](#parameter-groups-overview.maz)
+ [문자 집합 파라미터](#parameter-groups-overview.char-sets)
+ [지원되는 파라미터 및 파라미터 값](#parameter-groups-overview.supported)

## 기본 및 사용자 지정 파라미터 그룹
<a name="parameter-groups-overview.custom"></a>

DB 파라미터 그룹을 지정하지 않고 DB 인스턴스를 만드는 경우 DB 인스턴스에서는 기본 DB 파라미터 그룹을 사용합니다. 이와 마찬가지로 DB 클러스터 파라미터 그룹을 지정하지 않고 다중 AZ 클러스터를 생성할 경우 이 DB 클러스터에서는 기본 DB 클러스터 파라미터 그룹을 사용합니다. 각 기본 파라미터 그룹에는 인스턴스의 엔진, 컴퓨팅 클래스 및 할당된 스토리지에 따른 데이터베이스 엔진 기본값과 Amazon RDS 시스템 기본값이 들어 있습니다.

기본 DB 파라미터 그룹의 파라미터 설정은 수정할 수 없습니다. 대신에 다음 작업을 할 수 있습니다.

1. 새 파라미터 그룹을 생성해야 합니다.

1. 원하는 파라미터의 설정을 변경합니다. 파라미터 그룹에서 모든 DB 엔진 파라미터를 수정할 수 있는 것은 아닙니다.

1. DB 인스턴스 또는 DB 클러스터를 수정하여 새로운 파라미터 그룹을 연결하세요.  

   새 DB 파라미터 그룹을 DB 인스턴스와 연결하면 연결은 즉시 이루어집니다. DB 인스턴스 수정에 대한 자세한 내용은 섹션을 참조하세요.[Amazon RDS DB 인스턴스 수정](Overview.DBInstance.Modifying.md) 다중 AZ DB 클러스터 수정에 대한 자세한 내용은 [Amazon RDS용 다중 AZ DB 클러스터 수정](modify-multi-az-db-cluster.md) 섹션을 참조하세요.
**참고**  
사용자 지정 파라미터 그룹을 사용하도록 DB 인스턴스를 수정하고 DB 인스턴스를 시작하면 RDS는 시작 프로세스의 일부로 DB 인스턴스를 자동으로 재부팅합니다. AlwaysOn 또는 미러링 옵션이 활성화된 RDS for SQL Server 다중 AZ 인스턴스의 경우 시작 프로세스 후 인스턴스를 재부팅하면 장애 조치가 수행될 수 있습니다.

RDS는 DB 인스턴스가 재부팅된 후에만 수정된 정적 및 동적 파라미터를 새로 연결된 파라미터 그룹에 적용합니다. 그러나 DB 파라미터 그룹을 DB 인스턴스에 연결한 후 DB 파라미터 그룹에서 동적 파라미터를 수정하면 이러한 변경 사항이 재부팅 없이 즉시 적용됩니다. DB 파라미터 그룹 변경에 대한 자세한 내용은 [Amazon RDS DB 인스턴스 수정](Overview.DBInstance.Modifying.md) 단원을 참조하십시오.

DB 파라미터 그룹 내의 파라미터를 업데이트하는 경우 변경 사항은 이 파라미터 그룹과 연결된 모든 DB 인스턴스에 적용됩니다. 이와 마찬가지로 다중 AZ DB 클러스터 파라미터 그룹 내의 파라미터를 업데이트할 경우, 변경 사항은 이 DB 클러스터 파라미터 그룹과 연결된 모든 Aurora DB 클러스터에 적용됩니다.

파라미터 그룹을 처음부터 생성하지 않으려면 AWS CLI [copy-db-parameter-group](https://docs.aws.amazon.com/cli/latest/reference/rds/copy-db-parameter-group.html) 명령 또는 [copy-db-cluster-parameter-group](https://docs.aws.amazon.com/cli/latest/reference/rds/copy-db-cluster-parameter-group.html) 명령을 사용하여 기존 파라미터 그룹을 복사할 수 있습니다. 경우에 따라 파라미터 그룹을 복사하는 것이 유용할 수 있습니다. 예를 들어, 기존 DB 파라미터 그룹의 사용자 지정 파라미터 및 값의 대부분을 새 DB 파라미터 그룹에 포함하고자 할 수 있습니다.

## 정적 및 동적 DB 인스턴스 파라미터
<a name="parameter-groups-overview.db-instance"></a>

DB 인스턴스 파라미터는 정적이거나 동적입니다. 이들은 다음과 같은 차이가 있습니다.
+ 정적 파라미터를 변경하고 DB 파라미터 그룹을 저장한 후 연결된 DB 인스턴스를 수동으로 재부팅하면 파라미터 변경 내용이 적용됩니다. 정적 파라미터의 경우 콘솔은 `ApplyMethod`로 항상 `pending-reboot`를 사용합니다.
+ 동적 파라미터를 변경하면 기본적으로 파라미터 변경이 재부팅 없이 즉시 적용됩니다. AWS Management Console을 사용하여 DB 인스턴스 파라미터 값을 변경하는 경우에는 동적 파라미터의 `ApplyMethod`로 항상 `immediate`를 사용합니다. 연결된 DB 인스턴스가 재부팅된 후로 파라미터 변경을 연기하려면 AWS CLI 또는 RDS API를 사용합니다. 파라미터 변경을 위해 `ApplyMethod`를 `pending-reboot`로 설정합니다.
**참고**  
AWS CLI 또는 RDS API에서 RDS for SQL Server DB 인스턴스에 동적 파라미터와 함께 `pending-reboot`를 사용하면 오류가 생성됩니다. RDS for SQL Server에 `apply-immediately`를 사용합니다.

파라미터 값 변경을 위한 AWS CLI 사용과 관련한 자세한 내용은 [modify-db-parameter-group](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-parameter-group.html) 섹션을 참조하세요. 파라미터 값 변경을 위한 RDS API 사용과 관련한 자세한 내용은 [ModifyDBParameterGroup](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBParameterGroup.html) 섹션을 참조하세요.

DB 인스턴스에서 연결된 DB 파라미터 그룹에 대한 최신 변경 내용을 사용하고 있지 않은 경우 콘솔에 DB 파라미터 그룹이 **재시작-보류 중** 상태로 표시됩니다. 이 상태로 인해 다음번 유지 관리 기간 중에 자동 재부팅이 되지는 않습니다. 최신 파라미터 변경 내용을 이 DB 인스턴스에 적용하려면 해당 DB 인스턴스를 수동으로 재부팅해야 합니다.

## 정적 및 동적 DB 클러스터 파라미터
<a name="parameter-groups-overview.maz"></a>

DB 클러스터 파라미터는 정적이거나 동적입니다. 이들은 다음과 같은 차이가 있습니다.
+ 정적 파라미터를 변경하고 DB 클러스터 파라미터 그룹을 저장하면 연결된 DB 클러스터를 수동으로 재부팅한 후에 파라미터 변경 내용이 적용됩니다. 정적 파라미터의 경우 콘솔은 `ApplyMethod`로 항상 `pending-reboot`를 사용합니다.
+ 동적 파라미터를 변경하면 기본적으로 파라미터 변경이 재부팅 없이 즉시 적용됩니다. AWS Management Console을 사용하여 DB 클러스터 파라미터 값을 변경하는 경우에는 동적 파라미터의 `ApplyMethod`로 항상 `immediate`를 사용합니다. 연결된 DB 클러스터가 재부팅된 후로 파라미터 변경을 연기하려면 AWS CLI 또는 RDS API를 사용합니다. 파라미터 변경을 위해 `ApplyMethod`를 `pending-reboot`로 설정합니다.

파라미터 값 변경을 위한 AWS CLI 사용과 관련한 자세한 내용은 [modify-db-cluster-parameter-group](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster-parameter-group.html) 섹션을 참조하세요. 파라미터 값 변경을 위한 RDS API 사용과 관련한 자세한 내용은 [ModifyDBClusterParameterGroup](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBClusterParameterGroup.html) 섹션을 참조하세요.

## 문자 집합 파라미터
<a name="parameter-groups-overview.char-sets"></a>

DB 인스턴스 또는 다중 AZ DB 클러스터를 만들기 전에 파라미터 그룹에 있는 데이터베이스의 문자 세트 또는 데이터 정렬과 관련된 파라미터를 모두 설정합니다. 인스턴스 또는 클러스터 안에 데이터베이스를 생성하기 전에도 이 설정을 수행해야 합니다. 이렇게 하면 기본 데이터베이스와 새 데이터베이스가 지정한 문자 세트 및 데이터 정렬 값을 사용하게 됩니다. 문자 세트 또는 데이터 정렬 파라미터를 변경해도 기존 데이터베이스에는 변경된 파라미터가 적용되지 않습니다.

일부 DB 엔진의 경우 다음과 같이 `ALTER DATABASE` 명령을 사용하여 기존 데이터베이스의 문자 세트 또는 데이터 정렬 값을 변경할 수 있습니다.

```
ALTER DATABASE database_name CHARACTER SET character_set_name COLLATE collation;
```

데이터베이스의 문자 집합 또는 데이터 정렬 값 변경에 대한 자세한 내용은 DB 엔진 설명서를 참조하세요.

## 지원되는 파라미터 및 파라미터 값
<a name="parameter-groups-overview.supported"></a>

DB 엔진에서 지원되는 파라미터를 확인하려면 DB 인스턴스 또는 DB 클러스터에서 사용되는 DB 파라미터 그룹 및 DB 클러스터 파라미터 그룹에서 파라미터를 확인합니다. 자세한 내용은 [Amazon RDS에서 DB 파라미터 그룹의 파라미터 값 보기](USER_WorkingWithParamGroups.Viewing.md) 및 [ DB 클러스터 파라미터 그룹의 파라미터 값 보기](USER_WorkingWithParamGroups.ViewingCluster.md)(을)를 참조하세요.

대부분의 경우 표현식, 수식 및 함수를 사용하여 정수 및 부울 파라미터 값을 지정할 수 있습니다. 함수에 수학 로그식을 넣을 수 있습니다. 그러나 일부 파라미터는 파라미터 값에 대한 표현식, 수식 및 함수를 지원하지 않습니다. 자세한 내용은 [DB 파라미터 지정](USER_ParamValuesRef.md) 섹션을 참조하세요.

파라미터 그룹에 파라미터를 잘못 설정하면 성능 저하나 시스템 불안정 등의 의도하지 않은 부작용이 있을 수 있습니다. 데이터베이스 파라미터를 수정할 때 항상 주의하고 DB 파라미터 그룹을 수정하기 전에 데이터를 백업하세요. 파라미터 그룹 변경 내용을 프로덕션 DB 인스턴스나 DB 클러스터에 적용하기 전에 테스트 DB 인스턴스나 DB 클러스터에 적용해 봐야 합니다.

# Amazon RDS DB 인스턴스용 DB 파라미터 그룹
<a name="USER_WorkingWithDBInstanceParamGroups"></a>

DB 인스턴스는 DB 파라미터 그룹을 사용합니다. 다음 섹션에서는 DB 인스턴스 파라미터 그룹 구성 및 관리에 대해 설명합니다.

**Topics**
+ [Amazon RDS에서 DB 파라미터 그룹 생성](USER_WorkingWithParamGroups.Creating.md)
+ [Amazon RDS의 DB 인스턴스에 DB 파라미터 그룹 연결](USER_WorkingWithParamGroups.Associating.md)
+ [Amazon RDS에서 DB 파라미터 그룹의 파라미터 수정](USER_WorkingWithParamGroups.Modifying.md)
+ [Amazon RDS에서 DB 파라미터 그룹의 파라미터를 기본값으로 재설정](USER_WorkingWithParamGroups.Resetting.md)
+ [Amazon RDS에서 DB 파라미터 그룹 복사](USER_WorkingWithParamGroups.Copying.md)
+ [Amazon RDS에 DB 파라미터 그룹 나열](USER_WorkingWithParamGroups.Listing.md)
+ [Amazon RDS에서 DB 파라미터 그룹의 파라미터 값 보기](USER_WorkingWithParamGroups.Viewing.md)
+ [Amazon RDS에서 DB 파라미터 그룹 삭제](USER_WorkingWithParamGroups.Deleting.md)

# Amazon RDS에서 DB 파라미터 그룹 생성
<a name="USER_WorkingWithParamGroups.Creating"></a>

AWS Management Console, AWS CLI 또는 RDS API를 사용하여 새 DB 파라미터 그룹을 생성할 수 있습니다.

DB 파라미터 그룹 이름에는 다음과 같은 제한이 적용됩니다.
+ 이름은 1\$1255자의 문자, 숫자 또는 하이픈으로 구성되어야 합니다.

  기본 파라미터 그룹 이름에는 마침표(예: `default.mysql8.0`)가 포함될 수 있습니다. 하지만 사용자 지정 파라미터 그룹 이름에는 마침표를 포함할 수 없습니다.
+ 첫 번째 자리는 문자여야 합니다.
+ 이름은 하이픈으로 끝나거나 2개 연속 하이픈을 포함할 수 없습니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.Creating.CON"></a>

**DB 파라미터 그룹을 생성하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

1. [**Create parameter group**]을 선택합니다.

1. **파라미터 그룹 이름**에 새 DB 파라미터 그룹의 이름을 입력합니다.

1. **설명**에 새 DB 클러스터 파라미터 그룹에 대한 설명을 입력합니다.

1. **엔진 유형**에서 DB 엔진을 선택합니다.

1. **파라미터 그룹 패밀리**에서 DB 파라미터 그룹 패밀리를 선택합니다.

1. **유형**에서 **DB 파라미터 그룹**을 선택합니다.

1. **Create**를 선택합니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.Creating.CLI"></a>

DB 파라미터 그룹을 생성하려면 AWS CLI[https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-parameter-group.html) 명령을 사용합니다. 다음 예에서는 '*My new parameter group*'이라는 설명과 함께 *mydbparametergroup*이라는 MySQL 버전 8.0용 DB 파라미터 그룹을 생성합니다.

다음 필수 파라미터를 포함합니다.
+ `--db-parameter-group-name`
+ `--db-parameter-group-family`
+ `--description`

사용 가능한 모든 파라미터 그룹 패밀리를 나열하려면 다음 명령을 사용합니다.

```
aws rds describe-db-engine-versions --query "DBEngineVersions[].DBParameterGroupFamily"
```

**참고**  
출력에 중복이 있습니다.

**Example**  
대상 LinuxmacOS, 또는Unix:  

```
aws rds create-db-parameter-group \
    --db-parameter-group-name mydbparametergroup \
    --db-parameter-group-family MySQL8.0 \
    --description "My new parameter group"
```
Windows의 경우:  

```
aws rds create-db-parameter-group ^
    --db-parameter-group-name mydbparametergroup ^
    --db-parameter-group-family MySQL8.0 ^
    --description "My new parameter group"
```
다음과 비슷한 출력이 생성됩니다.  

```
DBPARAMETERGROUP  mydbparametergroup  mysql8.0  My new parameter group
```

## RDS API
<a name="USER_WorkingWithParamGroups.Creating.API"></a>

DB 파라미터 그룹을 생성하려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBParameterGroup.html) 작업을 사용합니다.

다음 필수 파라미터를 포함합니다.
+ `DBParameterGroupName`
+ `DBParameterGroupFamily`
+ `Description`

# Amazon RDS의 DB 인스턴스에 DB 파라미터 그룹 연결
<a name="USER_WorkingWithParamGroups.Associating"></a>

사용자 지정 설정을 사용하여 사용자의 DB 파라미터 그룹을 생성할 수 있습니다. AWS Management Console, AWS CLI 또는 RDS API를 사용하여 DB 파라미터 그룹을 DB 인스턴스와 연결할 수 있습니다. DB 인스턴스를 생성하거나 수정할 때 이 작업을 수행할 수 있습니다.

DB 파라미터 그룹 생성에 대한 자세한 내용은 [Amazon RDS에서 DB 파라미터 그룹 생성](USER_WorkingWithParamGroups.Creating.md) 단원을 참조하세요. DB 인스턴스 생성에 대한 자세한 내용은 [Amazon RDS DB 인스턴스 생성](USER_CreateDBInstance.md)을(를) 참조하세요.  DB 인스턴스 수정에 대한 자세한 내용은 [Amazon RDS DB 인스턴스 수정](Overview.DBInstance.Modifying.md) 단원을 참조하세요.

**참고**  
새 DB 파라미터 그룹을 DB 인스턴스와 연결하면 수정된 정적 파라미터 및 동적 파라미터는 DB 인스턴스가 재부팅된 후에만 적용됩니다. 그러나 DB 파라미터 그룹을 DB 인스턴스에 연결한 후 DB 파라미터 그룹에서 동적 파라미터를 수정하면 이러한 변경 사항이 재부팅 없이 즉시 적용됩니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.Associating.CON"></a>

**DB 파라미터 그룹을 DB 인스턴스와 연결하는 방법**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **데이터베이스**를 선택한 다음 변경하려는 DB 인스턴스를 선택합니다.

1. **수정**을 선택합니다. **Modify DB instance**(DB 인스턴스 수정) 페이지가 나타납니다.

1. **DB 파라미터 그룹** 설정을 변경합니다.

1. [**Continue**]를 수정 사항을 요약한 내용을 확인합니다.

1. (선택 사항) **즉시 적용**을 선택하여 변경 내용을 즉시 적용합니다. 일부의 경우 이 옵션을 선택하면 중단이 발생할 수 있습니다. 자세한 내용은 [수정 예약 설정 사용](USER_ModifyInstance.ApplyImmediately.md) 섹션을 참조하세요.

1. 확인 페이지에서 변경 내용을 검토합니다. 변경 내용이 정확할 경우 **DB 인스턴스 수정**을 선택하여 변경 내용을 저장합니다.

   또는 **뒤로**를 선택하여 변경 내용을 편집하거나 **취소**를 선택하여 변경 내용을 취소합니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.Associating.CLI"></a>

DB 파라미터 그룹을 DB 인스턴스와 연결하려면 다음 옵션과 함께 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) 명령을 사용합니다.
+ `--db-instance-identifier`
+ `--db-parameter-group-name`

다음 예제에서는 `mydbpg` DB 파라미터 그룹을 `database-1` DB 인스턴스와 연결합니다. `--apply-immediately`를 사용하면 변경 내용이 즉시 적용됩니다. `--no-apply-immediately`를 사용하여 다음 유지 관리 기간 동안 변경 사항을 적용합니다. 자세한 내용은 [수정 예약 설정 사용](USER_ModifyInstance.ApplyImmediately.md) 단원을 참조하세요.

**Example**  
대상 LinuxmacOS, 또는Unix:  

```
aws rds modify-db-instance \
    --db-instance-identifier database-1 \
    --db-parameter-group-name mydbpg \
    --apply-immediately
```
Windows의 경우:  

```
aws rds modify-db-instance ^
    --db-instance-identifier database-1 ^
    --db-parameter-group-name mydbpg ^
    --apply-immediately
```

## RDS API
<a name="USER_WorkingWithParamGroups.Associating.API"></a>

DB 파라미터 그룹을 DB 인스턴스와 연결하려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBInstance.html) 작업을 다음 파라미터와 함께 사용합니다.
+ `DBInstanceName`
+ `DBParameterGroupName`

# Amazon RDS에서 DB 파라미터 그룹의 파라미터 수정
<a name="USER_WorkingWithParamGroups.Modifying"></a>

고객이 생성한 DB 파라미터 그룹의 파라미터 값은 수정할 수 있지만, 기본 DB 파라미터 그룹의 파라미터 값은 변경할 수 없습니다. 고객이 생성한 DB 파라미터 그룹의 파라미터를 변경하면 DB 파라미터 그룹과 연결된 모든 DB 인스턴스에 해당 변경 내용이 적용됩니다.

파라미터에는 동적 파라미터와 정적 파라미터라는 두 가지 유형이 있습니다. 동적 파라미터에 대한 변경 사항은 재부팅 없이 DB 인스턴스에 즉시 적용됩니다. 정적 파라미터에 대한 변경 내용은 DB 인스턴스를 재부팅한 후에만 적용됩니다.

RDS 콘솔에는 **구성** 탭에서 DB 인스턴스와 연결된 DB 파라미터 그룹의 상태가 표시됩니다. 예를 들어 DB 인스턴스에서 연결된 DB 파라미터 그룹에 대한 최신 변경 내용을 사용하고 있지 않은 경우 RDS 콘솔에 DB 파라미터 그룹이 **재시작 보류중** 상태로 표시됩니다. 최신 파라미터 변경 내용을 이 DB 인스턴스에 적용하려면 해당 DB 인스턴스를 수동으로 재부팅해야 합니다.

![\[파라미터 변경 내용 보류 중 재부팅 시나리오\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/images/param-reboot.png)


## 콘솔
<a name="USER_WorkingWithParamGroups.Modifying.CON"></a>

**DB 파라미터 그룹의 파라미터를 수정하는 방법**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

1. 목록에서 수정할 파라미터 그룹의 이름을 선택합니다.

1. **파라미터 그룹 작업**에서 **편집**을 선택합니다.

1. 수정할 파라미터의 값을 변경합니다. 대화 상자 오른쪽 위의 화살표 키를 사용하여 파라미터를 스크롤할 수 있습니다.

   기본 파라미터 그룹의 값은 변경할 수 없습니다.

1. **변경 사항 저장**을 선택합니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.Modifying.CLI"></a>

DB 파라미터 그룹을 수정하려면 AWS CLI[https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-parameter-group.html) 명령을 다음 필수 옵션과 함께 사용합니다.
+ `--db-parameter-group-name`
+ `--parameters`

다음 예에서는 *mydbparametergroup*이라는 DB 파라미터 그룹에서` max_connections` 및 `max_allowed_packet` 값을 수정합니다.

**Example**  
대상 LinuxmacOS, 또는Unix:  

```
aws rds modify-db-parameter-group \
    --db-parameter-group-name mydbparametergroup \
    --parameters "ParameterName=max_connections,ParameterValue=250,ApplyMethod=immediate" \
                 "ParameterName=max_allowed_packet,ParameterValue=1024,ApplyMethod=immediate"
```
Windows의 경우:  

```
aws rds modify-db-parameter-group ^
    --db-parameter-group-name mydbparametergroup ^
    --parameters "ParameterName=max_connections,ParameterValue=250,ApplyMethod=immediate" ^
                 "ParameterName=max_allowed_packet,ParameterValue=1024,ApplyMethod=immediate"
```
다음과 같은 출력이 생성됩니다.  

```
DBPARAMETERGROUP  mydbparametergroup
```

## RDS API
<a name="USER_WorkingWithParamGroups.Modifying.API"></a>

DB 파라미터 그룹을 수정하려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBParameterGroup.html) 작업을 다음 필수 파라미터와 함께 사용합니다.
+ `DBParameterGroupName`
+ `Parameters`

# Amazon RDS에서 DB 파라미터 그룹의 파라미터를 기본값으로 재설정
<a name="USER_WorkingWithParamGroups.Resetting"></a>

고객이 생성한 DB 파라미터 그룹의 파라미터 값을 기본값으로 재설정할 수 있습니다. 고객이 생성한 DB 파라미터 그룹의 파라미터를 변경하면 DB 파라미터 그룹과 연결된 모든 DB 인스턴스에 해당 변경 내용이 적용됩니다.

콘솔을 사용하는 경우 특정 파라미터를 기본값으로 재설정할 수 있습니다. 하지만 DB 파라미터 그룹의 모든 파라미터를 한꺼번에 손쉽게 재설정할 수는 없습니다. AWS CLI 또는 RDS API를 사용하는 경우 특정 파라미터를 기본값으로 재설정할 수 있습니다. DB 파라미터 그룹의 모든 파라미터를 한꺼번에 재설정할 수도 있습니다.

일부 파라미터에 대한 변경 사항은 재부팅 없이 DB 인스턴스에 즉시 적용됩니다. 다른 파라미터에 대한 변경 내용은 DB 인스턴스를 재부팅한 후에만 적용됩니다. RDS 콘솔에는 **구성** 탭에서 DB 인스턴스와 연결된 DB 파라미터 그룹의 상태가 표시됩니다. 예를 들어 DB 인스턴스에서 연결된 DB 파라미터 그룹에 대한 최신 변경 내용을 사용하고 있지 않다고 가정해 봅시다. 이 경우 RDS 콘솔에 DB 파라미터 그룹이 **pending-reboot**(재시작 보류 중) 상태로 표시됩니다. 최신 파라미터 변경 내용을 이 DB 인스턴스에 적용하려면 해당 DB 인스턴스를 수동으로 재부팅해야 합니다.

![\[파라미터 변경 내용 보류 중 재부팅 시나리오\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/images/param-reboot.png)


**참고**  
기본 DB 파라미터 그룹에서 파라미터는 항상 기본값으로 설정됩니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.Resetting.CON"></a>

**DB 파라미터 그룹의 파라미터를 기본값으로 재설정하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

1. 목록에서 파라미터 그룹을 선택합니다.

1. **파라미터 그룹 작업**에서 **편집**을 선택합니다.

1. 기본값으로 재설정할 파라미터를 선택합니다. 대화 상자 오른쪽 위의 화살표 키를 사용하여 파라미터를 스크롤할 수 있습니다.

   기본 파라미터 그룹의 값은 변경할 수 없습니다.

1. **Reset**을 선택한 다음 **Reset parameters**를 선택하여 확인합니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.Resetting.CLI"></a>

DB 파라미터 그룹의 파라미터를 일부 또는 모두 재설정하려면 필수 옵션 AWS CLI과 함께 `reset-db-parameter-group`[https://docs.aws.amazon.com/cli/latest/reference/rds/reset-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/reset-db-parameter-group.html) 명령을 사용합니다.

DB 파라미터 그룹의 모든 파라미터를 수정하려면 `--reset-all-parameters` 옵션을 지정합니다. 특정 파라미터를 수정하려면 `--parameters` 옵션을 지정합니다.

다음 예제에서는 *mydbparametergroup*이라는 DB 파라미터 그룹의 모든 파라미터를 기본값으로 수정합니다.

**Example**  
대상 LinuxmacOS, 또는Unix:  

```
aws rds reset-db-parameter-group \
    --db-parameter-group-name mydbparametergroup \
    --reset-all-parameters
```
Windows의 경우:  

```
aws rds reset-db-parameter-group ^
    --db-parameter-group-name mydbparametergroup ^
    --reset-all-parameters
```

다음 예제에서는 *mydbparametergroup*이라는 DB 파라미터 그룹에서 `max_connections` 및 `max_allowed_packet` 옵션을 재설정합니다.

**Example**  
대상 LinuxmacOS, 또는Unix:  

```
aws rds reset-db-parameter-group \
    --db-parameter-group-name mydbparametergroup \
    --parameters "ParameterName=max_connections,ApplyMethod=immediate" \
                 "ParameterName=max_allowed_packet,ApplyMethod=immediate"
```
Windows의 경우:  

```
aws rds reset-db-parameter-group ^
    --db-parameter-group-name mydbparametergroup ^
    --parameters "ParameterName=max_connections,ApplyMethod=immediate" ^
                 "ParameterName=max_allowed_packet,ApplyMethod=immediate"
```
다음과 같은 출력이 생성됩니다.  

```
DBParameterGroupName  mydbparametergroup
```

## RDS API
<a name="USER_WorkingWithParamGroups.Resetting.API"></a>

DB 파라미터 그룹의 파라미터를 기본값으로 재설정하려면 필수 파라미터 `ResetDBParameterGroup`과 함께 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ResetDBParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ResetDBParameterGroup.html) 명령을 사용합니다.

DB 파라미터 그룹의 모든 파라미터를 재설정하려면 `ResetAllParameters` 파라미터를 `true`로 설정합니다. 특정 파라미터를 재설정하려면 `Parameters` 파라미터를 지정합니다.

# Amazon RDS에서 DB 파라미터 그룹 복사
<a name="USER_WorkingWithParamGroups.Copying"></a>

생성하는 사용자 지정 DB 파라미터 그룹을 복사할 수 있습니다 파라미터 그룹을 복사하는 것이 편리한 솔루션이 될 수 있습니다. DB 파라미터 그룹을 만들고 이 그룹의 사용자 지정 파라미터 및 값의 대부분을 새 DB 파라미터 그룹에 포함하려는 경우를 예로 들 수 있습니다. AWS Management Console을 사용하여 DB 파라미터 그룹을 복사할 수 있습니다. AWS CLI [copy-db-parameter-group](https://docs.aws.amazon.com/cli/latest/reference/rds/copy-db-parameter-group.html) 명령 또는 RDS API [CopyDBParameterGroup](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CopyDBParameterGroup.html) 작업을 사용할 수도 있습니다.

DB 파라미터 그룹을 복사한 후 5분 이상 기다렸다가 해당 DB 파라미터 그룹을 기본 파라미터 그룹으로 사용하는 첫 번째 DB 인스턴스를 생성하십시오. 이렇게 하면 파라미터 그룹이 사용되기 전에 Amazon RDS에서 복사 작업을 완전히 마칠 수 있습니다. 이는 DB 인스턴스의 기본 데이터베이스를 생성할 때 필수적인 파라미터에 특히 중요합니다. 한 가지 예는 `character_set_database` 파라미터로 정의되는 기본 데이터베이스에 대한 문자 집합입니다. [Amazon RDS 콘솔](https://console.aws.amazon.com/rds/)의 **파라미터 그룹** 옵션이나 [describe-db-parameters](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-parameters.html) 명령을 사용하여 DB 파라미터 그룹이 생성되었는지 확인하십시오.

**참고**  
기본 파라미터 그룹은 복사할 수 없습니다. 하지만 기본 파라미터 그룹을 바탕으로 하는 새로운 파라미터 그룹을 만들 수 있습니다.  
DB 파라미터 그룹을 다른 AWS 계정 또는 AWS 리전에 복사할 수 없습니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.Copying.CON"></a>

**DB 파라미터 그룹을 복사하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

1. 목록에서 복사할 사용자 지정 파라미터 그룹을 선택합니다.

1. **파라미터 그룹 작업**에서 **복사**를 선택합니다.

1. **새로운 DB 파라미터 그룹 식별자**에 새로운 파라미터 그룹의 이름을 입력합니다.

1. **설명**에 새로운 파라미터 그룹에 대한 설명을 입력합니다.

1. [**Copy**]를 선택합니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.Copying.CLI"></a>

DB 파라미터 그룹을 복사하려면 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/copy-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/copy-db-parameter-group.html) 명령을 다음 필수 옵션과 함께 사용합니다.
+ `--source-db-parameter-group-identifier`
+ `--target-db-parameter-group-identifier`
+ `--target-db-parameter-group-description`

다음 예에서는 DB 파라미터 그룹 `mygroup2`을 복사하여 `mygroup1`라는 새 DB 파라미터 그룹을 생성합니다.

**Example**  
대상 LinuxmacOS, 또는Unix:  

```
aws rds copy-db-parameter-group \
    --source-db-parameter-group-identifier mygroup1 \
    --target-db-parameter-group-identifier mygroup2 \
    --target-db-parameter-group-description "DB parameter group 2"
```
Windows의 경우:  

```
aws rds copy-db-parameter-group ^
    --source-db-parameter-group-identifier mygroup1 ^
    --target-db-parameter-group-identifier mygroup2 ^
    --target-db-parameter-group-description "DB parameter group 2"
```

## RDS API
<a name="USER_WorkingWithParamGroups.Copying.API"></a>

DB 파라미터 그룹을 복사하려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CopyDBParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CopyDBParameterGroup.html) 작업을 다음 필수 파라미터와 함께 사용합니다.
+ `SourceDBParameterGroupIdentifier`
+ `TargetDBParameterGroupIdentifier`
+ `TargetDBParameterGroupDescription`

# Amazon RDS에 DB 파라미터 그룹 나열
<a name="USER_WorkingWithParamGroups.Listing"></a>

AWS 계정에 대해 생성한 DB 파라미터 그룹을 나열할 수 있습니다.

**참고**  
특정 DB 엔진과 버전에 대한 DB 인스턴스를 생성할 때 기존 파라미터 템플릿에서 기본 파라미터 그룹이 자동으로 생성됩니다. 이 기본 파라미터 그룹은 기본 파라미터 설정을 포함하며 수정할 수 없습니다. 사용자 지정 파라미터 그룹을 생성할 때 파라미터 설정을 수정할 수 있습니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.Listing.CON"></a>

**AWS 계정에 대한 모든 DB 파라미터 그룹을 나열하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

   DB 파라미터 그룹이 목록에 나타납니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.Listing.CLI"></a>

AWS 계정에 사용할 수 있는 모든 DB 파라미터 그룹을 나열하려면 AWS CLI[https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-parameter-groups.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-parameter-groups.html) 명령을 사용합니다.

**Example**  
다음 예에서는 AWS 계정에 사용할 수 있는 모든 DB 파라미터 그룹을 나열합니다.  

```
aws rds describe-db-parameter-groups
```
다음과 같은 응답이 반환됩니다.  

```
DBPARAMETERGROUP  default.mysql8.0     mysql8.0  Default parameter group for MySQL8.0
DBPARAMETERGROUP  mydbparametergroup   mysql8.0  My new parameter group
```
다음은 *mydbparamgroup1* 파라미터 그룹을 설명하는 예제입니다.  
대상 LinuxmacOS, 또는Unix:  

```
aws rds describe-db-parameter-groups \
    --db-parameter-group-name mydbparamgroup1
```
Windows의 경우:  

```
aws rds describe-db-parameter-groups ^
    --db-parameter-group-name mydbparamgroup1
```
다음과 같은 응답이 반환됩니다.  

```
DBPARAMETERGROUP  mydbparametergroup1  mysql8.0  My new parameter group
```

## RDS API
<a name="USER_WorkingWithParamGroups.Listing.API"></a>

AWS 계정에 사용할 수 있는 모든 DB 파라미터 그룹을 나열하려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBParameterGroups.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBParameterGroups.html) 작업을 사용합니다.

# Amazon RDS에서 DB 파라미터 그룹의 파라미터 값 보기
<a name="USER_WorkingWithParamGroups.Viewing"></a>

DB 파라미터 그룹의 모든 파라미터와 해당 값 목록을 가져올 수 있습니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.Viewing.CON"></a>

**DB 파라미터 그룹의 파라미터 값을 보려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

   DB 파라미터 그룹이 목록에 나타납니다.

1. 파라미터 그룹의 이름을 선택하여 파라미터 목록을 봅니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.Viewing.CLI"></a>

DB 파라미터 그룹의 파라미터 값을 보려면 AWS CLI[https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-parameters.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-parameters.html) 명령을 다음 필수 파라미터와 함께 사용합니다.
+ `--db-parameter-group-name`

**Example**  
다음 예에서는 *mydbparametergroup*이라는 DB 파라미터 그룹에 대한 파라미터와 파라미터 값을 나열합니다.  

```
aws rds describe-db-parameters --db-parameter-group-name mydbparametergroup
```
다음과 같은 응답이 반환됩니다.  

```
DBPARAMETER  Parameter Name            Parameter Value  Source           Data Type  Apply Type  Is Modifiable
DBPARAMETER  allow-suspicious-udfs                      engine-default   boolean    static      false
DBPARAMETER  auto_increment_increment                   engine-default   integer    dynamic     true
DBPARAMETER  auto_increment_offset                      engine-default   integer    dynamic     true
DBPARAMETER  binlog_cache_size         32768            system           integer    dynamic     true
DBPARAMETER  socket                    /tmp/mysql.sock  system           string     static      false
```

## RDS API
<a name="USER_WorkingWithParamGroups.Viewing.API"></a>

DB 파라미터 그룹의 파라미터 값을 보려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBParameters.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBParameters.html) 명령을 다음 필수 파라미터와 함께 사용하세요.
+ `DBParameterGroupName`

# Amazon RDS에서 DB 파라미터 그룹 삭제
<a name="USER_WorkingWithParamGroups.Deleting"></a>

AWS Management Console, AWS CLI 또는 RDS API를 사용하여 DB 파라미터 그룹을 삭제할 수 있습니다. 파라미터 그룹은 DB 인스턴스와 연결되지 않은 경우에만 삭제할 수 있습니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.Deleting.CON"></a>

**DB 파라미터 그룹 삭제**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

   DB 파라미터 그룹이 목록에 나타납니다.

1. 삭제할 파라미터 그룹의 이름을 선택합니다.

1. **작업**을 선택한 후 **삭제**를 선택합니다.

1. 파라미터 그룹 이름을 검토한 다음 **삭제**를 선택합니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.Deleting.CLI"></a>

DB 파라미터 그룹을 삭제하려면 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-parameter-group.html) 명령을 다음 필수 파라미터와 함께 사용합니다.
+ `--db-parameter-group-name`

**Example**  
다음 예제에서는 **mydbparametergroup이라는 DB 파라미터 그룹을 삭제합니다.  

```
aws rds delete-db-parameter-group --db-parameter-group-name mydbparametergroup
```

## RDS API
<a name="USER_WorkingWithParamGroups.Deleting.API"></a>

DB 파라미터 그룹을 삭제하려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteDBParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteDBParameterGroup.html) 명령을 다음 필수 파라미터와 함께 사용합니다.
+ `DBParameterGroupName`

# 다중 AZ DB 클러스터용 DB 클러스터 파라미터 그룹 작업
<a name="USER_WorkingWithDBClusterParamGroups"></a>

다중 AZ DB 클러스터는 DB 클러스터 파라미터 그룹을 사용합니다. 다음 섹션에서는 DB 클러스터 파라미터 그룹 구성 및 관리에 대해 설명합니다.

**Topics**
+ [DB 클러스터 파라미터 그룹 생성](USER_WorkingWithParamGroups.CreatingCluster.md)
+ [DB 클러스터 파라미터 그룹의 파라미터 수정](USER_WorkingWithParamGroups.ModifyingCluster.md)
+ [DB 클러스터 파라미터 그룹의 파라미터 재설정](USER_WorkingWithParamGroups.ResettingCluster.md)
+ [DB 클러스터 파라미터 그룹 복사](USER_WorkingWithParamGroups.CopyingCluster.md)
+ [DB 클러스터 파라미터 그룹 나열](USER_WorkingWithParamGroups.ListingCluster.md)
+ [DB 클러스터 파라미터 그룹의 파라미터 값 보기](USER_WorkingWithParamGroups.ViewingCluster.md)
+ [DB 클러스터 파라미터 그룹 삭제](USER_WorkingWithParamGroups.DeletingCluster.md)

# DB 클러스터 파라미터 그룹 생성
<a name="USER_WorkingWithParamGroups.CreatingCluster"></a>

AWS Management Console, AWS CLI 또는 RDS API를 사용하여 새 DB 클러스터 파라미터 그룹을 생성할 수 있습니다.

DB 클러스터 파라미터 그룹을 생성한 후 해당 DB 클러스터 파라미터 그룹을 사용하는 DB 클러스터를 생성하려면 5분 이상 기다려야 합니다. 이렇게 하면 새 DB 클러스터에서 사용하기 전에 Amazon RDS에서 파라미터 그룹을 완전히 생성할 수 있습니다. [Amazon RDS 콘솔](https://console.aws.amazon.com/rds/)의 **파라미터 그룹** 페이지 또는 [describe-db-cluster-parameters](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-cluster-parameters.html) 명령을 사용하여 DB 클러스터 파라미터 그룹이 생성되었는지 확인할 수 있습니다.

DB 클러스터 파라미터 그룹 이름에는 다음과 같은 제한이 적용됩니다.
+ 이름은 1\$1255자의 문자, 숫자 또는 하이픈으로 구성되어야 합니다.

  기본 파라미터 그룹 이름에는 마침표(예: `default.mysql5.7`)가 포함될 수 있습니다. 하지만 사용자 지정 파라미터 그룹 이름에는 마침표를 포함할 수 없습니다.
+ 첫 번째 자리는 문자여야 합니다.
+ 이름은 하이픈으로 끝나거나 2개 연속 하이픈을 포함할 수 없습니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.CreatingCluster.CON"></a>

**DB 클러스터 파라미터 그룹을 생성하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

1. [**Create parameter group**]을 선택합니다.

1. **파라미터 그룹 이름**에 새 DB 클러스터 파라미터 그룹의 이름을 입력합니다.

1. **설명**에 새 DB 클러스터 파라미터 그룹에 대한 설명을 입력합니다.

1. **엔진 유형**에서 데이터베이스 엔진을 선택합니다.

1. **파라미터 그룹 패밀리**에서 DB 파라미터 그룹 패밀리를 선택합니다.

1. **Create**를 선택합니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.CreatingCluster.CLI"></a>

DB 클러스터 파라미터 그룹을 생성하려면 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster-parameter-group.html) 명령을 사용합니다.

다음 예에서는 "*My new cluster parameter group*(내 새로운 클러스터 파라미터 그룹)"이라는 설명과 함께 *mydbclusterparametergroup*이라는 RDS for MySQL 버전 8.0용 DB 클러스터 파라미터 그룹을 생성합니다.

다음 필수 파라미터를 포함합니다.
+ `--db-cluster-parameter-group-name`
+ `--db-parameter-group-family`
+ `--description`

사용 가능한 모든 파라미터 그룹 패밀리를 나열하려면 다음 명령을 사용합니다.

```
aws rds describe-db-engine-versions --query "DBEngineVersions[].DBParameterGroupFamily"
```

**참고**  
출력에 중복이 있습니다.

**Example**  
대상 LinuxmacOS, 또는Unix:  

```
aws rds create-db-cluster-parameter-group \
    --db-cluster-parameter-group-name mydbclusterparametergroup \
    --db-parameter-group-family mysql8.0 \
    --description "My new cluster parameter group"
```
Windows의 경우:  

```
aws rds create-db-cluster-parameter-group ^
    --db-cluster-parameter-group-name mydbclusterparametergroup ^
    --db-parameter-group-family mysql8.0 ^
    --description "My new cluster parameter group"
```
다음과 비슷한 출력이 생성됩니다.  

```
{
    "DBClusterParameterGroup": {
        "DBClusterParameterGroupName": "mydbclusterparametergroup",
        "DBParameterGroupFamily": "mysql8.0",
        "Description": "My new cluster parameter group",
        "DBClusterParameterGroupArn": "arn:aws:rds:us-east-1:123456789012:cluster-pg:mydbclusterparametergroup2"
    }
}
```

## RDS API
<a name="USER_WorkingWithParamGroups.CreatingCluster.API"></a>

DB 클러스터 파라미터 그룹을 생성하려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBClusterParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBClusterParameterGroup.html) 작업을 사용합니다.

다음 필수 파라미터를 포함합니다.
+ `DBClusterParameterGroupName`
+ `DBParameterGroupFamily`
+ `Description`

# DB 클러스터 파라미터 그룹의 파라미터 수정
<a name="USER_WorkingWithParamGroups.ModifyingCluster"></a>

고객이 생성한 DB 클러스터 파라미터 그룹에서 파라미터 값을 수정할 수 있습니다. 기본 DB 클러스터 파라미터 그룹에서는 파라미터 값을 변경할 수 없습니다. 고객이 생성한 DB 클러스터 파라미터 그룹의 파라미터를 변경하면 DB 클러스터 파라미터 그룹과 연결된 모든 DB 클러스터에 해당 변경 내용이 적용됩니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.ModifyingCluster.CON"></a>

**DB 클러스터 파라미터 그룹을 수정하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

1. 목록에서 수정할 파라미터 그룹을 선택합니다.

1. **파라미터 그룹 작업**에서 **편집**을 선택합니다.

1. 수정하려는 파라미터의 값을 변경합니다. 대화 상자 오른쪽 위의 화살표 키를 사용하여 파라미터를 스크롤할 수 있습니다.

   기본 파라미터 그룹의 값은 변경할 수 없습니다.

1. [**Save changes**]를 선택합니다.

1. 클러스터의 재부팅하여 변경 사항을 적용합니다.

   클러스터를 재부팅하지 않으면 장애 조치 작업이 평소보다 오래 걸릴 수 있습니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.ModifyingCluster.CLI"></a>

DB 클러스터 파라미터 그룹을 수정하려면 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster-parameter-group.html) 명령을 다음 필수 파라미터와 함께 사용합니다.
+ `--db-cluster-parameter-group-name`
+ `--parameters`

다음 예에서는 *mydbclusterparametergroup*이라는 DB 클러스터 파라미터 그룹에서 `server_audit_logging` 및 `server_audit_logs_upload` 값을 수정합니다.

**Example**  
대상 LinuxmacOS, 또는Unix:  

```
aws rds modify-db-cluster-parameter-group \
    --db-cluster-parameter-group-name mydbclusterparametergroup \
    --parameters "ParameterName=server_audit_logging,ParameterValue=1,ApplyMethod=immediate" \
                 "ParameterName=server_audit_logs_upload,ParameterValue=1,ApplyMethod=immediate"
```
Windows의 경우:  

```
aws rds modify-db-cluster-parameter-group ^
    --db-cluster-parameter-group-name mydbclusterparametergroup ^
    --parameters "ParameterName=server_audit_logging,ParameterValue=1,ApplyMethod=immediate" ^
                 "ParameterName=server_audit_logs_upload,ParameterValue=1,ApplyMethod=immediate"
```
다음과 같은 출력이 생성됩니다.  

```
DBCLUSTERPARAMETERGROUP  mydbclusterparametergroup
```

## RDS API
<a name="USER_WorkingWithParamGroups.ModifyingCluster.API"></a>

DB 클러스터 파라미터 그룹을 수정하려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBClusterParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBClusterParameterGroup.html) 명령을 다음 필수 파라미터와 함께 사용합니다.
+ `DBClusterParameterGroupName`
+ `Parameters`

# DB 클러스터 파라미터 그룹의 파라미터 재설정
<a name="USER_WorkingWithParamGroups.ResettingCluster"></a>

고객이 생성한 DB 클러스터 파라미터 그룹에서 파라미터를 기본값으로 수정할 수 있습니다. 고객이 생성한 DB 클러스터 파라미터 그룹의 파라미터를 변경하면 DB 클러스터 파라미터 그룹과 연결된 모든 DB 클러스터에 해당 변경 내용이 적용됩니다.

**참고**  
기본 DB 클러스터 파라미터 그룹에서 파라미터는 항상 기본값으로 설정됩니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.ResettingCluster.CON"></a>

**DB 클러스터 파라미터 그룹의 파라미터를 기본값으로 수정**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

1. 목록에서 파라미터 그룹을 선택합니다.

1. **파라미터 그룹 작업**에서 **편집**을 선택합니다.

1. 기본값으로 재설정할 파라미터를 선택합니다. 대화 상자 오른쪽 위의 화살표 키를 사용하여 파라미터를 스크롤할 수 있습니다.

   기본 파라미터 그룹의 값은 변경할 수 없습니다.

1. **Reset**을 선택한 다음 **Reset parameters**를 선택하여 확인합니다.

1. DB 클러스터의 를 재부팅하여 변경 사항을 DB 클러스터의 모든 DB 인스턴스에 적용합니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.ResettingCluster.CLI"></a>

DB 클러스터 파라미터 그룹의 파라미터를 기본값으로 수정하려면 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/reset-db-cluster-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/reset-db-cluster-parameter-group.html) 명령을 필수 옵션 `--db-cluster-parameter-group-name`과 함께 사용합니다.

DB 클러스터 파라미터 그룹의 모든 파라미터를 수정하려면 `--reset-all-parameters` 옵션을 지정합니다. 특정 파라미터를 수정하려면 `--parameters` 옵션을 지정합니다.

다음 예제에서는 *mydbparametergroup*이라는 DB 파라미터 그룹의 모든 파라미터를 기본값으로 수정합니다.

**Example**  
대상 LinuxmacOS, 또는Unix:  

```
aws rds reset-db-cluster-parameter-group \
    --db-cluster-parameter-group-name mydbparametergroup \
    --reset-all-parameters
```
Windows의 경우:  

```
aws rds reset-db-cluster-parameter-group ^
    --db-cluster-parameter-group-name mydbparametergroup ^
    --reset-all-parameters
```

다음 예제에서는 *mydbclusterparametergroup*이라는 DB 클러스터 파라미터 그룹에서 `server_audit_logging` 및 `server_audit_logs_upload` 값을 수정합니다.

**Example**  
대상 LinuxmacOS, 또는Unix:  

```
aws rds reset-db-cluster-parameter-group \
    --db-cluster-parameter-group-name mydbclusterparametergroup \
    --parameters "ParameterName=server_audit_logging,ApplyMethod=immediate" \
                 "ParameterName=server_audit_logs_upload,ApplyMethod=immediate"
```
Windows의 경우:  

```
aws rds reset-db-cluster-parameter-group ^
    --db-cluster-parameter-group-name mydbclusterparametergroup ^
    --parameters "ParameterName=server_audit_logging,ParameterValue=1,ApplyMethod=immediate" ^
                 "ParameterName=server_audit_logs_upload,ParameterValue=1,ApplyMethod=immediate"
```
다음과 같은 출력이 생성됩니다.  

```
DBClusterParameterGroupName  mydbclusterparametergroup
```

## RDS API
<a name="USER_WorkingWithParamGroups.ResettingCluster.API"></a>

DB 클러스터 파라미터 그룹의 파라미터를 기본값으로 재설정하려면 다음과 같은 필수 파라미터와 함께 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ResetDBClusterParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ResetDBClusterParameterGroup.html) 명령을 사용합니다: `DBClusterParameterGroupName`.

DB 클러스터 파라미터 그룹의 모든 파라미터를 재설정하려면 `ResetAllParameters` 파라미터를 `true`로 설정합니다. 특정 파라미터를 재설정하려면 `Parameters` 파라미터를 지정합니다.

# DB 클러스터 파라미터 그룹 복사
<a name="USER_WorkingWithParamGroups.CopyingCluster"></a>

생성하는 사용자 지정 DB 클러스터 파라미터 그룹을 복사할 수 있습니다. DB 클러스터 파라미터 그룹을 이미 생성했으며 해당 그룹의 사용자 지정 파라미터와 값의 대부분을 새 DB 클러스터 파라미터 그룹에 포함하려는 경우 파라미터 그룹을 복사하면 편리합니다. AWS CLI[copy-db-cluster-parameter-group](https://docs.aws.amazon.com/cli/latest/reference/rds/copy-db-cluster-parameter-group.html) 명령이나 RDS API [CopyDBClusterParameterGroup](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CopyDBParameterGroup.html) 작업을 사용하여 DB 클러스터 파라미터 그룹을 복사할 수 있습니다.

DB 클러스터 파라미터 그룹을 복사한 후 5분 이상 기다렸다가 해당 DB 클러스터 파라미터 그룹을 기본 파라미터 그룹으로 사용하는 첫 번째 DB 클러스터를 복사합니다. 이렇게 하면 새 DB 클러스터에서 사용하기 전에 Amazon RDS에서 파라미터 그룹을 완전히 복사할 수 있습니다. [Amazon RDS 콘솔](https://console.aws.amazon.com/rds/)의 **파라미터 그룹** 페이지 또는 [describe-db-cluster-parameters](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-cluster-parameters.html) 명령을 사용하여 DB 클러스터 파라미터 그룹이 생성되었는지 확인할 수 있습니다.

**참고**  
기본 파라미터 그룹은 복사할 수 없습니다. 하지만 기본 파라미터 그룹을 바탕으로 하는 새로운 파라미터 그룹을 만들 수 있습니다.  
DB 클러스터 파라미터 그룹을 다른 AWS 계정 또는 AWS 리전에 복사할 수 없습니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.CopyingCluster.CON"></a>

**DB 클러스터 파라미터 그룹을 복사하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

1. 목록에서 복사할 사용자 지정 파라미터 그룹을 선택합니다.

1. **파라미터 그룹 작업**에서 **복사**를 선택합니다.

1. **새로운 DB 파라미터 그룹 식별자**에 새로운 파라미터 그룹의 이름을 입력합니다.

1. **설명**에 새로운 파라미터 그룹에 대한 설명을 입력합니다.

1. [**Copy**]를 선택합니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.CopyingCluster.CLI"></a>

DB 클러스터 파라미터 그룹을 복사하려면 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/copy-db-cluster-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/copy-db-cluster-parameter-group.html) 명령을 다음 필수 파라미터와 함께 사용합니다.
+ `--source-db-cluster-parameter-group-identifier`
+ `--target-db-cluster-parameter-group-identifier`
+ `--target-db-cluster-parameter-group-description`

다음 예에서는 DB 클러스터 파라미터 그룹 `mygroup2`을 복사하여 `mygroup1`라는 새 DB 클러스터 파라미터 그룹을 생성합니다.

**Example**  
대상 LinuxmacOS, 또는Unix:  

```
aws rds copy-db-cluster-parameter-group \
    --source-db-cluster-parameter-group-identifier mygroup1 \
    --target-db-cluster-parameter-group-identifier mygroup2 \
    --target-db-cluster-parameter-group-description "DB parameter group 2"
```
Windows의 경우:  

```
aws rds copy-db-cluster-parameter-group ^
    --source-db-cluster-parameter-group-identifier mygroup1 ^
    --target-db-cluster-parameter-group-identifier mygroup2 ^
    --target-db-cluster-parameter-group-description "DB parameter group 2"
```

## RDS API
<a name="USER_WorkingWithParamGroups.Copying.API"></a>

DB 클러스터 파라미터 그룹을 복사하려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CopyDBClusterParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CopyDBClusterParameterGroup.html) 작업을 다음 필수 파라미터와 함께 사용합니다.
+ `SourceDBClusterParameterGroupIdentifier`
+ `TargetDBClusterParameterGroupIdentifier`
+ `TargetDBClusterParameterGroupDescription`

# DB 클러스터 파라미터 그룹 나열
<a name="USER_WorkingWithParamGroups.ListingCluster"></a>

AWS 계정에 대해 생성한 DB 클러스터 파라미터 그룹을 나열할 수 있습니다.

**참고**  
특정 DB 엔진과 버전에 대한 DB 클러스터를 생성할 때 기존 파라미터 템플릿에서 기본 파라미터 그룹이 자동으로 생성됩니다. 이 기본 파라미터 그룹은 기본 파라미터 설정을 포함하며 수정할 수 없습니다. 사용자 지정 파라미터 그룹을 생성할 때 파라미터 설정을 수정할 수 있습니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.ListingCluster.CON"></a>

**AWS 계정에 대한 모든 DB 클러스터 파라미터 그룹을 나열하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

   DB 클러스터 파라미터 그룹은 목록에서 **DB 클러스터 파라미터 그룹****유형**에 나타납니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.ListingCluster.CLI"></a>

AWS 계정에 사용할 수 있는 모든 DB 클러스터 파라미터 그룹을 나열하려면 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-clusterparameter-groups.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-clusterparameter-groups.html) 명령을 사용합니다.

**Example**  
다음 예에서는 AWS 계정에 사용할 수 있는 모든 DB 클러스터 파라미터 그룹을 나열합니다.  

```
aws rds describe-db-cluster-parameter-groups
```
다음은 *mydbclusterparametergroup* 파라미터 그룹을 설명하는 예제입니다.  
대상 LinuxmacOS, 또는Unix:  

```
aws rds describe-db-cluster-parameter-groups \
    --db-cluster-parameter-group-name mydbclusterparametergroup
```
Windows의 경우:  

```
aws rds describe-db-cluster-parameter-groups ^
    --db-cluster-parameter-group-name mydbclusterparametergroup
```
다음과 같은 응답이 반환됩니다.  

```
{
    "DBClusterParameterGroups": [
        {
            "DBClusterParameterGroupName": "mydbclusterparametergroup2",
            "DBParameterGroupFamily": "mysql8.0",
            "Description": "My new cluster parameter group",
            "DBClusterParameterGroupArn": "arn:aws:rds:us-east-1:123456789012:cluster-pg:mydbclusterparametergroup"
        }
    ]
}
```

## RDS API
<a name="USER_WorkingWithParamGroups.ListingCluster.API"></a>

AWS 계정에 사용할 수 있는 모든 DB 클러스터 파라미터 그룹을 나열하려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusterParameterGroups.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusterParameterGroups.html) 작업을 사용합니다.

# DB 클러스터 파라미터 그룹의 파라미터 값 보기
<a name="USER_WorkingWithParamGroups.ViewingCluster"></a>

DB 클러스터 파라미터 그룹의 모든 파라미터와 해당 값 목록을 가져올 수 있습니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.ViewingCluster.CON"></a>

**DB 클러스터 파라미터 그룹의 파라미터 값을 보려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

   DB 클러스터 파라미터 그룹은 목록에서 **DB 클러스터 파라미터 그룹****유형**에 나타납니다.

1. DB 클러스터 파라미터 그룹의 이름을 선택하여 파라미터 목록을 봅니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.ViewingCluster.CLI"></a>

DB 클러스터 파라미터 그룹의 파라미터 값을 보려면 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-cluster-parameters.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-cluster-parameters.html) 명령을 다음 필수 파라미터와 함께 사용합니다.
+ `--db-cluster-parameter-group-name`

**Example**  
다음 예에서는 *mydbclusterparametergroup*이라는 DB 클러스터 파라미터 그룹에 대한 파라미터와 파라미터 값을 JSON 형식으로 나열합니다.  
다음과 같은 응답이 반환됩니다.  

```
aws rds describe-db-cluster-parameters --db-cluster-parameter-group-name mydbclusterparametergroup
```

```
{
    "Parameters": [
        {
            "ParameterName": "activate_all_roles_on_login",
            "ParameterValue": "0",
            "Description": "Automatically set all granted roles as active after the user has authenticated successfully.",
            "Source": "engine-default",
            "ApplyType": "dynamic",
            "DataType": "boolean",
            "AllowedValues": "0,1",
            "IsModifiable": true,
            "ApplyMethod": "pending-reboot",
            "SupportedEngineModes": [
                "provisioned"
            ]
        },
        {
            "ParameterName": "allow-suspicious-udfs",
            "Description": "Controls whether user-defined functions that have only an xxx symbol for the main function can be loaded",
            "Source": "engine-default",
            "ApplyType": "static",
            "DataType": "boolean",
            "AllowedValues": "0,1",
            "IsModifiable": false,
            "ApplyMethod": "pending-reboot",
            "SupportedEngineModes": [
                "provisioned"
            ]
        },
...
```

## RDS API
<a name="USER_WorkingWithParamGroups.ViewingCluster.API"></a>

DB 클러스터 파라미터 그룹의 파라미터 값을 보려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBParameters.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBParameters.html) 명령을 다음 필수 파라미터와 함께 사용하세요.
+ `DBClusterParameterGroupName`

경우에 따라 파라미터에 허용된 값이 표시되지 않습니다. 이러한 파라미터는 항상 소스가 데이터베이스 엔진 기본값인 파라미터입니다.

이러한 파라미터의 값을 보려면 다음 SQL 문을 실행하면 됩니다.
+ MySQL:

  ```
  -- Show the value of a particular parameter
  mysql$ SHOW VARIABLES LIKE '%parameter_name%';
  
  -- Show the values of all parameters
  mysql$ SHOW VARIABLES;
  ```
+ PostgreSQL:

  ```
  -- Show the value of a particular parameter
  postgresql=> SHOW parameter_name;
  
  -- Show the values of all parameters
  postgresql=> SHOW ALL;
  ```

# DB 클러스터 파라미터 그룹 삭제
<a name="USER_WorkingWithParamGroups.DeletingCluster"></a>

AWS Management Console, AWS CLI 또는 RDS API를 사용하여 DB 클러스터 파라미터 그룹을 삭제할 수 있습니다. DB 클러스터 파라미터 그룹 파라미터 그룹은 DB 클러스터와 연결되지 않은 경우에만 삭제할 수 있습니다.

## 콘솔
<a name="USER_WorkingWithParamGroups.DeletingCluster.CON"></a>

**파라미터 그룹을 삭제하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

   파라미터 그룹이 목록에 나타납니다.

1. 삭제할 DB 클러스터 파라미터 그룹의 이름을 선택합니다.

1. **작업**을 선택한 후 **삭제**를 선택합니다.

1. 파라미터 그룹 이름을 검토한 다음 **삭제**를 선택합니다.

## AWS CLI
<a name="USER_WorkingWithParamGroups.DeletingCluster.CLI"></a>

DB 클러스터 파라미터 그룹을 삭제하려면 AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-cluster-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-cluster-parameter-group.html) 명령을 다음 필수 파라미터와 함께 사용합니다.
+ `--db-parameter-group-name`

**Example**  
다음 예제에서는 **mydbparametergroup이라는 DB 클러스터 파라미터 그룹을 삭제합니다.  

```
aws rds delete-db-cluster-parameter-group --db-parameter-group-name mydbparametergroup
```

## RDS API
<a name="USER_WorkingWithParamGroups.DeletingCluster.API"></a>

DB 클러스터 파라미터 그룹을 삭제하려면 RDS API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteDBClusterParameterGroup.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteDBClusterParameterGroup.html) 명령을 다음 필수 파라미터와 함께 사용합니다.
+ `DBParameterGroupName`

# DB 파라미터 그룹 비교
<a name="USER_WorkingWithParamGroups.Comparing"></a>

AWS Management Console을 사용하여 두 DB 파라미터 그룹 간 차이를 확인할 수 있습니다.

지정된 파라미터 그룹은 둘 다 DB 파라미터 그룹이거나 둘 다 DB 클러스터 파라미터 그룹이어야 합니다. DB 엔진과 버전이 같더라도 마찬가지입니다. 예를 들어 `aurora-mysql8.0`(Aurora MySQL 버전 3) DB 파라미터 그룹과 `aurora-mysql8.0` DB 클러스터 파라미터 그룹을 비교할 수 없습니다.

버전이 다르더라도 Aurora MySQL 파라미터 그룹과 RDS for MySQL DB 파라미터 그룹을 비교할 수 있지만 Aurora PostgreSQL DB 파라미터 그룹과 RDS for PostgreSQL DB 파라미터 그룹을 비교할 수는 없습니다.

**두 DB 파라미터 그룹을 비교하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **파라미터 그룹**을 선택합니다.

1. 목록에서 비교하려는 두 파라미터 그룹을 선택합니다.
**참고**  
기본 파라미터 그룹을 사용자 지정 파라미터 그룹과 비교하려면 먼저 **기본** 탭에서 기본 파라미터 그룹을 선택한 다음 **사용자 지정** 탭에서 사용자 지정 파라미터 그룹을 선택합니다.

1. **작업** 에서 **비교**를 선택합니다.

# DB 파라미터 지정
<a name="USER_ParamValuesRef"></a>

DB 파라미터 유형은 다음과 같습니다.
+ Integer
+ 불
+ String
+ Long
+ Double
+ Timestamp
+ 다른 정의된 데이터 형식의 객체
+ 정수, 부울, 문자열, long, double, 타임스탬프 또는 객체 형식의 값 배열

표현식, 수식 및 함수를 사용하여 정수 및 부울 파라미터를 지정할 수도 있습니다.

Oracle 엔진의 경우 `DBInstanceClassHugePagesDefault` 수식 변수를 사용하여 부울 DB 파라미터를 지정할 수 있습니다. [DB 파라미터 수식 변수](#USER_FormulaVariables) 단원을 참조하십시오.

PostgreSQL 엔진의 경우 표현식을 사용하여 부울 DB 파라미터를 지정할 수 있습니다. [부울 DB 파라미터 표현식](#USER_ParamBooleanExpressions) 단원을 참조하십시오.

**Contents**
+ [DB 파라미터 수식](#USER_ParamFormulas)
  + [DB 파라미터 수식 변수](#USER_FormulaVariables)
  + [DB 파라미터 수식 연산자](#USER_FormulaOperators)
+ [DB 파라미터 함수](#USER_ParamFunctions)
+ [부울 DB 파라미터 표현식](#USER_ParamBooleanExpressions)
+ [DB 파라미터 로그 표현식](#USER_ParamLogExpressions)
+ [DB 파라미터 값 예제](#USER_ParamValueExamples)

## DB 파라미터 수식
<a name="USER_ParamFormulas"></a>

DB 파라미터 수식은 정수 값 또는 부울 값으로 확인되는 표현식입니다. 이 표현식은 중괄호(\$1\$1)로 묶여 있습니다. DB 파라미터 값에 수식을 사용하거나 DB 파라미터 함수의 인수로 수식을 사용할 수 있습니다.

**구문**  

```
{FormulaVariable}
{FormulaVariable*Integer}
{FormulaVariable*Integer/Integer}
{FormulaVariable/Integer}
```

### DB 파라미터 수식 변수
<a name="USER_FormulaVariables"></a>

각 수식 변수는 정수 또는 부울 값을 반환합니다. 변수 이름은 대소문자를 구분합니다.

*AllocatedStorage*  
데이터 볼륨의 크기(바이트)를 나타내는 정수를 반환합니다.

*DBInstanceClassHugePagesDefault*  
부울 값 반환 현재 Oracle 엔진에 대해서만 지원됩니다.  
자세한 내용은 [RDS for Oracle 인스턴스에 HugePages 활성화](Oracle.Concepts.HugePages.md) 섹션을 참조하세요.

*DBInstanceClassMemory*  
데이터베이스 프로세스에 사용할 수 있는 메모리의 바이트 수에 대한 정수를 반환합니다. 이 숫자는 DB 인스턴스 클래스에 대한 총 메모리 양에서 시작하여 내부적으로 계산됩니다. 이 계산에서 인스턴스를 관리하는 RDS 프로세스와 운영 체제용으로 예약된 메모리가 차감됩니다. 따라서 이 숫자는 [DB 인스턴스 클래스](Concepts.DBInstanceClass.md)의 인스턴스 클래스 표에 표시된 메모리 수치보다 항상 다소 낮습니다. 정확한 값은 여러 요인의 조합에 따라 달라집니다. 여기에는 인스턴스 클래스, DB 엔진이 포함되며 RDS 인스턴스에 적용되는지 아니면 Aurora 클러스터의 일부인 인스턴스에 적용되는지에 따라 값이 달라집니다.

*DBInstanceVCPU*  
Amazon RDS가 인스턴스를 관리하는 데 사용하는 vCPU(가상 중앙 처리 유닛)의 수를 나타내는 정수를 반환합니다.

*EndPointPort*  
DB 인스턴스에 연결하는 데 사용되는 포트를 나타내는 정수를 반환합니다.

*TrueIfReplica*  
DB 인스턴스가 읽기 전용 복제본이면 `1`, 아니면 `0`을 반환합니다. MySQL의 `read_only` 파라미터에 대한 기본값입니다.

### DB 파라미터 수식 연산자
<a name="USER_FormulaOperators"></a>

DB 파라미터 수식은 나눗셈과 곱셈의 두 가지 연산자를 지원합니다.

*나눗셈 연산자: /*  
나뉨수를 나눗수로 나누어 정수 몫을 반환합니다. 몫의 소수는 잘리며 반올림되지 않습니다.  
구문  

```
dividend / divisor
```
나뉨수 및 나눗수 인수는 정수 식이어야 합니다.

*곱셈 연산자: \$1*  
표현식을 곱하여 해당 표현식의 곱을 반환합니다. 표현식 소수는 잘리며 반올림되지 않습니다.  
구문  

```
expression * expression
```
두 식 모두 정수여야 합니다.

## DB 파라미터 함수
<a name="USER_ParamFunctions"></a>

DB 파라미터 함수의 인수를 정수 또는 수식으로 지정합니다. 함수마다 인수가 하나 이상 있어야 합니다. 여러 인수를 쉼표로 구분된 목록으로 지정합니다. 목록에 *argument1*, *argument3*과 같은 빈 멤버를 넣을 수 없습니다. 함수 이름은 대소문자를 구분하지 않습니다.

*IF*  
인수를 반환합니다.  
현재 Oracle 엔진에 대해서만 지원하고 지원하는 첫 인수는 `{DBInstanceClassHugePagesDefault}`입니다. 자세한 내용은 [RDS for Oracle 인스턴스에 HugePages 활성화](Oracle.Concepts.HugePages.md) 섹션을 참조하세요.  
구문  

```
IF(argument1, argument2, argument3)
```
첫 번째 인수가 true이면 두 번째 인수를 반환합니다. 그렇지 않으면 세 번째 인수를 반환합니다.

*GREATEST*  
정수 또는 파라미터 수식 목록에서 가장 큰 값을 반환합니다.  
구문  

```
GREATEST(argument1, argument2,...argumentn)
```
정수를 반환합니다.

*LEAST*  
정수 또는 파라미터 수식 목록에서 가장 작은 값을 반환합니다.  
구문  

```
LEAST(argument1, argument2,...argumentn)
```
정수를 반환합니다.

*SUM*  
지정된 정수나 파라미터 수식의 값을 더합니다.  
구문  

```
SUM(argument1, argument2,...argumentn)
```
정수를 반환합니다.

## 부울 DB 파라미터 표현식
<a name="USER_ParamBooleanExpressions"></a>

부울 DB 파라미터 표현식은 1 또는 0의 부울 값으로 해석됩니다. 이 표현식은 따옴표로 묶여 있습니다.

**참고**  
부울 DB 파라미터 표현식은 PostgreSQL 엔진에 대해서만 지원됩니다.

**구문**  

```
"expression operator expression"
```
두 표현식 모두 정수로 해석되어야 합니다. 표현식은 다음 형식일 수 있습니다.  
+ 정수 상수
+ DB 파라미터 수식
+ DB 파라미터 함수
+ DB 파라미터 변수

부울 DB 파라미터 표현식은 다음과 같은 부등식 연산자를 지원합니다.

*보다 큼 연산자: >*  
구문  

```
"expression > expression"
```

*보다 작음 연산자: <*  
구문  

```
"expression < expression"
```

* 크거나 같음 연산자: >=, =>*  
구문  

```
"expression >= expression"
"expression => expression"
```

*작거나 같음 연산자: <=, =<*  
구문  

```
"expression <= expression"
"expression =< expression"
```

**Example 부울 DB 파라미터 표현식 사용**  
다음 부울 DB 파라미터 표현식 예시에서는 파라미터 수식의 결과를 정수와 비교합니다. PostgreSQL DB 인스턴스의 부울 DB 파라미터 `wal_compression`을 수정하기 위한 것입니다. 이 파라미터 표현식은 vCPU 수를 값 2와 비교합니다. vCPU 수가 2보다 크면 `wal_compression` DB 파라미터가 true로 설정됩니다.  

```
aws rds modify-db-parameter-group --db-parameter-group-name group-name \
--parameters "ParameterName=wal_compression,ParameterValue=\"{DBInstanceVCPU} > 2\" "
```

## DB 파라미터 로그 표현식
<a name="USER_ParamLogExpressions"></a>

정수 DB 파라미터 값을 로그 표현식으로 설정할 수 있습니다. 이 표현식은 중괄호(\$1\$1)로 묶여 있습니다. 예:

```
{log(DBInstanceClassMemory/8187281418)*1000}
```

`log` 함수는 로그 밑 2를 나타냅니다. 또한 이 예제에서는 `DBInstanceClassMemory` 수식 변수를 사용합니다. [DB 파라미터 수식 변수](#USER_FormulaVariables) 단원을 참조하십시오.

**참고**  
현재, MySQL `innodb_log_file_size` 파라미터를 정수 이외의 값으로 지정할 수 없습니다.

## DB 파라미터 값 예제
<a name="USER_ParamValueExamples"></a>

이 예에서는 DB 파라미터 값에 수식, 함수 및 표현식을 사용하는 방법을 보여 줍니다.

**주의**  
DB 파라미터 그룹에 파라미터를 잘못 설정하면 의도하지 않은 부작용이 있을 수 있습니다. 이러한 부작용에는 성능 저하, 시스템 불안정 등이 포함될 수 있습니다. 데이터베이스 파라미터를 수정할 때 주의하고 DB 파라미터 그룹을 수정하기 전에 데이터를 백업하세요. 파라미터 그룹 변경 내용을 프로덕션 DB 인스턴스에 적용하기 전에 특정 시점으로 복원을 사용하여 생성한 테스트 DB 인스턴스에 적용해 봐야 합니다.

**Example DB 파라미터 함수 GREATEST 사용**  
Oracle 프로세스 파리미터에 `GREATEST` 함수를 지정할 수 있습니다. `DBInstanceClassMemory`를 9,868,951로 나눈 값과 80 중 더 큰 값으로 사용자 프로세스 수를 설정하려면 이 함수를 사용합니다.  

```
GREATEST({DBInstanceClassMemory/9868951},80)
```

**Example DB 파라미터 함수 LEAST 사용**  
MySQL `LEAST` 파라미터 값에 `max_binlog_cache_size` 함수를 지정할 수 있습니다. 트랜잭션이 MySQL 인스턴스에서 사용할 수 있는 최대 캐시 값을 1MB와 `DBInstanceClass`/256 중 더 작은 값으로 설정하려면 이 함수를 사용합니다.  

```
LEAST({DBInstanceClassMemory/256},10485760)
```

# Amazon RDS DB 인스턴스 설정을 사용하여 Amazon ElastiCache 캐시 생성
<a name="creating-elasticache-cluster-with-RDS-settings"></a>

ElastiCache는 유연한 실시간 사용 사례를 지원하는 마이크로초 단위의 읽기 및 쓰기 지연 시간을 제공하는 완전 관리형 인 메모리 캐싱 서비스입니다. ElastiCache는 애플리케이션 및 데이터베이스 성능을 가속화하는 데 도움이 될 수 있습니다. ElastiCache를 게임 리더보드, 스트리밍, 데이터 분석 같은 데이터 내구성이 필요하지 않은 사용 사례의 기본 데이터 스토어로 사용할 수 있습니다. ElastiCache는 분산된 컴퓨팅 환경의 배포 및 관리와 관련된 복잡성을 해소하는 데 도움을 줍니다. 자세한 내용은 [일반적인 ElastiCache 사용 사례 및 ElastiCache가 도움이 되는 방법](https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/elasticache-use-cases.html)(Memcached) 및 [일반적인 ElastiCache 사용 사례 및 ElastiCache가 도움이 되는 방법](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/elasticache-use-cases.html)(Redis OSS)을 참조하세요. Amazon RDS 콘솔을 사용하여 ElastiCache 캐시를 생성할 수 있습니다.

Amazon ElastiCache는 2가지 형식으로 운영할 수 있습니다. 서버리스 캐시로 시작하거나 자체 캐시 클러스터를 설계하도록 선택할 수 있습니다. 자체 캐시 클러스터를 설계하기로 선택한 경우 ElastiCache는 Redis OSS 엔진 및 Memcached 엔진 모두와 함께 작동합니다. 어떤 엔진을 사용해야 할지 잘 모르겠는 경우 [Memcached와 Redis OSS 비교](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/SelectEngine.html)를 참조하세요. Amazon ElastiCache에 대한 자세한 내용은 [Amazon ElastiCache 사용 설명서](https://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/)를 참조하세요.

**Topics**
+ [RDS DB 인스턴스 설정을 사용하는 ElastiCache 캐시 생성 개요](#creating-elasticache-cluster-with-RDS-settings-overview)
+ [RDS DB 인스턴스의 설정을 사용하여 ElastiCache 캐시 생성](#creating-elasticache-cluster-with-RDS-settings-new-DB)

## RDS DB 인스턴스 설정을 사용하는 ElastiCache 캐시 생성 개요
<a name="creating-elasticache-cluster-with-RDS-settings-overview"></a>

새로 생성한 또는 기존의 RDS DB 인스턴스와 동일한 구성 설정을 사용하여 Amazon RDS에서 ElastiCache 캐시를 생성할 수 있습니다.

ElastiCache 캐시를 DB 인스턴스와 연결하는 몇 가지 사용 사례:
+ RDS에서만 실행하는 대신 ElastiCache를 RDS와 함께 사용하면 비용을 절감하고 성능을 개선할 수 있습니다.

  예를 들어, RDS for MySQL만 사용할 때와 비교하여 RDS for MySQL과 함께 ElastiCache를 사용하면 비용을 최대 55% 절감하고 최대 80배 더 빠른 읽기 성능을 얻을 수 있습니다.
+ 데이터 내구성이 필요하지 않은 애플리케이션의 프라이머리 데이터 스토어로 ElastiCache 캐시를 사용할 수 있습니다. Redis OSS 또는 Memcached를 사용하는 애플리케이션은 거의 수정하지 않고 ElastiCache를 사용할 수 있습니다.

RDS에서 ElastiCache 캐시를 생성하는 경우, ElastiCache 캐시는 연결된 RDS DB 인스턴스에서 다음 설정을 상속합니다.
+ ElastiCache 연결 설정
+ ElastiCache 보안 설정

요구 사항에 따라 캐시 구성 설정을 설정할 수 있습니다.

### 애플리케이션에 ElastiCache 설정
<a name="creating-elasticache-cluster-with-RDS-settings-overview-SettingUpELC"></a>

ElastiCache 캐시를 활용하도록 애플리케이션을 설정해야 합니다. 또한 요구 사항에 따라 캐싱 전략을 사용하도록 애플리케이션을 설정하여 캐시 성능을 최적화하고 개선할 수 있습니다.
+  ElastiCache 캐시에 액세스하여 시작하려면 [ElastiCache 시작하기(Redis OSS)](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/GettingStarted.html) 및 [ElastiCache 시작하기(Memcached)](https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/GettingStarted.html)를 참조하세요.
+  캐싱 전략에 대한 자세한 내용은 [캐싱 전략 및 모범 사례](https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/BestPractices.html)(Memcached) 및 [캐싱 전략 및 모범 사례](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/BestPractices.html)(Redis OSS)를 참조하세요.
+  ElastiCache(Redis OSS) 클러스터의 고가용성에 대한 자세한 내용은 [복제 그룹을 사용한 고가용성](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/BestPractices.html)을 참조하세요.
+  백업 스토리지, 리전 내 또는 리전 간 데이터 전송 또는 AWS Outposts 사용과 관련된 비용이 발생할 수 있습니다 요금에 대한 자세한 내용은 [Amazon ElastiCache 요금](https://aws.amazon.com/elasticache/pricing/)을 참조하세요.

## RDS DB 인스턴스의 설정을 사용하여 ElastiCache 캐시 생성
<a name="creating-elasticache-cluster-with-RDS-settings-new-DB"></a>

DB 인스턴스에서 상속되는 설정을 사용하여 RDS DB 인스턴스용 ElastiCache 캐시를 생성할 수 있습니다.

**DB 인스턴스의 설정을 사용하여 ElastiCache 캐시 생성**

1. DB 인스턴스를 생성하려면 [Amazon RDS DB 인스턴스 생성](USER_CreateDBInstance.md)의 지침을 따릅니다.

1. RDS DB 인스턴스를 생성하면 콘솔에 **제안된 추가 기능** 창이 표시됩니다. **Create an ElastiCache cluster from RDS using your DB settings**(DB 설정을 사용하여 RDS에서 ElastiCache 클러스터 생성)를 선택합니다.

   기존 데이터베이스의 경우 **데이터베이스** 페이지에서 필요한 DB 인스턴스를 선택합니다. **작업** 드롭다운 메뉴에서 **ElastiCache 클러스터 생성**을 선택하여 기존 RDS DB 인스턴스와 동일한 설정을 가진 RDS에 ElastiCache 캐시를 생성합니다.

   **ElastiCache 구성 섹션**의 **소스 DB 식별자**에 ElastiCache 캐시가 설정을 상속받는 DB 인스턴스가 표시됩니다.

1. Redis OSS 클러스터를 생성할지 또는 Memcached 클러스터를 생성할지 선택하세요. 자세한 내용은 [Memcached와 Redis OSS 비교](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/SelectEngine.html)를 참조하세요.  
![\[클러스터 유형 및 배포 옵션을 선택합니다.\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/images/EC-RDS-Config.png)

1. 그런 다음 **서버리스 캐시**를 만들지 아니면 **자체 캐시를 설계**할지 선택합니다. 자세한 내용은 [배포 옵션 간 선택](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/WhatIs.deployment.html)을 참조하세요.

   **서버리스 캐시**를 선택하는 경우: 

   1. **캐시 설정**의 **이름** 및 **설명**에 값을 입력합니다.

   1. **기본 설정 보기**에서 기본 설정을 그대로 두고 캐시와 DB 인스턴스 간의 연결을 설정합니다.

   1. **기본 설정 사용자 지정**을 선택하여 기본 설정을 편집할 수도 있습니다. **ElastiCache 연결 설정**, **ElastiCache 보안 설정**, **최대 사용량 제한**을 선택합니다.

1. **자체 캐시 설계**를 선택하는 경우: 

   1. **Redis OSS 클러스터**를 선택한 경우 클러스터 모드를 **활성화** 또는 **비활성화** 상태로 유지할지 선택합니다. 자세한 내용은 [복제: Redis OSS(클러스터 모드 비활성화됨)와 Redis OSS(클러스터 모드 활성화됨) 비교](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Replication.Redis-RedisCluster.html)를 참조하세요.

   1. **이름**과 **설명**, **엔진 버전**을 입력합니다.

      **엔진 버전**의 경우 권장 기본값은 최신 엔진 버전입니다. 요구 사항에 가장 적합한 ElastiCache 캐시용 **엔진 버전**을 선택할 수도 있습니다.

   1. 노드 유형 옵션에서 **노드 유형**을 선택합니다. 자세한 내용은 [노드 관리](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/CacheNodes.html)를 참조하세요.

      **클러스터 모드**를 **활성화됨**으로 설정한 상태에서 Redis OSS 클러스터를 생성하려고 선택한 경우, **샤드 수** 옵션에 샤드 수(파티션/노드 그룹 수)를 입력하세요.

      **복제본 개수**에 각 샤드의 복제본 수를 입력합니다.
**참고**  
선택한 노드 유형, 샤드 수, 복제본 수는 모두 캐시 성능 및 리소스 비용에 영향을 미칩니다. 이러한 설정이 데이터베이스 요구 사항과 일치하는지 확인하세요. 요금에 대한 자세한 정보는 [Amazon ElastiCache 요금](https://aws.amazon.com/elasticache/pricing/)을 참조하세요.

   1. **ElastiCache 연결 설정** 및 **ElastiCache 보안 설정**을 선택합니다. 기본 설정을 유지하거나 요구 사항에 따라 이러한 설정을 사용자 지정할 수 있습니다.

1. ElastiCache 캐시의 기본 설정 및 상속된 설정을 확인합니다. 일부 설정은 생성 후에 변경할 수 없습니다.
**참고**  
RDS는 최소 기간 요구 사항인 60분을 충족하도록 ElastiCache 캐시의 백업 기간을 조정할 수 있습니다. 소스 데이터베이스의 백업 기간은 동일하게 유지됩니다.

1. 준비가 되면 **ElastiCache 캐시 생성**을 선택합니다.

콘솔에는 ElastiCache 캐시 생성을 위한 확인 배너가 표시됩니다. 배너의 링크를 따라 ElastiCache 콘솔로 이동하면 캐시 세부 정보를 볼 수 있습니다. ElastiCache 콘솔에는 새로 생성된 ElastiCache 캐시가 표시됩니다.

# AWS Database Migration Service를 사용하여 EC2 데이터베이스를 Amazon RDS로 자동 마이그레이션
<a name="USER_DMS_migration"></a>

RDS 콘솔을 사용하여 EC2 데이터베이스를 RDS로 마이그레이션할 수 있습니다. RDS는 AWS Database Migration Service(AWS DMS)를 사용하여 소스 EC2 데이터베이스를 마이그레이션합니다. AWS DMS를 사용하면 관계형 데이터베이스를 AWS 클라우드로 마이그레이션할 수 있습니다. AWS Database Migration Service에 대한 자세한 내용은 *AWS Database Migration Service 사용 설명서*의 [AWS Database Migration Service이란 무엇인가요?](https://docs.aws.amazon.com/dms/latest/userguide/Welcome.html)를 참조하세요.

마이그레이션을 시작하려면 데이터를 마이그레이션하기 위해 상응하는 RDS DB 인스턴스를 만들어야 합니다. 대상 데이터베이스를 만든 후 EC2 데이터베이스를 가져올 수 있습니다. 1TiB보다 작은 소스 데이터베이스의 경우 이 마이그레이션 작업은 데이터를 RDS로 마이그레이션하는 데 필요한 시간과 리소스를 줄입니다.

## 개요
<a name="USER_DMS_migration-overview"></a>

RDS 콘솔을 사용하면 EC2 데이터베이스를 상응하는 RDS 데이터베이스로 마이그레이션할 수 있습니다. 콘솔에서 마이그레이션을 활성화하려면 RDS 데이터베이스를 만들어야 합니다.

다음 데이터베이스 엔진의 EC2 데이터베이스를 마이그레이션할 수 있습니다.
+ MySQL
+ MariaDB
+ PostgreSQL

마이그레이션 프로세스는 다음과 같은 단계로 구성됩니다.
+ RDS에서 상응하는 데이터베이스를 만듭니다. 데이터베이스가 상응하려면 데이터베이스 엔진과 호환되는 엔진 버전이 동일해야 합니다. 또한 동일한 VPC에 있어야 합니다. 데이터베이스 만들기에 대한 지침은 [Amazon RDS DB 인스턴스 생성](USER_CreateDBInstance.md) 섹션을 참조하세요.
+ 데이터베이스의 복제 유형을 선택합니다.
  + **전체 로드 마이그레이션** - RDS가 전체 소스 데이터베이스를 대상 데이터베이스에 복사하며 필요한 경우 대상에 새 테이블을 만듭니다.
**참고**  
이 옵션을 사용하면 RDS 데이터베이스가 중단됩니다.
  + **전체 로드 및 변경 데이터 캡처(CDC) 마이그레이션** - 전체 로드 마이그레이션과 마찬가지로 이 옵션을 사용하면 RDS가 전체 소스 데이터베이스를 대상으로 복사합니다. 그러나 전체 로드 마이그레이션 후 RDS는 소스에서 캡처된 변경 사항을 대상 데이터베이스에 적용합니다. 변경 데이터 캡처는 데이터베이스 엔진의 기본 API를 사용하여 데이터베이스 로그에 대한 변경 사항을 수집합니다.
**참고**  
이 옵션을 사용하면 RDS 데이터베이스가 중단됩니다.
  + **변경 데이터 캡처(CDC)** - 마이그레이션 과정 내내 대상 데이터베이스를 계속 사용할 수 있도록 하려면 이 옵션을 사용합니다. RDS는 소스 데이터베이스의 진행 중인 변경 사항을 대상 데이터베이스로 마이그레이션합니다.
+ RDS는 마이그레이션을 용이하게 하는 데 필요한 네트워킹 리소스를 만듭니다. RDS가 필요한 리소스를 만들면 만들어진 리소스에 대해 사용자에게 알리고, 사용자는 데이터 전송을 시작할 수 있습니다.

  마이그레이션을 완료하는 데 필요한 시간은 복제 유형과 소스 데이터베이스 크기에 따라 다릅니다.

## 사전 조건
<a name="USER_DMS_migration-Prerequisites"></a>

### MySQL및 MariaDB
<a name="USER_DMS_migration-Prerequisites.MySQL"></a>

소스 데이터베이스로 MySQL 또는 MariaDB 데이터베이스를 사용하기 전에 다음 사전 조건을 충족하는지 확인해야 합니다. 이러한 사전 요구 사항은 AWS 관리형 소스에 적용됩니다.

Replication Admin 역할이 할당된 AWS DMS용 계정이 있어야 합니다. 역할에는 다음 권한이 있어야 합니다.
+ **REPLICATION CLIENT** - 이 권한은 변경 데이터 캡처(CDC) 작업에만 필요합니다. 즉, 전체 로드 전용 작업에서는 이 권한이 필요하지 않습니다.
+ **REPLICATION SLAVE** - 이 권한은 변경 데이터 캡처(CDC) 작업에만 필요합니다. 즉, 전체 로드 전용 작업에서는 이 권한이 필요하지 않습니다.

또한, AWS DMS 사용자에게는 복제를 위해 지정된 원본 테이블에 대해 SELECT 권한이 있어야 합니다.

MySQL별 사전 마이그레이션 평가를 사용하는 경우 다음 권한을 부여합니다.

```
grant select on mysql.user to <dms_user>;
grant select on mysql.db to <dms_user>;
grant select on mysql.tables_priv to <dms_user>;
grant select on mysql.role_edges to <dms_user>  #only for MySQL version 8.0.11 and higher
```

### PostgreSQL
<a name="USER_DMS_migration-Prerequisites.PostgreSQL"></a>

AWS 관리형 PostgreSQL 소스 데이터베이스에서 데이터를 마이그레이션하기 전에 다음을 수행합니다.
+ PostgreSQL DB 인스턴스에 필요한 최소 권한이 있는 AWS 사용자 계정을 AWS DMS의 PostgreSQL 소스 엔드포인트 사용자 계정으로 사용하는 것이 좋습니다. 마스터 계정을 사용하는 것은 권장되지 않습니다. 계정에는 `rds_superuser` 역할과 `rds_replication` 역할이 있어야 합니다. `rds_replication` 역할은 논리적 슬롯을 관리하고 논리적 슬롯을 사용하여 데이터를 스트리밍할 수 있는 권한을 부여합니다.

**참고**  
일부 AWS DMS 트랜잭션은 DMS 엔진에서 다시 사용하기 전까지 얼마 동안 유휴 상태입니다. PostgreSQL 버전 9.6 이상에서 `idle_in_transaction_session_timeout` 파라미터를 사용하면 유휴 트랜잭션이 시간 초과되어 실패하도록 할 수 있습니다.

## 제한 사항
<a name="USER_DMS_migration-Limitations"></a>

자동 마이그레이션 프로세스에는 다음 제한 사항이 적용됩니다.
+ 소스 데이터베이스 마이그레이션을 시작하려면 대상 데이터베이스 상태가 **사용 가능**이어야 합니다.
+ MySQL 소스 데이터베이스에서 마이그레이션할 때 RDS 계정에 복제 관리자 역할이 있어야 합니다. 또한 해당 역할에 적절한 권한이 적용되어 있어야 합니다.
+ EC2 인스턴스와 대상 데이터베이스는 동일한 VPC에 있어야 합니다.
+ **EC2 데이터베이스에서 데이터 마이그레이션** 작업을 사용할 때는 EC2 데이터베이스를 다음 대상 데이터베이스로 마이그레이션할 수 없습니다.
  + 클러스터의 멤버인 데이터베이스
  + Oracle, SQL Server 및 Db2 데이터베이스
  + MySQL 버전이 5.7 미만인 데이터베이스
  + PostgreSQL 버전이 10.4 미만인 데이터베이스
  + MariaDB 버전이 10.2 미만인 데이터베이스

# 동종 마이그레이션을 위한 IAM 리소스 만들기
<a name="USER_DMS_migration-IAM"></a>

RDS는 AWS DMS를 사용하여 데이터를 마이그레이션합니다. 데이터베이스에 액세스하고 데이터를 마이그레이션하기 위해 AWS DMS는 동종 데이터 마이그레이션을 위한 서버리스 환경을 생성합니다. 이 환경에서 AWS DMS는 VPC 피어링, 라우팅 테이블, 보안 그룹 및 기타 AWS 리소스에 대한 액세스가 필요합니다. 또한 AWS DMS는 Amazon CloudWatch에 각 데이터 마이그레이션에 대한 로그, 지표 및 진행 상황을 저장합니다. 데이터 마이그레이션 프로젝트를 생성하려면 AWS DMS는 이러한 서비스에 대한 액세스 권한이 필요합니다.

또한 AWS DMS에서는 소스 및 대상 연결에 대한 데이터베이스 연결을 인증하기 위해 사용자 자격 증명 세트를 나타내는 보안 암호에 대한 액세스 권한이 필요합니다.

**참고**  
**EC2 인스턴스에서 데이터 마이그레이션** 작업을 사용하면 RDS 콘솔을 사용하여 이러한 IAM 리소스를 생성할 수 있습니다. 콘솔에서 생성한 IAM 리소스를 사용하는 경우 이 단계를 건너뜁니다.

이 프로세스에는 다음과 같은 IAM 리소스가 필요합니다.

**Topics**
+ [동종 데이터 마이그레이션을 위한 IAM 정책 만들기](#USER_DMS_migration-IAM.iam-policy)
+ [동종 데이터 마이그레이션을 위한 IAM 역할 만들기](#USER_DMS_migration-IAM.iam-role)
+ [보안 암호 액세스 정책 및 역할 만들기](USER_DMS_migration-IAM.secret-iam-role-policy.md)
+ [AWS DMS에 대한 IAM 역할을 만들어 Amazon VPC 관리](USER_DMS_migration-IAM.dms-vpc-role.md)

## 동종 데이터 마이그레이션을 위한 IAM 정책 만들기
<a name="USER_DMS_migration-IAM.iam-policy"></a>

이 단계에서는 Amazon EC2 및 CloudWatch 리소스에 대한 액세스 권한을 AWS DMS에 부여하는 IAM 정책을 생성합니다. 그런 다음, IAM 역할을 생성하고 이 정책을 연결합니다.

**동종 데이터 마이그레이션을 위한 IAM 정책을 만드는 방법**

1. AWS Management Console에 로그인하여 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)에서 IAM 콘솔을 엽니다.

1. 탐색 창에서 **정책**을 선택합니다.

1. **정책 생성**을 선택합니다.

1. **정책 생성** 페이지에서 **JSON** 탭을 선택합니다.

1. 다음 JSON을 편집기에 붙여넣습니다.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:DescribeRouteTables",
                   "ec2:DescribeSecurityGroups",
                   "ec2:DescribeVpcPeeringConnections",
                   "ec2:DescribeVpcs",
                   "ec2:DescribePrefixLists",
                   "logs:DescribeLogGroups"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "servicequotas:GetServiceQuota"
               ],
               "Resource": "arn:aws:servicequotas:*:*:vpc/L-0EA8095F"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "logs:CreateLogGroup",
                   "logs:DescribeLogStreams"
               ],
               "Resource": "arn:aws:logs:*:*:log-group:dms-data-migration-*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "logs:CreateLogStream",
                   "logs:PutLogEvents"
               ],
               "Resource": "arn:aws:logs:*:*:log-group:dms-data-migration-*:log-stream:dms-data-migration-*"
           },
           {
               "Effect": "Allow",
               "Action": "cloudwatch:PutMetricData",
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:CreateRoute",
                   "ec2:DeleteRoute"
               ],
               "Resource": "arn:aws:ec2:*:*:route-table/*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:CreateTags"
               ],
               "Resource": [
                   "arn:aws:ec2:*:*:security-group/*",
                   "arn:aws:ec2:*:*:security-group-rule/*",
                   "arn:aws:ec2:*:*:route-table/*",
                   "arn:aws:ec2:*:*:vpc-peering-connection/*",
                   "arn:aws:ec2:*:*:vpc/*"
               ]
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:AuthorizeSecurityGroupEgress",
                   "ec2:AuthorizeSecurityGroupIngress"
               ],
               "Resource": "arn:aws:ec2:*:*:security-group-rule/*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:AuthorizeSecurityGroupEgress",
                   "ec2:AuthorizeSecurityGroupIngress",
                   "ec2:RevokeSecurityGroupEgress",
                   "ec2:RevokeSecurityGroupIngress"
               ],
               "Resource": "arn:aws:ec2:*:*:security-group/*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:AcceptVpcPeeringConnection",
                   "ec2:ModifyVpcPeeringConnectionOptions"
               ],
               "Resource": "arn:aws:ec2:*:*:vpc-peering-connection/*"
           },
           {
               "Effect": "Allow",
               "Action": "ec2:AcceptVpcPeeringConnection",
               "Resource": "arn:aws:ec2:*:*:vpc/*"
           }
       ]
   }
   ```

------

1. **다음: 태그**와 **다음: 검토**를 선택합니다.

1. **이름\$1**의 경우, **HomogeneousDataMigrationsPolicy**를 입력한 후 **정책 생성을** 선택합니다.

## 동종 데이터 마이그레이션을 위한 IAM 역할 만들기
<a name="USER_DMS_migration-IAM.iam-role"></a>

이 단계에서는 AWS Secrets Manager, Amazon EC2 및 CloudWatch에 대한 액세스 권한을 제공하는 IAM 역할을 만듭니다.

**데이터 마이그레이션을 위한 IAM 역할을 만드는 방법**

1. AWS Management Console에 로그인하여 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)에서 IAM 콘솔을 엽니다.

1. 탐색 창에서 **역할**을 선택합니다.

1. **역할 생성**을 선택합니다.

1. **신뢰할 수 있는 엔터티 선택** 페이지의 **신뢰할 수 있는 엔터티 유형** 아래에서 **AWS 서비스**를 선택합니다. **기타 AWS 서비스 사용 사례**에서 **DMS**를 선택합니다.

1. **DMS** 확인란을 선택하고 **다음**을 선택합니다.

1. **권한 추가** 페이지에서 이전에 만든 **HomogeneousDataMigrationsPolicy**를 선택합니다. **다음**을 선택합니다.

1. **이름 지정, 검토 및 생성** 페이지에서 **역할 이름**에 **HomogeneousDataMigrationsRole**을 입력하고 **역할 생성**을 선택합니다.

1. **역할** 페이지에서 **역할 이름**으로 **HomogeneousDataMigrationsRole**을 입력합니다. **HomogeneousDataMigrationsRole**을 선택합니다.

1. **HomogeneousDataMigrationsRole** 페이지에서 **신뢰 관계** 탭을 선택합니다. **신뢰 정책 편집**을 선택합니다.

1. **신뢰 정책 편집** 페이지에서 기존 텍스트를 대체하여 다음 JSON을 편집기에 붙여넣습니다.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "",
               "Effect": "Allow",
               "Principal": {
                   "Service": [
                       "dms-data-migrations.amazonaws.com",
                       "dms.your_region.amazonaws.com"
                   ]
               },
               "Action": "sts:AssumeRole"
           }
       ]
   }
   ```

------

   이전 예제에서 *your\$1region*을 AWS 리전의 이름으로 바꾸십시오.

   위의 리소스 기반 정책은 고객 관리형 **HomogeneousDataMigrationsPolicy** 정책에 따라 작업을 수행할 수 있는 권한을 AWS DMS 서비스 위탁자에게 부여합니다.

1. **정책 업데이트**를 선택합니다.

# 보안 암호 액세스 정책 및 역할 만들기
<a name="USER_DMS_migration-IAM.secret-iam-role-policy"></a>

아래 프로시저에 따라 DMS가 소스 및 대상 데이터베이스의 사용자 자격 증명에 액세스할 수 있도록 허용하는 보안 암호 액세스 정책 및 역할을 만듭니다.

**Amazon RDS가 적절한 보안 암호에 액세스하기 위해 AWS Secrets Manager에 액세스하도록 허용하는 보안 암호 액세스 정책 및 역할을 만드는 방법**

1. AWS Management Console에 로그인하여 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)에서 AWS Identity and Access Management(IAM) 콘솔을 엽니다.

1. **정책**을 선택한 후 **정책 생성**을 선택합니다.

1. **JSON**을 선택하고 다음 정책을 입력하여 보안 암호에 대한 액세스 및 암호 해독을 활성화합니다.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "secretsmanager:GetSecretValue",
               "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:SecretName-ABCDEF"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "kms:Decrypt",
                   "kms:DescribeKey"
               ],
               "Resource": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
           }
       ]
   }
   ```

------

   여기서 `secret_arn`은 보안 암호의 ARN(상황에 따라 `SecretsManagerSecretId`에서 가져올 수 있음)이고, `kms_key_arn`은 다음 예시와 같이 보안 암호를 암호화하는 데 사용하는 AWS KMS 키의 ARN입니다.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "secretsmanager:GetSecretValue",
               "Resource": "arn:aws:secretsmanager:us-east-2:123456789012:secret:MySQLTestSecret-qeHamH"
           },
           {
                "Effect": "Allow",
                "Action": [
                           "kms:Decrypt",
                           "kms:DescribeKey"
                         ],
                "Resource": "arn:aws:kms:us-east-2:123456789012:key/761138dc-0542-4e58-947f-4a3a8458d0fd"
           }
        ]
   }
   ```

------
**참고**  
AWS Secrets Manager에서 생성한 기본 암호화 키를 사용하는 경우, `kms_key_arn`에 대한 AWS KMS 권한을 지정하지 않아도 됩니다.  
정책에서 두 보안 암호에 대한 액세스를 제공하도록 하려면 다른 *secret\$1arn*에 대해 추가 JSON 리소스 객체를 지정하면 됩니다.

1. 기억하기 쉬운 이름과 설명(선택 사항)이 있는 정책을 검토하고 생성합니다.

1. **역할**을 선택한 다음, **역할 생성**을 선택합니다.

1. 신뢰할 수 있는 엔터티 유형으로서 **AWS 서비스**를 선택합니다.

1. 서비스 목록에서 **DMS**를 신뢰할 수 있는 서비스로 선택하고 **다음: 권한**을 선택합니다.

1. 4단계에서 생성한 정책을 찾아 연결한 다음, 계속 진행하여 태그를 추가하고 역할을 검토합니다. 이때 해당 역할의 신뢰 관계를 편집하여 Amazon RDS 리전 서비스 위탁자를 신뢰할 수 있는 엔터티로 사용합니다. 이 위탁자의 형식은 다음과 같습니다.

   ```
   dms.region-name.amazonaws.com
   ```

   여기서 *`region-name`*은 리전의 이름입니다(예: `us-east-1`). 따라서 이 리전의 Amazon RDS 리전 서비스 위탁자는 다음과 같습니다.

   ```
   dms.us-east-1.amazonaws.com
   dms-data-migrations.amazonaws.com
   ```

# AWS DMS에 대한 IAM 역할을 만들어 Amazon VPC 관리
<a name="USER_DMS_migration-IAM.dms-vpc-role"></a>

리소스의 VPC 설정을 관리하려면 AWS DMS에 대한 IAM 역할을 만들어야 합니다. 마이그레이션에 성공하려면 이 역할을 사용할 수 있어야 합니다.

**데이터베이스 마이그레이션을 위해 `dms-vpc-role` 만들기**

1. AWS Management Console에 로그인하여 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 에서 IAM 콘솔을 엽니다.

1. 콘솔의 탐색 창에서 **역할**을 선택한 후 **역할 생성**을 선택합니다.

1. **신뢰할 수 있는 엔터티 선택** 옵션에서 **AWS 서비스** 옵션을 선택합니다.

   **사용 사례**에서 **DMS**를 선택합니다.

1. **권한 추가** 단계에서 `AmazonDMSVPCManagementRole`을 선택하고 **다음**을 선택합니다.

1. **이름 지정, 검토 및 생성** 페이지에서 **역할 이름**을 `dms-vpc-role`로 설정하고 **역할 생성**을 선택합니다.

이렇게 하면 DMS가 마이그레이션을 위한 VPC 설정을 관리하는 데 사용할 역할이 만들어집니다.

# EC2 데이터베이스에 대한 데이터 마이그레이션 설정
<a name="USER_DMS_migration-SetUp"></a>

EC2 소스 데이터베이스에서 데이터 마이그레이션을 시작하려면 상승하는 RDS 데이터베이스를 만들어야 합니다. 데이터베이스 만들기에 대한 지침은 [Amazon RDS DB 인스턴스 생성](USER_CreateDBInstance.md) 섹션을 참조하세요.

대상 데이터베이스를 만든 후 다음 단계에 따라 데이터 마이그레이션을 설정합니다.

**데이터 마이그레이션 프로젝트 설정**

1. RDS 콘솔의 데이터베이스 페이지에서 대상 **데이터베이스를** 선택합니다.

1. **작업** 드롭다운을 선택하고 **EC2 데이터베이스에서 데이터 마이그레이션** 옵션을 선택합니다. 지원되는 대상 데이터베이스는 [제한 사항](USER_DMS_migration.md#USER_DMS_migration-Limitations) 섹션을 참조하세요.

1. **소스 EC2 데이터베이스 선택** 섹션에서 다음을 수행합니다.

   1. **엔진 유형**을 확인하고 소스 데이터베이스와 동일한지 확인합니다.

      또한 엔진 버전이 호환되는지 확인합니다.

   1. **EC2 인스턴스**에서 소스 데이터베이스가 있는 EC2 인스턴스를 선택합니다.

   1. **포트**에 소스 데이터베이스가 트래픽을 허용하는 포트를 입력합니다.

   1. 기존 보안 암호가 없는 경우 **보안 암호**에서 **새 보안 암호를 만들고 사용하기**를 선택합니다. 소스 데이터베이스의 **사용자 이름**과 **암호**를 입력합니다. 또한 보안 암호를 암호화할 KMS 키를 선택합니다.

      기존 보안 암호가 있는 경우 **기존 보안 암호 사용**을 선택한 후 드롭다운 메뉴에서 보안 암호를 선택합니다.

   1. **보안 암호의 IAM 역할**의 경우 기존 IAM 역할이 있으면 **기존 IAM 역할 사용**을 선택하고 드롭다운에서 이전 단계의 보안 암호 ID에 액세스할 수 있는 IAM 역할을 선택합니다.

      기존 IAM 역할이 없는 경우 **새 IAM 역할을 만들고 사용하기**를 선택합니다. **IAM 역할 이름에 새 역할의 이름을 입력합니다. 아래 링크에서 이 역할과 연결된 권한을 볼 수 있습니다.**

1. **대상 RDS 데이터베이스 보기** 섹션에서 다음을 수행합니다.

   1. 섹션 상단에서 대상 데이터베이스의 설정을 확인합니다.

   1. 대상 데이터베이스 자격 증명을 보유한 기존 보안 암호가 없는 경우 **보안 암호**에서 **새 보안 암호를 만들고 사용하기**를 선택합니다.

      기존 보안 암호가 있는 경우 드롭다운에서 보안 암호를 선택합니다.

   1. **보안 암호의 IAM 역할**의 경우 이전 단계에서 보안 암호에 액세스할 수 있는 IAM 역할을 선택합니다. 기존 IAM 역할이 없는 경우 새 IAM 역할을 만들 수도 있습니다.

      드롭다운에 IAM 역할이 채워지지 않으면 **IAM 역할 ARN**을 `arn:aws:iam:account_id:role/roleName` 형식으로 지정합니다.

1. **데이터 마이그레이션 구성** 섹션에서 다음을 수행합니다.

   1. **전체 로드**, **전체 로드 및 변경 데이터 캡처(CDC)** 또는 **변경 데이터 캡처(CDC)** 중에서 선택하여 데이터 마이그레이션 유형을 선택합니다. 이러한 옵션에 대한 자세한 내용은 [개요](USER_DMS_migration.md#USER_DMS_migration-overview) 섹션을 참조하세요.

      마이그레이션이 시작된 후에는 마이그레이션 유형을 수정할 수 없습니다.

   1. **데이터 마이그레이션의 IAM 역할**의 경우 기존 IAM 역할이 있는 경우 **기존 IAM 역할 사용**을 선택하고 드롭다운에서 마이그레이션에 필요한 리소스를 만들 수 있는 권한을 DMS에 부여하는 IAM 역할을 선택합니다. 기존 IAM 역할이 없는 경우 **새 IAM 역할을 만들고 사용하기**를 선택합니다.

1. **마이그레이션 설정 보기** 탭에 데이터 마이그레이션을 성공적으로 설정하는 데 필요한 설정이 표시되는지 확인합니다.

1. **마이그레이션**을 선택하여 마이그레이션 설정을 완료합니다.

이 단계를 완료한 후 콘솔의 진행률 배너에서 **세부 정보 보기**를 선택하여 데이터 마이그레이션을 위해 설정되고 있는 리소스를 확인할 수 있습니다. 필요한 리소스가 설정되면 마이그레이션이 자동으로 시작됩니다. 만드는 경우 

여러 데이터베이스를 대상 데이터베이스로 마이그레이션하려면 새 EC2 데이터베이스에 대한 세부 정보를 사용하여 이 프로세스를 다시 시작합니다.

# 데이터 마이그레이션 관리
<a name="USER_DMS_migration.Managing"></a>

RDS 콘솔에서 **EC2 데이터베이스에서 데이터 마이그레이션** 작업을 사용하면 RDS가 마이그레이션을 자동으로 시작합니다.

AWS DMS 콘솔을 사용하여 마이그레이션 리소스를 만든 경우 마이그레이션 프로세스를 시작할 수 있습니다.

## 데이터 마이그레이션 시작
<a name="USER_DMS_migration.Managing.Start"></a>

다음 단계에 따라 데이터 마이그레이션을 시작합니다.

**데이터 마이그레이션 시작**

1. RDS 콘솔의 **데이터베이스** 페이지에서 대상 데이터베이스를 선택합니다.

1. 데이터베이스 세부 정보 페이지에서 **데이터 마이그레이션** 탭을 선택합니다.

1. **데이터 마이그레이션** 탭에서 **연결된 데이터 마이그레이션**에는 사용 가능한 데이터 마이그레이션이 나열됩니다.

   RDS 콘솔을 사용하여 설정된 마이그레이션은 필요한 리소스가 설정되면 자동으로 시작됩니다.

   DMS 콘솔을 사용하여 설정된 마이그레이션은 **준비 완료**로 설정됩니다.

   이러한 마이그레이션을 시작하려면 **작업** 드롭다운을 선택하고 **시작**을 선택합니다.

1. 그러면 EC2 데이터베이스의 데이터 마이그레이션이 시작됩니다.

## 데이터 마이그레이션 중지
<a name="USER_DMS_migration.Managing.Stop"></a>

복제 유형이 전체 로드인 데이터 마이그레이션의 경우 마이그레이션을 중지하면 프로세스가 중지되고 재개할 수 없습니다. 중지하고 나면 마이그레이션을 다시 시작해야 합니다.

복제 유형이 변경 데이터 캡처(CDC) 또는 전체 로드 및 CDC로 설정된 마이그레이션의 경우 연속 복제 프로세스를 중지하고 나중에 프로세스를 재개할 수 있습니다.

**데이터 마이그레이션 중지**

1. RDS 콘솔의 **데이터베이스** 페이지에서 대상 데이터베이스를 선택합니다.

1. 데이터베이스 세부 정보 페이지에서 **데이터 마이그레이션** 탭을 선택합니다.

1. **데이터 마이그레이션** 탭에서 **연결된 데이터 마이그레이션**에는 진행 중인 데이터 마이그레이션이 나열됩니다.

   마이그레이션을 중지하려면 데이터 마이그레이션을 선택하고 **작업** 드롭다운에서 **중지**를 선택합니다.

1. 그러면 EC2 데이터베이스의 데이터 마이그레이션이 중지됩니다.

## 데이터 마이그레이션 재개
<a name="USER_DMS_migration.Managing.Resuming"></a>

복제 유형이 전체 로드 및 변경 데이터 캡처(CDC) 또는 변경 데이터 캡처(CDC) 마이그레이션인 데이터 마이그레이션의 경우 마지막 중지 지점에서 CDC 프로세스를 재개할 수 있습니다.

**데이터 마이그레이션 재개**

1. RDS 콘솔의 **데이터베이스** 페이지에서 대상 데이터베이스를 선택합니다.

1. 데이터베이스 세부 정보 페이지에서 **데이터 마이그레이션** 탭을 선택합니다.

1. **데이터 마이그레이션** 탭에서 **연결된 데이터 마이그레이션**에는 중지된 데이터 마이그레이션이 나열됩니다.

   마이그레이션을 재개하려면 데이터 마이그레이션을 선택하고 **작업** 드롭다운에서 **처리 재개**를 선택합니다.

1. 그러면 EC2 데이터베이스의 데이터 마이그레이션이 재개됩니다.

## 데이터 마이그레이션 삭제
<a name="USER_DMS_migration.Managing.Deleting"></a>

연결된 데이터 마이그레이션을 삭제하려면 다음 지침을 사용합니다.

**데이터 마이그레이션 삭제**

1. RDS 콘솔의 **데이터베이스** 페이지에서 대상 데이터베이스를 선택합니다.

1. 데이터베이스 세부 정보 페이지에서 **데이터 마이그레이션** 탭을 선택합니다.

1. 마이그레이션을 삭제하려면 데이터 마이그레이션을 선택하고 **작업** 드롭다운에서 **삭제**를 선택합니다.

1. 이렇게 하면 데이터 마이그레이션이 삭제됩니다.

진행 중이던 데이터 마이그레이션을 삭제해도 대상 데이터베이스에 이미 로드된 데이터는 영향을 받지 않습니다.

## 데이터 마이그레이션 다시 시작
<a name="USER_DMS_migration.Managing.Restarting"></a>

CDC 시작 지점에서 연결된 데이터 마이그레이션을 다시 시작하려면 다음 지침을 사용합니다.

**데이터 마이그레이션 다시 시작**

1. RDS 콘솔의 **데이터베이스** 페이지에서 대상 데이터베이스를 선택합니다.

1. 데이터베이스 세부 정보 페이지에서 **데이터 마이그레이션** 탭을 선택합니다.

1. 마이그레이션을 다시 시작하려면 데이터 마이그레이션을 선택하고 **작업** 드롭다운에서 **다시 시작**을 선택합니다.

1. 그러면 CDC 시작 지점에서 데이터 마이그레이션이 다시 시작됩니다.

진행 중이던 데이터 마이그레이션을 다시 시작해도 대상 데이터베이스에 이미 로드된 데이터는 영향을 받지 않습니다.

# 데이터 마이그레이션 모니터링
<a name="USER_DMS_migration.Monitoring"></a>

데이터 마이그레이션을 시작한 후 상태 및 진행 상황을 모니터링할 수 있습니다. 대규모 데이터집합의 데이터 마이그레이션은 완료하는 데 몇 시간이 걸립니다. 데이터 마이그레이션의 안정성, 가용성 및 고성능을 유지하려면 데이터 마이그레이션 진행 상태를 정기적으로 모니터링하십시오.

**데이터 마이그레이션의 상태 및 진행 상황을 확인하려면**

1. RDS 콘솔의 **데이터베이스** 페이지에서 대상 데이터베이스를 선택합니다.

1. 데이터베이스 세부 정보 페이지에서 **데이터 마이그레이션** 탭을 선택합니다.

1. **연결된 데이터 마이그레이션** 섹션에는 데이터 마이그레이션이 나열됩니다. **상태** 열을 확인합니다.

1. 실행 중인 데이터 마이그레이션의 경우, **마이그레이션 진행 상황** 열에 마이그레이션된 데이터의 비율(%)이 표시됩니다.

1. CloudWatch에서 프로세스를 모니터링하려면 **CloudWatch** 열에 있는 링크를 사용합니다.

## 마이그레이션 상태
<a name="USER_DMS_migration.Monitoring.status"></a>

실행하는 각 데이터 마이그레이션마다 RDS 콘솔에 **상태**가 표시됩니다. 다음 목록에 상태가 포함되어 있습니다.
+ `Ready`: 데이터 마이그레이션을 시작할 준비가 되었습니다.
+ `Starting`: RDS가 데이터 마이그레이션을 위한 서버리스 환경을 만드는 중입니다.
+ `Load running`: RDS가 전체 로드 마이그레이션을 수행하는 중입니다.
+ `Load complete, replication ongoing`: RDS가 전체 로드를 완료했으며 현재 진행 중인 변경 사항을 복제합니다. 이 상태는 전체 로드 및 CDC 유형 마이그레이션에만 적용됩니다.
+ `Replication ongoing`: RDS가 진행 중인 변경 사항을 복제하고 있습니다. 이 상태는 CDC 유형 마이그레이션에만 적용됩니다.
+ `Stopping`: RDS가 데이터 마이그레이션을 중지하고 있습니다. 이 상태는 **작업** 메뉴에서 데이터 마이그레이션을 중지하도록 선택할 때 적용됩니다.
+ `Stopped`: RDS가 데이터 마이그레이션을 중지했습니다.
+ `Failed`: 데이터 마이그레이션이 실패했습니다. 자세한 내용은 로그 파일을 참조하십시오.
+ `Restarting`: 데이터 마이그레이션이 CDC 시작점에서 진행 중인 데이터 복제를 다시 시작했습니다.

# 자습서: 사용자 지정 파라미터 및 새로운 옵션 그룹을 사용하여 MySQL DB 인스턴스 만들기
<a name="tutorial-creating-custom-OPG"></a>

이 자습서에서는 사용자 지정 파라미터와 새로운 옵션 그룹을 사용하여 MySQL DB 인스턴스 를 만듭니다. 사용자 지정 파라미터 및 옵션 그룹에 대한 자세한 내용은 [Amazon RDS의 파라미터 그룹](USER_WorkingWithParamGroups.md) 및 [옵션 그룹 작업](USER_WorkingWithOptionGroups.md). 의 내용을 참조하시기 바랍니다.

**중요**  
AWS 계정 생성은 무료입니다. 그러나 이 자습서를 완료하면 사용하는 AWS 리소스에 대한 비용이 발생할 수 있습니다. 자습서가 더 이상 필요하지 않은 경우 자습서를 완료한 후에 이러한 리소스를 삭제할 수 있습니다.

사용자 지정 구성 및 설정이 있는 DB 인스턴스를 만들려면 사용자 지정 파라미터 및 새로운 옵션 그룹을 사용하면 됩니다. 사용자 지정 파라미터 및 새로운 옵션 그룹은 여러 데이터베이스를 사용하고 이에 대한 설정을 균일하게 구성하려는 경우 특히 유용합니다.

이 단계를 완료하면 다음을 학습하게 됩니다.
+ Amazon RDS를 사용하여 사용자 지정 파라미터 및 새로운 옵션 그룹이 있는 MySQL DB 인스턴스를 만드는 방법입니다.
+ MySQL DB 인스턴스에 대한 특정 파라미터 및 옵션을 사용하는 방법입니다.

이 자습서를 완료하려면 다음 작업을 수행하십시오.

1. MySQL 파라미터 `default_password_lifetime`및 `disconnect_on_expired_password`를 사용하여 사용자 지정 파라미터 그룹을 만듭니다.

1. MySQL 옵션 기능(`MariaDB Audit Plugin`)을 사용하여 새 옵션 그룹을 만듭니다. 옵션 그룹을 생성하는 단계는 [옵션 그룹 작업](USER_WorkingWithOptionGroups.md) 섹션을 참조하세요.

1. 사용자가 만든 사용자 지정 파라미터 그룹 및 새 옵션 그룹으로 MySQL DB 인스턴스를 만듭니다.

**Topics**
+ [사전 조건](#tutorial-creating-custom-OPG.Prerequisites)
+ [Amazon RDS 파라미터 그룹 만들기](#tutorial-creating-custom-OPG.create-parameter-group)
+ [사용자 지정 파라미터 그룹에서 파라미터 값 수정](#tutorial-creating-custom-OPG.add-parameters)
+ [새 Amazon RDS 옵션 그룹 만들기](#tutorial-creating-custom-OPG.create-option-group)
+ [새 옵션 그룹에 옵션 추가](#tutorial-creating-custom-OPG.add-options)
+ [사용자 지정 파라미터 및 새 옵션 그룹을 사용하여 MySQL DB 인스턴스 만들기](#tutorial-creating-custom-OPG.create-OPG)

## 사전 조건
<a name="tutorial-creating-custom-OPG.Prerequisites"></a>

이 자습서에서는 AWS 계정 및 관리자 액세스 권한이 있는 사용자가 있어야 합니다. 아직 설정하지 않았다면 다음 섹션에 나와 있는 단계를 완료합니다.
+ [AWS 계정에 가입](CHAP_SettingUp.md#sign-up-for-aws)
+ [관리자 액세스 권한이 있는 사용자 생성](CHAP_SettingUp.md#create-an-admin)

## Amazon RDS 파라미터 그룹 만들기
<a name="tutorial-creating-custom-OPG.create-parameter-group"></a>

이 자습서에서는 콘솔에서 MySQL DB 인스턴스에 대해 [default\$1password\$1lifetime](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_password_lifetime) 및 [disconnect\$1on\$1expired\$1password](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_disconnect_on_expired_password)를 사용하여 사용자 지정 파라미터 그룹을 만드는 방법을 알아봅니다. `default_password_lifetime` 파라미터는 클라이언트 암호가 자동으로 만료되기까지의 일수를 제어합니다. `disconnect_on_expired_password` 파라미터는 암호가 만료될 때 MySQL DB 인스턴스가 클라이언트 연결을 해제하는지 여부를 제어합니다. MySQL DB 인스턴스에 사용할 수 있는 기타 파라미터에 대한 자세한 내용은 [MySQL 파라미터](Appendix.MySQL.Parameters.md) 섹션을 참조하시기 바랍니다.

**파라미터 그룹을 생성하려면**

1. Amazon RDS 콘솔을 열고 **파라미터 그룹**을 선택합니다.

1. **사용자 지정 파라미터 그룹**에서 **파라미터 그룹 생성**을 선택합니다.

1. 파라미터 그룹 세부 정보를 설정합니다.

   1. 파라미터 그룹의 이름을 입력합니다.

   1. 파라미터 그룹에 대한 설명을 입력합니다.

   1. **엔진 유형**에서 **MySQL 커뮤니티**를 선택합니다. 

   1. **파라미터 그룹 패밀리**에서 **MySQL 8.0** 을 선택합니다.

1. **생성(Create)**을 선택합니다.

새 파라미터 그룹이 Amazon RDS 콘솔의 **파라미터 그룹** 페이지에 나타납니다. 다음 단계에서는 파라미터 값을 수정하여 파라미터 그룹을 사용자 지정하는 방법을 보여줍니다.

## 사용자 지정 파라미터 그룹에서 파라미터 값 수정
<a name="tutorial-creating-custom-OPG.add-parameters"></a>

다음 단계에 따라 [Amazon RDS 파라미터 그룹 만들기](#tutorial-creating-custom-OPG.create-parameter-group)에서 만든 파라미터 그룹의 파라미터 값을 수정합니다.

**파라미터 그룹에서 파라미터 값을 수정하려면 다음과 같이 합니다.**

1. Amazon RDS 콘솔을 열고 **파라미터 그룹**을 선택합니다.

1. **사용자 지정 파라미터 그룹**에서 사용자가 만든 파라미터 그룹의 이름을 선택합니다.

1. **편집**을 선택합니다.

1. **파라미터 필터링** 검색 상자에서 사용자 지정 파라미터(`default_password_lifetime`)를 검색합니다.

1. 파라미터 옆의 확인란을 선택하고 이 암호 수명 파라미터에 대해 설정할 일 수 값을 입력합니다.

1. **변경 사항 저장**을 선택합니다.

1. 파라미터(` disconnect_on_expired_password`)에 대해 동일한 단계를 반복합니다. 이 파라미터를 선택하면 드롭다운 메뉴에서 0 또는 1의 값을 선택하라는 메시지가 표시됩니다. 만료된 암호에서 연결을 해제하려면 1을 선택합니다.

이제 사용자 지정 파라미터 그룹을 MySQL 8.0 DB 인스턴스에 대해 Amazon RDS와 연결할 수 있습니다. 다음으로, DB 인스턴스용 새로운 옵션 그룹을 만듭니다.

## 새 Amazon RDS 옵션 그룹 만들기
<a name="tutorial-creating-custom-OPG.create-option-group"></a>

[MariaDB 감사 플러그인](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Appendix.MySQL.Options.AuditPlugin.html) 옵션을 사용하여 새 옵션 그룹을 만듭니다. 이 플러그인은 보안 및 규정 준수를 위해 서버 활동을 기록합니다. MySQL DB 인스턴스에 사용할 수 있는 다른 사용자 지정 옵션에 대한 자세한 내용은 [MySQL DB 인스턴스 옵션](Appendix.MySQL.Options.md) 섹션을 참조하시기 바랍니다.

**옵션 그룹을 만들려면 다음과 같이 합니다.**

1. Amazon RDS 콘솔을 열고 **옵션 그룹**을 선택합니다.

1. **옵션 그룹**에서 **그룹 생성**을 선택합니다.

1. 옵션 그룹 세부 정보를 설정합니다.
   + 옵션 그룹의 이름을 입력합니다.
   + 옵션 그룹에 대한 설명을 입력합니다.
   + **엔진**에서 **mysql**을 선택합니다.
   + **메이저 엔진 버전**에서 **8.0**을 선택합니다.

1. **생성(Create)**을 선택합니다.

새 옵션 그룹이 Amazon RDS 콘솔의 **옵션 그룹** 페이지에 표시됩니다. 다음 단계는 옵션을 옵션 그룹에 추가하는 방법을 보여줍니다.

## 새 옵션 그룹에 옵션 추가
<a name="tutorial-creating-custom-OPG.add-options"></a>

[새 Amazon RDS 옵션 그룹 만들기](#tutorial-creating-custom-OPG.create-option-group)에서 만든 새 옵션 그룹에 옵션을 추가하려면 다음 단계를 사용합니다.

**옵션 그룹에 옵션을 추가하려면 다음과 같이 합니다.**

1. Amazon RDS 콘솔을 열고 **옵션 그룹**을 선택합니다.

1. **옵션 그룹**에서 사용자가 만든 옵션 그룹의 이름을 선택합니다.

1. **옵션**에서 **옵션 추가**를 선택합니다.

1. 옵션 그룹 세부 정보를 설정합니다.
   + **옵션 이름**에서 MariaDB 감사 플러그인인 **MARIADB\$1AUDIT\$1PLUGIN** 옵션을 선택합니다.
   + **옵션 설정**에서 기본 옵션을 모두 선택한 상태로 둡니다.
   + **즉시 적용**에서 **예**를 선택합니다.

1. **생성 옵션**을 선택합니다.

이제 모든 연결된 DB 인스턴스에서 새 옵션 그룹을 사용할 수 있습니다. 다음으로 사용자 지정 파라미터와 새 옵션 그룹을 사용하여 MySQL DB 인스턴스를 만듭니다.

## 사용자 지정 파라미터 및 새 옵션 그룹을 사용하여 MySQL DB 인스턴스 만들기
<a name="tutorial-creating-custom-OPG.create-OPG"></a>

마지막으로 이전 단계에서 만든 사용자 지정 파라미터 및 새 옵션 그룹으로 MySQL DB 인스턴스를 만듭니다. 다음 단계는 사용자 지정 파라미터 및 새 옵션 그룹을 사용하여 MySQL DB 인스턴스를 만드는 방법을 보여줍니다.

**사용자 지정 파라미터 및 새 옵션 그룹을 사용하여 DB 인스턴스를 만들려면 다음과 같이 합니다.**

1. Amazon RDS 콘솔을 열고 **데이터베이스**를 선택합니다.

1. **데이터베이스 생성**을 선택합니다.

1. **데이터베이스 생성 방법 선택**에서 **표준 생성**을 선택합니다.

1. **엔진 옵션**에서 **MySQL** 를 선택합니다.

1. **가용성 및 내구성**에서 **단일 DB 인스턴스**를 선택합니다. 이 단계는 사용자 지정 파라미터 또는 새 옵션 그룹을 지원하는 데 필요합니다.

1. **추가 구성**을 선택합니다.
   + **초기 데이터베이스 이름**에서 DB 인스턴스의 이름을 선택합니다.
   + **DB 파라미터 그룹** 드롭다운에서 이전에 만든 사용자 지정 파라미터 그룹의 이름을 선택합니다.
   + **옵션 그룹** 드롭다운에서 이전에 만든 새 옵션 그룹의 이름을 선택합니다.

1. 이 자습서에서는 다른 DB 설정의 기본 설정을 그대로 두거나 필요에 따라 수정할 수 있습니다.

1. **데이터베이스 생성**을 선택합니다.

RDS는 사용자 지정 파라미터 그룹 및 새 옵션 그룹을 사용하여 새로운 MySQL DB 인스턴스를 만듭니다. 이 데이터베이스에 대한 자세한 내용은 Amazon RDS 콘솔의 **데이터베이스** 페이지를 참조하세요.

이 자습서에서는 사용자 지정 파라미터 및 새 옵션 그룹을 사용하여 맞춤형 설정으로 MySQL DB 인스턴스를 구성했습니다. 새로 만들어진 MySQL DB 인스턴스는 `default_password_lifetime` 파라미터로 사용자 암호 수명을 관리합니다. 또한 이 DB 인스턴스는 `disconnect_on_expired_password` 파라미터를 사용하여 만료된 암호로 연결하는 사용자의 연결을 해제합니다. 또한 `MariaDB Audit Plugin` 옵션을 사용하여 서버 활동을 추적합니다. 데이터베이스를 최적화하기 위해 사용자 지정 파라미터 그룹에 추가 설정을 적용하고 옵션을 추가할 수 있습니다.

 사용자 지정된 DB 인스턴스 만들기를 완료한 후에는 원치 않는 비용이 발생하지 않도록 리소스를 삭제해야 합니다. DB 인스턴스를 삭제하려면 [DB 인스턴스 삭제](USER_DeleteInstance.md) 섹션의 설명을 따릅니다.