Connexion à Mysql à partir de NodeJS sur Heroku serveur
Une idée de comment puis-je me connecter à partir de NodeJs pour le Mysql ClearDB sur Heroku?
J'ai été en mesure de se connecter à la ClearDB Mysql en cours d'exécution sur Heroku de Navicat, j'ai même créé un tableau appelé t_users. Mais je vais avoir des problèmes de connexion à partir de NodeJs d'Heroku.
C'est mon code, c'est très simple: tout fonctionne à trouver jusqu'à ce qu'il tente de se connecter à MySQL
web.js:
var express = require("express");
var app = express();
app.use(express.logger());
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'us-cdbr-east-04.cleardb.com',
user : '',
password : '',
database : ''
});
connection.connect();
app.get('/', function(request, response) {
response.send('Hello World!!!! HOLA MUNDOOOOO!!!');
connection.query('SELECT 1 + 1 AS solution', function(err, rows, fields) {
if (err) throw err;
response.send('The solution is: ', rows[0].solution);
});
});
var port = process.env.PORT || 5000;
app.listen(port, function() {
console.log("Listening on " + port);
});
C'est ce que j'ai eu lorsque je l'exécute sur la ligne de commande: Heroku config
C:\wamp\www\Nodejs_MySql_Heroku>heroku config
=== frozen-wave-8356 Config Vars
CLEARDB_DATABASE_URL: mysql://b32fa719432e40:[email protected]/heroku_28437b49d76cc53?reconnect=true
PATH: bin:node_modules/.bin:/usr/local/bin:/usr/bin:/bin
C'est le JOURNAL:
http://d.pr/i/cExL
Une idée de comment puis-je me connecter à partir de NodeJs pour le Mysql ClearDB sur Heroku?
Grâce
- Vous avez compris le nom d'utilisateur et mot de passe dans cette question. Rapidement changer votre mot de passe.
Vous devez vous connecter pour publier un commentaire.
De l'essayer. Espérons que cela vous aidera
Utilisez cette détails et le connecter à mySQL banc de travail, et d'importer vos localhost db
Le code de base était ok, j'ai raté quelques NodeJS code.
J'ai fait une vidéo expliquant comment se connecter à MySqlusing NodeJS sur Heroku serveur, prendre un coup d'oeil:
http://www.youtube.com/watch?v=2OGHdii_42s
C'est le code dans le cas où vous voulez voir:
https://github.com/mescalito/MySql-NodeJS-Heroku
L'on ait besoin d'utiliser la piscine de connexion pour la connexion de base de données pour mieux gérer mysql conncurrent demande comme suit
Simplement parce que la piscine maintenir la connexion.release() sur son propre , de sorte que vous n'avez pas à peine où vous avez besoin de libérer la connexion.
D'autre part vous avez besoin de fournir à l'utilisateur, mot de passe et nom de la base comme je l'ai mentionné dans mon code.
Lorsque u obtenir fourni à partir de heroku ensuite, vous obtenez un cleardb nom de base de données.
en cliquant sur effacer de la base de données db bouton, vous trouvez le nom d'utilisateur et mot de passe.
et pour obtenir la base de données url, vous devez exécuter les commandes suivantes dans le terminal comme suit;
heroku de connexion
heroku app-tous (il montre l'application de la liste de nom )
heroku config --app appname (il fournira la base de données d'url).
De repos, vous auriez besoin de s'inquiéter, il suffit d'ajouter toutes les dépendances dans votre colis.json avant de le pousser à heroku maître.
Après alors vous n'aurez aucun problème sur le déploiement d'application nodejs pour heroku serveur.
En regardant le journal de l'horodatage, il semble que vos connexions sont temporisation. Soit créer un wrapper pour 'getConnection" qui vérifie la connexion de la santé et de la ré-établit, si nécessaire, ou essayez d'utiliser la Connexion mysql Piscine fonctionnalité, qui peut le faire pour vous.