

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Python Elastic Beanstalk 환경에 Amazon RDS DB 인스턴스 추가
<a name="create-deploy-python-rds"></a>

여기에서는 Elastic Beanstalk 콘솔을 사용하여 Amazon RDS를 생성하는 방법을 설명합니다. Amazon Relational Database Service(RDS) DB 인스턴스를 통해 애플리케이션이 수집하고 수정하는 데이터를 저장할 수 있습니다. Elastic Beanstalk를 통해 데이터베이스를 환경으로 연결한 후 관리하거나 비연결을 통해 생성하여 외부 기타 서버로 관리할 수 있습니다. 이러한 지침에서 데이터베이스는 Elastic Beanstalk를 통해 사용자 환경에 연결되고 관리됩니다. Elastic Beanstalk를 통한 Amazon RDS 통합에 대한 자세한 내용은 [Elastic Beanstalk 환경에 데이터베이스 추가](using-features.managing.db.md)을 참조하십시오.

**Topics**
+ [환경에 DB 인스턴스 추가](#python-rds-create)
+ [드라이버 다운로드](#python-rds-drivers)
+ [데이터베이스로 연결](#python-rds-connect)

## 환경에 DB 인스턴스 추가
<a name="python-rds-create"></a>

**환경에 DB 인스턴스를 추가하려면**

1. [Elastic Beanstalk 콘솔](https://console.aws.amazon.com/elasticbeanstalk)을 열고 **리전** 목록에서를 선택합니다 AWS 리전.

1. 탐색 창에서 **환경**을 선택한 다음 목록에서 환경의 이름을 선택합니다.

1. 탐색 창에서 **구성**을 선택합니다.

1. **데이터베이스** 구성 범주에서 **편집**을 선택합니다.

1. DB 엔진을 선택하고 사용자 이름과 암호를 입력합니다.

1. 변경 사항을 저장하려면 페이지 하단에서 **적용**을 선택합니다.

DB 인스턴스를 추가하는 데 약 10분 정도 소요됩니다. 환경 업데이트가 완료되면 애플리케이션에서 다음 환경 속성을 통해 DB 인스턴스 호스트 이름과 기타 연결 정보를 사용할 수 있습니다:


| 속성 이름 | 설명 | 속성 값 | 
| --- | --- | --- | 
|  `RDS_HOSTNAME`  |  DB 인스턴스의 호스트 이름입니다.  |  Amazon RDS 콘솔 **연결 및 보안** 탭의 **엔드포인트**입니다.  | 
|  `RDS_PORT`  |  DB 인스턴스가 연결을 허용하는 포트입니다. DB 엔진마다 기본값이 다릅니다.  |  Amazon RDS 콘솔 **연결 및 보안** 탭의 **포트**입니다.  | 
|  `RDS_DB_NAME`  |  데이터베이스 이름은 **ebdb**입니다.  |  Amazon RDS 콘솔 **구성** 탭의 **DB 이름**입니다.  | 
|  `RDS_USERNAME`  |  데이터베이스에 구성된 사용자 이름입니다.  |  Amazon RDS 콘솔 **구성** 탭의 **마스터 사용자 이름**입니다.  | 
|  `RDS_PASSWORD`  |  데이터베이스에 구성된 암호입니다.  |  Amazon RDS 콘솔에서 참조용 정보를 사용할 수 없습니다.  | 

Elastic Beanstalk 환경에 결합된 데이터베이스에 대한 자세한 내용은 [Elastic Beanstalk 환경에 데이터베이스 추가](using-features.managing.db.md)을 참조하세요.

## 드라이버 다운로드
<a name="python-rds-drivers"></a>

프로젝트의 [필수 요구 파일](python-configuration-requirements.md)에 데이터베이스 드라이버를 추가합니다.

**Example requirements.txt – MySQL을 포함하는 Django**  

```
Django==2.2
mysqlclient==2.0.3
```

**일반 Python용 드라이버 패키지**
+ **MySQL** – `mysqlclient`
+ **PostgreSQL** – `psycopg2`
+ **Oracle** – `cx_Oracle`
+ **SQL Server** – `adodbapi`

자세한 내용은 [Python 데이터베이스 인터페이스](https://wiki.python.org/moin/DatabaseInterfaces) 및 [Django 2.2 - 지원 가능한 데이터베이스를](https://docs.djangoproject.com/en/2.2/ref/databases)참조하세요.

## 데이터베이스로 연결
<a name="python-rds-connect"></a>

Elastic Beanstalk에서는 환경 속성을 통해 연결된 DB 인스턴스의 연결 정보를 제공합니다. `os.environ['VARIABLE']` 를 통해 속성을 읽고 데이터베이스 연결을 구성합니다.

**Example Django 설정 파일 – 데이터베이스 사전**  

```
import os

if 'RDS_HOSTNAME' in os.environ:
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': os.environ['RDS_DB_NAME'],
            'USER': os.environ['RDS_USERNAME'],
            'PASSWORD': os.environ['RDS_PASSWORD'],
            'HOST': os.environ['RDS_HOSTNAME'],
            'PORT': os.environ['RDS_PORT'],
        }
    }
```