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 Amazon RDS DB à votre environnement PHP Elastic Beanstalk
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 (RDSAmazon) 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 à Elastic Beanstalk, consultez. Ajout d'une base de données à votre environnement Elastic Beanstalk
Sections
Ajout d'une instance de base de données à votre environnement
Pour ajouter une instance DB à votre environnement
Ouvrez la console Elastic Beanstalk
, puis dans la liste des régions, sélectionnez votre. Région AWS -
Dans le panneau de navigation, choisissez Environments (Environnements), puis choisissez le nom de votre environnement dans la liste.
Note
Si vous avez plusieurs environnements, utilisez la barre de recherche pour filtrer la liste des environnements.
Dans le panneau de navigation, choisissez Configuration.
-
Dans la catégorie de configuration Database (Base de données), choisissez Edit (Modifier).
-
Choisissez un moteur de base de données, puis saisissez un nom d'utilisateur et un mot de passe.
-
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é |
---|---|---|
|
Nom d'hôte de l'instance DB. |
Dans l'onglet Connectivité et sécurité de la RDS console Amazon : Endpoint. |
|
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. |
Dans l'onglet Connectivité et sécurité de la RDS console Amazon : Port. |
|
Nom de la base de données, |
Dans l'onglet Configuration de la RDS console Amazon : Nom de la base de données. |
|
Nom d'utilisateur que vous avez configuré pour votre base de données. |
Dans l'onglet Configuration de la RDS console Amazon : Nom d'utilisateur principal. |
|
Mot de passe que vous avez configuré pour votre base de données. |
Non disponible pour référence dans la RDS console Amazon. |
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.
Téléchargement d'un pilote
Pour utiliser PHP Data Objects (PDO) pour vous connecter à la base de données, installez le pilote correspondant au moteur de base de données que vous avez choisi.
-
Mon SQL —
PDO_MYSQL
-
Poster — SQL
PDO_PGSQL
-
Oracle –
PDO_OCI
-
SQLServeur —
PDO_SQLSRV
Pour de plus amples informations, veuillez consulter http://php.net/manual/en/pdo.installation.php
Connexion à une base de données avec a PDO ou M ySQLi
Vous pouvez utiliser $_SERVER[`
afin de lire les informations de connexion depuis l'environnement.VARIABLE
`]
Pour unPDO, créez un nom de source de données (DSN) à partir de l'hôte, du port et du nom. Transmettez-le DSN au constructeur du PDO avec le nom d'utilisateur et le
Exemple Connectez-vous à une RDS base de données avec PDO - My SQL
<?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); ?>
Pour les autres pilotes, remplacez mysql
par le nom de votre pilote – pgsql
, oci
ou sqlsrv
.
Pour MySQLi, transmettez le nom d'hôte, le nom d'utilisateur, le mot de passe, le nom de base de données et le port au mysqli
constructeur.
Exemple Connectez-vous à une RDS base de données avec mysqli_connect ()
$link = new mysqli($_SERVER['RDS_HOSTNAME'], $_SERVER['RDS_USERNAME'], $_SERVER['RDS_PASSWORD'], $_SERVER['RDS_DB_NAME'], $_SERVER['RDS_PORT']);
Connexion à une base de données avec Symfony
Pour Symfony version 3.2 et versions ultérieures, vous pouvez utiliser %env(
pour définir les paramètres de base de données dans un fichier de configuration en fonction des propriétés d'environnement définies par Elastic Beanstalk.PROPERTY_NAME
)%
Exemple 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)%'
Pour plus d'informations, consultez External Parameters (Symfony 3.4)
Pour les versions antérieures de Symfony, les variables d'environnement sont uniquement accessibles si elles commencent par SYMFONY__
. Cela signifie que les propriétés d'environnement définies par Elastic Beanstalk ne sont pas accessibles, et vous devez définir vos propres propriétés d'environnement pour transmettre les informations de connexion à Symfony.
Pour vous connecter à une base de données avec Symfony 2, créez une propriété d'environnement pour chaque paramètre. Ensuite, utilisez %
pour accéder à la variable transformée par Symfony dans un fichier de configuration. Par exemple, une propriété d'environnement nommée property.name
%SYMFONY__DATABASE__USER
est accessible en tant que database.user
.
database_user: "%database.user%"
Pour plus d'informations, consultez External Parameters (Symfony 2.8)