[Python] Ajout d'une instance de base de données de RDS avec Elastic Beanstalk

Elastic Beanstalk Ajouter une instance de base de données Amazon RDS à l'environnement d'application Python

Lorsque vous utilisez RDS pour la première fois, utilisez la console de gestion EB pour définir l'environnement de test sur [Instance DB](https://docs.aws.amazon.com/ja_jp/elasticbeanstalk/latest/dg/create-deploy-python-rds. Ajoutez html # python-rds-create) et assurez-vous que l'application peut se connecter à cette instance

Pour vous connecter à la base de données, le [pilote] approprié pour votre application (https://docs.aws.amazon.com/ja_jp/elasticbeanstalk/latest/dg/create-deploy-python-rds.html#python-rds-drivers ) Et chargez le pilote dans le code, puis utilisez les propriétés d'environnement fournies par l'EB pour créer un objet de connexion (https://docs.aws.amazon.com/ja_jp/elasticbeanstalk/latest/dg/create- deploy-python-rds.html # python-rds-connect) Les paramètres et le code de connexion dépendent du moteur de base de données et du framework utilisés

Ajouter une instance de base de données à l'environnement

  1. Sélectionnez une région AWS dans la console EB
  2. Sélectionnez l'environnement à utiliser dans le volet de navigation
  3. Sélectionnez un paramètre dans le volet de navigation
  4. Sélectionnez Modifier dans la catégorie Paramètres de la base de données
  5. Sélectionnez le moteur de base de données et entrez le nom d'utilisateur et le mot de passe
  6. Sélectionnez Appliquer

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

Nom de la propriété La description Valeur de la propriété
RDS_HOSTNAME Nom d'hôte de l'instance de base de données Console Amazon RDS[Connexion et sécurité]languette:[point final]
RDS_PORT Ports autorisés à se connecter par instance de base de données La valeur par défaut dépend du moteur de base de données Console Amazon RDS[Connexion et sécurité]languette:[Port]
RDS_DB_NAME Nom EBebdb Console Amazon RDS[Réglage]languette:[Port]
RDS_USETNAME Nom d'utilisateur défini pour la base de données Console Amazon RDS[Réglage]languette:[Nom d'utilisateur principal]
RDS_PASSWORD Mot de passe défini pour la base de données Non visible sur la console Amazon RDS

Pour plus de détails sur la configuration de l'instance de base de données interne, voir Ajouter une base de données à l'environnement EB. référence

Téléchargement du pilote

Projet fichier des exigences Ajouter un pilote de base de données Exemple) requirements.txt

mysqlclient==1.3.12

Package de pilote commun Python

Connexion à la base de données

EB fournit des informations de connexion pour l'instance de base de données attachée dans les propriétés de l'environnement ʻOs.environ [‘VARIABLE’] pour lire les propriétés et configurer une connexion DB

Exemple) Fichier de configuration Django --DATABASE dictionary

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’],
		}
	}

Recommended Posts

[Python] Ajout d'une instance de base de données de RDS avec Elastic Beanstalk
Premiers pas avec Python Bases de Python
L'histoire de la création d'un pilote standard pour db avec python.
Jeu de vie avec Python! (Le jeu de la vie de Conway)
10 fonctions du "langage avec batterie" python
Implémentation de la méthode Dyxtra par python
Coexistence de Python2 et 3 avec CircleCI (1.0)
Etude de base d'OpenCV avec Python
Bases du traitement d'images binarisées par Python
Exécuter le script Python avec TS-220 cron
Authentification sans mot de passe avec RDS et IAM (Python)
Vérifier l'existence du fichier avec python
Obstrué par la mise à jour Python de la console GCP ①
Introduction facile de la reconnaissance vocale avec Python
Enregistrer / charger la base de données en mémoire avec sqlite3 de python
[python] Obtenir une liste de variables d'instance
UnicodeEncodeError lutte avec la sortie standard de python3
1. Statistiques apprises avec Python 1-3. Calcul de diverses statistiques (statistiques)
Dessin avec Matrix-Reinventor of Python Image Processing-
Recommandation d'Altair! Visualisation des données avec Python
Comparaison de la vitesse de transposition de la matrice par Python
Remarque: Comment obtenir le dernier jour du mois avec python (ajouté le premier jour du mois)
[AtCoder] Résoudre un problème de ABC101 ~ 169 avec Python
Préparer l'environnement d'exécution de Python3 avec Docker
Fonctionnement automatique de Chrome avec Python + Sélénium + pandas
Comparaison des performances du détecteur de visage avec Python + OpenCV
[Python] axe limite du graphe 3D avec Matplotlib
Mathématiques Todai 2016 résolues avec Python
[Note] Exportez le html du site avec python.
Obstruction de la mise à jour python de la console GCP ② (Solution)
Utiliser plusieurs versions de l'environnement python avec pyenv
Vérifiez la date du devoir de drapeau avec Python
Résolvez A ~ D du codeur yuki 247 avec python
1. Statistiques apprises avec Python 1-2. Calcul de diverses statistiques (Numpy)
[Python] Débarrassez-vous de la datation avec des expressions régulières
Comment spécifier des attributs avec Mock of Python
Construction d'environnement Poetry-virtualenv avec python de centos-sclo-rh ~ Notes
Automatiser des tâches simples avec Python Table des matières
Implémentation de l'arbre TRIE avec Python et LOUDS
Obtenez des informations sur le processeur de Raspberry Pi avec Python
[Python] Résumé des opérations sur les fichiers S3 avec boto3
Vider le contenu de la base de données redis avec lua
Exporter un instantané RDS vers S3 avec Lambda (Python)
Convertir le code de caractère du fichier avec Python3
Analyse statique du code Python avec GitLab CI
Une doublure qui produit 10000 chiffres de rapport de circonférence avec Python
Poursuite du développement multi-plateforme avec Electron et Python
[Python] Déterminez le type d'iris avec SVM
[Python] Comment comparer la date / heure avec le fuseau horaire ajouté
[Blender x Python] Pensez au code avec des symboles
Analyse non linéaire géométrique du squelette élastique bidimensionnel avec Python
Exemple de lecture et d'écriture de CSV avec Python
Apprenez lentement avec Python "Principe de l'inversion des dépendances"
Mesurer la température du processeur de Raspeye avec Python
[AWS] J'ai essayé de créer un environnement Python avec un environnement de développement eb [Elastic Beanstalk]