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
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.
Sections
Hinzufügen einer DB-Instance zu Ihrer Umgebung
So fügen Sie eine DB-Instance zu Ihrer Umgebung hinzu
Öffnen Sie die Elastic Beanstalk Beanstalk-Konsole
und wählen Sie in der Liste Regionen Ihre aus. AWS-Region -
Wählen Sie im Navigationsbereich Environments (Umgebungen) aus und wählen Sie dann in der Liste den Namen Ihrer Umgebung aus.
Anmerkung
Wenn Sie viele Umgebungen haben, verwenden Sie die Suchleiste, um die Umgebungsliste zu filtern.
Wählen Sie im Navigationsbereich Configuration (Konfiguration) aus.
-
Wählen Sie in der Konfigurationskategorie Database (Datenbank) die Option Edit (Bearbeiten).
-
Wählen Sie eine DB-Engine aus und geben Sie Benutzernamen und Passwort ein.
-
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 |
---|---|---|
|
Der Hostname der DB-Instance. |
Auf der Registerkarte Connectivity & security (Konnektivität und Sicherheit) in der Amazon RDS-Konsole: Endpoint (Endpunkt). |
|
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. |
|
Der Datenbanknam, |
Auf der Registerkarte Configuration (Konfiguration) der Amazon RDS-Konsole: DB-Name. |
|
Der Benutzername, der für die Datenbank konfiguriert wurde. |
Auf der Registerkarte Configuration (Konfiguration) in der Amazon RDS-Konsole: Master username (Master-Benutzername). |
|
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.
Herunterladen eines Treibers
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 –
PDO_MYSQL
-
PostgreSQL –
PDO_PGSQL
-
Oracle –
PDO_OCI
-
SQL Server –
PDO_SQLSRV
Weitere Informationen finden Sie unter http://php.net/manual/en/pdo.installation.php
Mit einem PDO oder My verbinden Sie sich mit einer Datenbank SQLi
Sie können mit $_SERVER[`
die Verbindungsinformationen in der Umgebung lesen.VARIABLE
`]
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
Beispiel 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.
Beispiel 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
Für Symfony ab Version 3.2 können Sie mit %env(
basierend auf den Elastic Beanstalk-Umgebungseigenschaften Datenbankparameter in einer Konfigurationsdatei festlegen.PROPERTY_NAME
)%
Beispiel 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)
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 für jeden Parameter. Anschließend verwenden Sie %
, um in einer Konfigurationsdatei auf die für Symfony umgewandelte Variable zuzugreifen. Beispiel: Auf eine Umgebungseigenschaft namens property.name
%SYMFONY__DATABASE__USER
kann als database.user
zugegriffen werden.
database_user: "%database.user%"
Unter Externe Parameter (Symfony 2.8)