Comment puis-je effectuer une connexion à distance à la base de données ClearDB MySQL sur heroku en utilisant, par exemple, le navigateur de requêtes MySQL. Où trouver l'URL, le port, l'identifiant et le mot de passe?
Sur le site Web heroku, accédez à Mes applications et sélectionnez l'application sur laquelle vous avez installé ClearDB.
Dans le coin supérieur, cliquez sur Ajouts, puis sélectionnez base de données ClearDB MySQL. Une fois là-bas, cliquez sur votre base de données et choisissez l'onglet 'Endpoint Information'. Là vous voyez votre nom d'utilisateur/mot de passe. L’URL de la base de données peut être acquis en exécutant heroku config --app <YOUR-APP-NAME>
dans la ligne de commande.
Dans mon cas, c'était quelque chose comme: mysql: // user: pass @ s-cdbr-east.cleardb.com/DATABASE
? Reconnect = true Ce dont vous avez besoin est cette partie : s-cdbr-east.cleardb.com
Vous lancez heroku config pour obtenir le CLEARDB_DATABASE_URL
et il devrait y avoir quelque chose de ce format:
CLEARDB_DATABASE_URL => mysql://[username]:[password]@[Host]/[database name]?reconnect=true
Donc, fondamentalement, il vous suffit de regarder votre propre URL et d'obtenir tout ce que vous voulez à partir de là. C'est comme ça que j'ai configuré mysql workbench.
Coller cette commande dans le terminal
heroku config | grep CLEARDB_DATABASE_URL
Après cela, vous obtiendrez l'URL de la base de données. C'est par exemple votre URL de base de données cleardb.
'mysql://b0600ea495asds:9cd2b111@us-cdbr-hirone-west-
06.cleardb.net/heroku_4a1dc3673c4114d?reconnect=true'
Ce seront vos identifiants de base de données. (Extrait de l'URL ci-dessus)
NOM D'UTILISATEUR = b0600ea495asds
MOT DE PASSE = 9cd2b111
Hôte = us-cdbr-hirone-west- 06.cleardb.net
BASE DE DONNEES = heroku_4a1dc3673c4114d
J'ai fait une vidéo expliquant comment se connecter à MySql en utilisant NodeJS sur un serveur Heroku, regardez:
http://www.youtube.com/watch?v=2OGHdii_42s
C'est le code au cas où vous voudriez voir:
https://github.com/mescalito/MySql-NodeJS-Herok
Voici une partie du code:
var express = require("express");
var mysql = require('mysql');
var app = express();
app.use(express.logger());
var connection = mysql.createConnection({
Host : 'us-cdbr-east-04.cleardb.com',
user : 'b6d6c6e874',
password : 'b3f7###',
database : 'heroku_1daa39da0'
});
connection.connect();
app.get('/', function(request, response) {
connection.query('SELECT * from t_users', function(err, rows, fields) {
if (err) {
console.log('error: ', err);
throw err;
}
response.send(['Hello World!!!! HOLA MUNDO!!!!', rows]);
});
});
var port = process.env.PORT || 5000;
app.listen(port, function() {
console.log("Listening on " + port);
});
À votre santé! MAGIC: http://makegif.com/g9yv.gif
Collez ce terminal intérieur:
heroku config | grep CLEARDB_DATABASE_URL
Vous pouvez utiliser cette ligne unique pour vous connecter à votre base de données MySQL dans votre terminal.
$ (Ruby -e 'require "uri"; uri = URI.parse (ARGV [0]); met "mysql -u # {uri.user} -p # {uri.password} -h # {uri.Host} -D # {uri.path.gsub ("/", "")} "'` heroku config: obtenez CLEARDB_DATABASE_URL`)
Accédez à votre application sur heroku et cliquez sur l'onglet "Paramètres". Cliquez ensuite sur le bouton de la deuxième option indiquant "révéler les paramètres de configuration".
Vous devriez trouver, listés sous la variable CLEARDB_DATABASE_URL, quelque chose comme ça ...
mysql: // [nom d'utilisateur]: [mot de passe] @ [hôte]/[nom de la base de données]? reconnect = true
Donc, la [partie hôte] est votre hôte. La partie [nom de la base de données] est votre nom de base de données, bien sûr.
Vous avez toujours besoin de votre nom d'utilisateur et de votre mot de passe. Retournez à l'onglet 'aperçu' dans heroku. Accédez au module complémentaire ClearDB dans la section des modules complémentaires installés. Cliquez sur la base de données à laquelle vous souhaitez accéder (probablement 1 seule option). Cliquez sur l'onglet "Informations système". Vous devriez voir votre nom d'utilisateur et votre mot de passe.
cela devrait être tout ce dont vous avez besoin pour accéder à votre base de données. J'utilise suite pro. Je viens de brancher cette information (nom, hôte, dans l'onglet "standard" et j'étais prêt à partir.
Si vous utilisez mySQL Workbench, suivez ce schéma. Allez dans Heroku> Paramètres de vos applications> Config Vars et affichez l'URL longue. Cette URL comprend votre nom d'utilisateur, mot de passe, l'URL de la base de données et le schéma par défaut. Collez toutes les informations comme suit ci-dessous, et vous pourrez vous connecter avec succès à la base de données. Il n'y avait aucune explication réelle sur la façon de se connecter à ClearDB à l'aide de mySQL Workbench sur ce fil. J'espère donc que cela aidera quelqu'un qui se débattait.
Tout cela a parfaitement fonctionné pour moi. Utiliser heroku config | grep, comme décrit ci-dessus, puis en ajoutant simplement une autre entrée dans mon fichier config.inc.php pour utilisation par phpMyAdmin et je pourrai accéder à ma base de données cleardb à distance. Cela me évite d'avoir SQL en local et d'utiliser postgres avec Heroku.
devrait envisager de récupérer les informations d'identification de vars dans des configurations heroku (Config Vars):
CLEARDB_DATABASE_URL
Tous les détails seront dans l'URL de la base de données qui se trouve dans heroku config
. En supposant que vous puissiez vous connecter directement à ClearDB (je ne l’ai jamais essayé), vous devriez avoir tout ce dont vous avez besoin ...