

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Hinzufügen einer Amazon RDS-DB-Instance zu Ihrer PHP Elastic Beanstalk Beanstalk-Umgebung
<a name="create_deploy_PHP.rds"></a>

Dieses Thema enthält Anweisungen zum Erstellen eines Amazon RDS mit der Elastic-Beanstalk-Konsole. Sie können eine DB-Instance von Amazon Relational Database Service (Amazon RDS) verwenden, um Daten zu speichern, die von Ihrer Anwendung gesammelt und geändert wurden. Die Datenbank kann an Ihre Umgebung gekoppelt sein und von Elastic Beanstalk verwaltet werden oder sie kann als entkoppelte Datenbank erstellt und extern von einem anderen Service verwaltet werden. In dieser Anleitung wird die Datenbank an Ihre Umgebung gekoppelt und von Elastic Beanstalk verwaltet. Weitere Informationen zur Integration eines Amazon RDS mit Elastic Beanstalk finden Sie unter [Hinzufügen einer Datenbank zu Ihrer Elastic Beanstalk-Umgebung](using-features.managing.db.md).

**Topics**
+ [Hinzufügen einer DB-Instance zu Ihrer Umgebung](#php-rds-create)
+ [Herunterladen eines Treibers](#php-rds-drivers)
+ [Mit einem PDO oder My verbinden Sie sich mit einer Datenbank SQLi](#php-rds-connect)
+ [Verbinden mit einer Datenbank mit Symfony](#php-rds-symfony)

## Hinzufügen einer DB-Instance zu Ihrer Umgebung
<a name="php-rds-create"></a>

**So fügen Sie eine DB-Instance zu Ihrer Umgebung hinzu**

1. Öffnen Sie die [Elastic Beanstalk Beanstalk-Konsole](https://console.aws.amazon.com/elasticbeanstalk) und wählen Sie in der Liste **Regionen** Ihre aus. AWS-Region

1. Wählen Sie im Navigationsbereich **Environments (Umgebungen)** aus und wählen Sie dann in der Liste den Namen Ihrer Umgebung aus.

1. Wählen Sie im Navigationsbereich **Configuration (Konfiguration)** aus.

1. Wählen Sie in der Konfigurationskategorie **Database (Datenbank)** die Option **Edit (Bearbeiten)**.

1. Wählen Sie eine DB-Engine aus und geben Sie Benutzernamen und Passwort ein.

1. Wählen Sie unten auf der Seite die Option **Apply** (Anwenden) aus, um die Änderungen zu speichern.

Das Hinzufügen einer DB-Instance dauert ca. 10 Minuten. Sobald die Umgebungsaktualisierung abgeschlossen ist, stehen der Hostname der DB-Instance und andere Verbindungsinformationen über die folgenden Umgebungseigenschaften zur Verfügung:


| Eigenschaftenname | Beschreibung | Eigenschaftenwert | 
| --- | --- | --- | 
| `RDS_HOSTNAME` | Der Hostname der DB-Instance. | Auf der Registerkarte **Connectivity & security (Konnektivität und Sicherheit)** in der Amazon RDS-Konsole: **Endpoint (Endpunkt)**. | 
| `RDS_PORT` | Der Port, über den die DB-Instance Verbindungen annimmt. Die DB-Engines haben unterschiedliche Standardwerte. | Auf der Registerkarte **Connectivity & security (Konnektivität und Sicherheit)** auf der Amazon RDS-Konsole: **Port**. | 
| `RDS_DB_NAME` | Der Datenbanknam, **ebdb**. | Auf der Registerkarte **Configuration (Konfiguration)** der Amazon RDS-Konsole: **DB-Name**. | 
| `RDS_USERNAME` | Der Benutzername, der für die Datenbank konfiguriert wurde. | Auf der Registerkarte **Configuration (Konfiguration)** in der Amazon RDS-Konsole: **Master username (Master-Benutzername)**. | 
| `RDS_PASSWORD` | Das Passwort, das für die Datenbank konfiguriert wurde. | Es ist in der Amazon RDS-Konsole nicht als Referenz angegeben. | 

Weitere Informationen zur Konfiguration einer Datenbank-Instance in Verbindung mit einer Elastic-Beanstalk-Umgebung finden Sie unter [Hinzufügen einer Datenbank zu Ihrer Elastic Beanstalk-Umgebung](using-features.managing.db.md).

## Herunterladen eines Treibers
<a name="php-rds-drivers"></a>

Zur Verwendung von PHP Data Objects (PDO), um eine Verbindung mit der Datenbank herzustellen, installieren Sie den Treiber für die Datenbank-Engine, die Sie ausgewählt haben.
+ **MySQL** – [http://php.net/manual/en/ref.pdo-mysql.php](http://php.net/manual/en/ref.pdo-mysql.php)
+ **PostgreSQL** – [http://php.net/manual/en/ref.pdo-pgsql.php](http://php.net/manual/en/ref.pdo-pgsql.php)
+ **Oracle** – [http://php.net/manual/en/ref.pdo-oci.php](http://php.net/manual/en/ref.pdo-oci.php)
+ **SQL Server** – [http://php.net/manual/en/ref.pdo-sqlsrv.php](http://php.net/manual/en/ref.pdo-sqlsrv.php)

Weitere Informationen finden Sie unter [http://php.net/manual/en/pdo.installation.php](http://php.net/manual/en/pdo.installation.php).

## Mit einem PDO oder My verbinden Sie sich mit einer Datenbank SQLi
<a name="php-rds-connect"></a>

Sie können mit `$_SERVER[`{{VARIABLE}}`]` die Verbindungsinformationen in der Umgebung lesen.

Erstellen Sie für ein PDO einen Data Source Name (DSN) bestehend aus Host, Port und Namen. Geben Sie den DSN an den [Konstruktor für das PDO](https://php.net/manual/en/pdo.construct.php) mit dem Benutzernamen und Passwort der Datenbank weiter.

**Example Verbinden mit einer RDS-Datenbank mit PDO – MySQL**  

```
<?php
$dbhost = $_SERVER['RDS_HOSTNAME'];
$dbport = $_SERVER['RDS_PORT'];
$dbname = $_SERVER['RDS_DB_NAME'];
$charset = 'utf8' ;

$dsn = "{{mysql}}:host={$dbhost};port={$dbport};dbname={$dbname};charset={$charset}";
$username = $_SERVER['RDS_USERNAME'];
$password = $_SERVER['RDS_PASSWORD'];

$pdo = new PDO($dsn, $username, $password);
?>
```

Für andere Treiber ersetzen Sie `mysql` durch den Namen Ihres Treibers – `pgsql`, `oci` oder `sqlsrv`.

Übergeben Sie für My SQLi den Hostnamen, den Benutzernamen, das Passwort, den Datenbanknamen und den Port an den `mysqli` Konstruktor.

**Example Verbinden mit einer RDS-Datenbank mit mysqli\_connect()**  

```
$link = new mysqli($_SERVER['RDS_HOSTNAME'], $_SERVER['RDS_USERNAME'], $_SERVER['RDS_PASSWORD'], $_SERVER['RDS_DB_NAME'], $_SERVER['RDS_PORT']);
```

## Verbinden mit einer Datenbank mit Symfony
<a name="php-rds-symfony"></a>

Für Symfony ab Version 3.2 können Sie mit `%env({{PROPERTY_NAME}})%` basierend auf den Elastic Beanstalk-Umgebungseigenschaften Datenbankparameter in einer Konfigurationsdatei festlegen.

**Example app/config/parameters.yml**  

```
parameters:
    database_driver:   pdo_mysql
    database_host:     '%env(RDS_HOSTNAME)%'
    database_port:     '%env(RDS_PORT)%'
    database_name:     '%env(RDS_DB_NAME)%'
    database_user:     '%env(RDS_USERNAME)%'
    database_password: '%env(RDS_PASSWORD)%'
```

Unter [Externe Parameter (Symfony 3.4)](http://symfony.com/doc/3.4/configuration/external_parameters.html) finden Sie weitere Informationen.

In früheren Versionen von Symfony konnte auf Umgebungsvariablen nur zugegriffen werden, wenn der Name mit `SYMFONY__` begann. Dies bedeutet, dass die für Elastic Beanstalk definierten Umgebungseigenschaften nicht zugänglich sind und Sie eigene Umgebungseigenschaften definieren müssen, um die Verbindungsdaten an Symfony zu übermitteln.

Zum Verbinden einer Datenbank mit Symfony 2 [erstellen Sie eine Umgebungseigenschaft](create_deploy_PHP.container.md#php-console-properties) für jeden Parameter. Anschließend verwenden Sie `%{{property.name}}%`, um in einer Konfigurationsdatei auf die für Symfony umgewandelte Variable zuzugreifen. Beispiel: Auf eine Umgebungseigenschaft namens `SYMFONY__DATABASE__USER` kann als `database.user` zugegriffen werden.

```
    database_user:     "%database.user%"
```

Unter [Externe Parameter (Symfony 2.8)](http://symfony.com/doc/2.8/configuration/external_parameters.html) finden Sie weitere Informationen.