Comment créer une connexion mysql piscine ou une meilleure façon d'initialiser les bases de données multiples?
Dans mon code je suis de l'ouverture de deux connexions mysql et à l'aide de requêtes HTTP pour insérer des données dans la base de données
g.db = mysql.connector.connect(user=a ,password=password, host=localhost,database=mysq1)
g.db1 = mysql.connector.connect(user=b,password=password, host=localhost,database=mysql2)
@app.route('/user/<db>')
def insert(db):
#code for inserting data into mysql1 database
#code for inserting data into mysql2 database
Je suis la création de requêtes HTTP pour sélectionner les bases de données.
curl -i 'localhost:5000/user/mysql1' #
Qu'elle fonctionne bien, les données sont insérées dans la base de données sélectionnée.
Mais je pensais à la création d'un pool de connexion pour les deux connexions, puis utilisé la piscine.
Questions:
-
Comment mettre en œuvre la connexion mysql mise en commun?
-
Est-il d'autres de meilleure façon de l'initialisation des connexions.Actuellement la connexion ouverte à chaque demande.
OriginalL'auteur mrsteel | 2015-09-18
Vous devez vous connecter pour publier un commentaire.
Utilisation de l'ORM cadres pour rendre les choses plus facile, ci-dessous est une base et d'une façon générale, nous avons créer un pool de connexions avec toutes les ORM cadres.
Créer votre propre piscine et d'un nom, myPool dans les arguments de regroupement de connexion, vous pouvez également déclarer la taille du pool = 5 (qui est le nombre de connexions de base de données).
Veuillez voir ci-dessous pour plus d'informations:
dbconfig, configuration de base de données est l'endroit où vous donner tous les détails de la configuration, chaque fois que vous modifiez votre databse. En fait, vous pouvez avoir plusieurs bases de données, si vous le souhaitez.
Veuillez voir cette Documentation de MySQL ici
Nous pouvons voir plus sur ce type d'arguments peuvent être déclarées:
Ce constructeur instancie un objet qui gère un pool de connexion.
Arguments dans le détail:
Vous devriez voir ça une belle documentation ici
Pour faire de votre connexion piscine multithread, ce post sur stackoverflw pourrait vraiment aider. Veuillez voir cette post
Merci pour le demander. Dans le constructeur ci-dessus, si vous regardez soigneusement, pool_size = 3, ce qui signifie que le nombre de connexions qu'il fera 3 de toute façon j'ai ajouté un peu plus de rendre les choses claires pour vous. Aller étape par étape, il est beau sujet, enjoy 🙂
OriginalL'auteur JumpMan
Vous pouvez créer un pool de connexions au début avec
create_pool()
qui finalement causerMySQLConnectionPool()
, et quand vous en avez besoin pour vous connecter à MySQL, vous pouvez obtenir une connexion avecget_connection()
de la piscine, et quand vous n'avez pas besoin de la connexion vous pouvez ajouter le lien de retour à la piscine avecconn.close()
.OriginalL'auteur buxizhizhoum
Un autre moyen serait d'utiliser n'importe quel Serveur Web, je vous suggère d'utiliser JBoss. Vous pouvez créer une source de données et le configurer avec le nombre de connexions que vous voulez être contrôlé et le laisser être contrôlé par JBoss.
OriginalL'auteur Karpinski