

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Ajouter une instance de base de données Amazon RDS à votre environnement Python Elastic Beanstalk
<a name="create-deploy-python-rds"></a>

Cette rubrique fournit des instructions pour créer un Amazon RDS à l'aide de la console Elastic Beanstalk. Vous pouvez utiliser une instance de base de données Amazon Relational Database Service (Amazon RDS) pour stocker les données collectées et modifiées par votre application. La base de données peut être liée à votre environnement et gérée par Elastic Beanstalk, ou elle peut être créée comme déliée et gérée en externe par un autre service. Dans ces instructions, la base de données est couplée à votre environnement et gérée par Elastic Beanstalk. Pour plus d'informations sur l'intégration d'un Amazon RDS avec Elastic Beanstalk, consultez [Ajout d'une base de données à votre environnement Elastic Beanstalk](using-features.managing.db.md).

**Topics**
+ [Ajout d'une instance de base de données à votre environnement](#python-rds-create)
+ [Téléchargement d'un pilote](#python-rds-drivers)
+ [Connexion à une base de données](#python-rds-connect)

## Ajout d'une instance de base de données à votre environnement
<a name="python-rds-create"></a>

**Pour ajouter une instance DB à votre environnement**

1. Ouvrez la console [Elastic Beanstalk](https://console.aws.amazon.com/elasticbeanstalk), puis **dans la liste des régions, sélectionnez votre**. Région AWS

1. Dans le panneau de navigation, choisissez **Environments** (Environnements), puis choisissez le nom de votre environnement dans la liste.

1. Dans le panneau de navigation, choisissez **Configuration**.

1. Dans la catégorie de configuration **Database (Base de données)**, choisissez **Edit (Modifier)**.

1. Choisissez un moteur de base de données, puis saisissez un nom d'utilisateur et un mot de passe.

1. Pour enregistrer les modifications, cliquez sur **Appliquer** en bas de la page.

L'ajout d'une instance DB prend environ 10 minutes. Une fois la mise à jour de l'environnement terminée, le nom d'hôte de l'instance DB et les autres informations de connexion sont disponibles dans votre application, via les propriétés d'environnement suivantes :


| Nom de la propriété | Description | Valeur de la propriété | 
| --- | --- | --- | 
|  `RDS_HOSTNAME`  |  Nom d'hôte de l'instance DB.  |  Sous l'onglet **Connectivity & security** (Connectivité et sécurité) de la console Amazon RDS : **Endpoint** (Point de terminaison).  | 
|  `RDS_PORT`  |  Port sur lequel l'instance de base de données accepte des connexions. La valeur par défaut varie selon les moteurs de base de données.  |  Sous l'onglet **Connectivity & security (Connectivité et sécurité)** de la console Amazon RDS : **Port**.  | 
|  `RDS_DB_NAME`  |  Nom de la base de données, **ebdb**.  |  Sous l'onglet **Configuration** de la console Amazon RDS : **DB Name (Nom de base de données)**.  | 
|  `RDS_USERNAME`  |  Nom d'utilisateur que vous avez configuré pour votre base de données.  |  Sous l'onglet **Configuration** de la console Amazon RDS : **Master username (Identifiant principal)**.  | 
|  `RDS_PASSWORD`  |  Mot de passe que vous avez configuré pour votre base de données.  |  Non disponible pour référence dans la console Amazon RDS.  | 

Pour plus d'informations sur la configuration d'une instance de base de données liée à un environnement Elastic Beanstalk, consultez [Ajout d'une base de données à votre environnement Elastic Beanstalk](using-features.managing.db.md).

## Téléchargement d'un pilote
<a name="python-rds-drivers"></a>

Ajoutez le pilote de base de données au [fichier Requirements](python-configuration-requirements.md) de votre projet.

**Example requirements.txt – Django avec MySQL**  

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

**Packages de pilotes courants pour Python**
+ **MySQL** – `mysqlclient`
+ **PostgreSQL** – `psycopg2`
+ **Oracle** – `cx_Oracle`
+ **SQL Server** – `adodbapi`

Pour plus d'informations, consultez [Python DatabaseInterfaces](https://wiki.python.org/moin/DatabaseInterfaces) et [Django 2.2 : bases de données prises en charge](https://docs.djangoproject.com/en/2.2/ref/databases).

## Connexion à une base de données
<a name="python-rds-connect"></a>

Elastic Beanstalk fournit des informations de connexion pour les instances de base de données attachées dans les propriétés de l'environnement. Utilisez `os.environ['VARIABLE']` pour lire les propriétés et configurer une connexion de base de données.

**Example Fichier de paramètres Django – Dictionnaire DATABASES**  

```
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'],
        }
    }
```