[PYTHON] Connectez-vous au conteneur MySQL de Docker depuis Flask

Aperçu

Essayez le didacticiel Flask, MySQL est bon pour DB. Il y a des gens comme (´ ・ ω ・ \ ) Je voulais vérifier le tableau avec l'interface graphique (´ ・ ω ・ \ ) Vous pouvez facilement configurer un conteneur Docker MySQL et le connecter à Sequel Pro.

Environnement de fonctionnement confirmé

supposition

Je vais faire un didacticiel Flask. Les sites suivants ont terminé de ** STEP0 ** à ** STEP3 **.

$ tree

├── flaskr
│   ├── __init__.py
│   ├── __init__.pyc
│   ├── config.py
│   ├── config.pyc
│   ├── flaskr.db
│   ├── models.py
│   ├── models.pyc
│   ├── static
│   │   └── style.css
│   ├── templates
│   │   ├── layout.html
│   │   └── show_entries.html
│   ├── views.py
│   └── views.pyc
├── manage.py
└── requirements.txt
スクリーンショット 2017-07-09 2.48.02.png

Configurer un conteneur MySQL

Définissez le mot de passe root pour mysql dans la variable d'environnement MYSQL_ROOT_PASSWORD. Je l'utiliserai plus tard. Connectez le numéro de port «3306» afin de pouvoir vous connecter du côté Mac.

docker run -d -e MYSQL_ROOT_PASSWORD=your_root_password -p 3306:3306 mysql:5.7

Utilisez Sequel Pro

C'est plus facile à comprendre à partir de l'interface graphique, donc cette fois, cela s'appelle Sequel Pro. Utilisez un logiciel client de base de données.

Sequel Pro

Lorsque vous le démarrez, la fenêtre de connexion s'ouvre, alors entrez ce qui suit.

Si vous pouvez vous connecter comme ci-dessous et passer à un écran vide, c'est OK

スクリーンショット 2017-07-09 3.03.43.png

Ensuite, créez la base de données. Dans le menu ci-dessus ** Base de données ** -> ** Ajouter une base de données ** Entrez le nom et le codage de la base de données pour créer la base de données. Cette fois, j'ai défini le nom de la base de données sur "testdb" et le codage sur "UTF-8".

De plus, créez une table. Afin d'exécuter un service comme le babillard créé dans le tutoriel avec MySQL, Vous devez ajouter la table spécifiée dans l'application Flask.

Maintenant, appuyez sur le bouton + en bas à gauche de l'écran pour créer le tableau. Définissez le nom sur ** entrées **. Si vous faites une erreur, la table ne sera pas trouvée et une erreur se produira.

Aussi, dans l'onglet structure,

Mettre en place. C'est OK si cela devient comme suit.

スクリーンショット 2017-07-09 3.13.04.png

La base de données est maintenant prête.

Connectez-vous à MySQL

De là, nous reviendrons à Flask.

Vous devez installer PyMySQL pour vous connecter à MySQL. Exécutez la commande suivante.

$ sudo pip install PyMySQL

Puis modifiez flaskr / config.py pour utiliser MySQL. Vers SQLALCHEMY_DATABASE_URI Maintenant, soyez mysql + pymysql: // [nom d'utilisateur]: [mot de passe] @ [hôte] / [nom de la base de données] Ensemble. De plus, «SECRET_KEY» doit toujours être défini sur une chaîne de caractères appropriée.

flaskr/config.py


SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:[email protected]/testdb'
SECRET_KEY = 'XXXXXXXXXXXXXXXXXX'

Cela lancera python manage.py et exécutera l'application. Si vous pouvez vérifier les données publiées sur Sequel Pro C'est un succès ヾ (゚ д ゚) people (゚ д ゚) ノ

Recommended Posts

Connectez-vous au conteneur MySQL de Docker depuis Flask
Connectez-vous à MySQL à l'aide de Flask SQL Alchemy
Connectez-vous à mysql
Connectez python à mysql
Connectez-vous à sqlite depuis python
Connectez-vous à la base de données utf8mb4 à partir de python
Connexion SSH de Windows à GCP
Connectez-vous au VPN Packetix à partir de CentOS 7 minimal.
Connectez-vous à MySQL avec Python dans Docker
Connexion de python à MySQL sur CentOS 6.4
Tutoriel Flask (de l'installation à Hello World)
Connectez-vous à l'API Websocket de Coincheck depuis Python
Je souhaite me connecter à PostgreSQL à partir de plusieurs langues
Somme de 1 à 10
Connectez-vous à Spacon ITO Jupyter à partir du navigateur client
Impossible de se connecter à MySQL depuis l'environnement Docker (Debian)
Connectez-vous à MySQL avec Python sur Raspberry Pi
Utilisez Tor pour vous connecter depuis urllib2 [Python] [Mac]
[AWS] Migrer les données de DynamoDB vers Aurora MySQL
Comment modifier le répertoire statique par défaut dans Flask
Conversion automatique du fichier MySQL Workbench mwb en fichier sql
Touchez MySQL depuis Python 3
Présentation de WebPay de Flask
Changements de Python 3.0 à Python 3.5
Changements de Python 2 à Python 3.0
Transition de WSL1 à WSL2
Flacon facile à utiliser
Utilisez MySQL depuis Python
Utiliser MySQL depuis Python
Comment gérer l'erreur selon laquelle le conteneur MySQL de Docker ne démarre pas sur Docker Toolbox
De l'édition à l'exécution
Comment se connecter à diverses bases de données à partir de Python (PEP 249) et SQL Alchemy
J'obtiens [Erreur 2055] en essayant de me connecter à MySQL avec Heroku
(Pour moi-même) Flask_6 (Open db depuis python, Mysql basic (phpMyAdmin))
De la construction de l'environnement au déploiement pour flask + Heroku avec Docker
Vérifier quand le conteneur Docker ne se connecte pas à Internet
Connectez-vous à centos6 sur Virtualbox avec une connexion SSH depuis Mac
Connectez-vous à KUINS-III (VPN de l'Université de Kyoto) depuis Linux en utilisant PPTP
Connectez-vous à KUINS-III (VPN de l'Université de Kyoto) à partir de Linux en utilisant IKEv2
Jusqu'à ce que l'API créée par Flask + MySQL soit convertie en Docker