Come posso eseguire una connessione remota al database MySQL ClearDB su heroku utilizzando ad esempio MySQL Query Browser. Dove ottenere url, port, login e password?Connessione remota a clearDB database heroku
risposta
Nel sito Web di heroku, andare su Le mie app e selezionare l'app in cui è stato installato ClearDB.
Nell'angolo in alto a cliccare su Addons e quindi selezionare ClearDB Database MySQL. Una volta lì, fai clic sul tuo database e seleziona la scheda "Informazioni sull'endpoint". Lì vedi il tuo nome utente/password. L'URL del database può essere acquisito eseguendo heroku config --app <YOUR-APP-NAME>
nella riga di comando.
Nel mio caso, è stato qualcosa di simile a: mysql: // user: pass @us-cdbr-east.cleardb.com/DATABASE
ricollegare = true Quello che vi serve è questa parte:? us-CDBR -east.cleardb.com
Tutti i dettagli saranno nell'URL del database che può essere trovato in heroku config
. Supponendo che possiate connettervi direttamente a ClearDB (non ho mai provato), questi dovrebbero essere tutto ciò che serve ...
si esegue Heroku config per ottenere il CLEARDB_DATABASE_URL
e dovrebbe essere qualcosa di questo formato:
CLEARDB_DATABASE_URL => mysql://[username]:[password]@[host]/[database name]?reconnect=true
Quindi, in pratica basta guardare al proprio URL e ottenere tutto quello che volete da Là. Ecco come ho impostato mysql workbench.
Grazie @Andrei, ma per quanto riguarda la porta per il database? – BKSpurgeon
@BKSpurgeon. Ho avuto modo di lavorare con phpMyAdmin con la porta predefinita (Vedi http://stackoverflow.com/a/22092539/4900327) –
Questo è molto più semplice :) –
Sì, è possibile connettersi direttamente a ClearDB, in realtà utilizzo Workbench per la connessione. Quindi puoi usare lo stesso DB per il tuo localhost e per heroku.
Questo è bello sapere, ma in che modo questo aiuta l'OP a trovare la loro connessione informazione? –
Hai ragione, ma ho appena aggiunto un'informazione, perché Neil Middleton ha detto "Supponendo di poterti collegare direttamente a ClearDB", quindi ho appena detto Sì, può farlo. Mi scuso per aver risposto a qualcosa che non ha aiutato la domanda principale. –
Nessun problema. Cose come questa sono davvero buone per i commenti, ma sembra che tu abbia bisogno di qualche altro rappresentante per quello. –
ho fatto un video che spiega come connettersi a MySQL utilizzando NodeJS su un server di Heroku, date un'occhiata:
http://www.youtube.com/watch?v=2OGHdii_42s
Questo è il codice nel caso in cui si desidera visualizzare:
https://github.com/mescalito/MySql-NodeJS-Heroku
Ecco parte del codice:
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);
});
Suoni! MAGIC: http://makegif.com/g9yv.gif
Non so perché questo è così pesantemente downvoted .. il tuo createConnection ha chiarito le cose per me. Grazie :) – Nico
Anche la motivazione per i voti negativi dovrebbe essere fornita. Questa è la risposta che mi ha aiutato. Grazie, fratello! –
Incolla questo terminale all'interno:
heroku config | grep CLEARDB_DATABASE_URL
È possibile utilizzare questo uno-liner per la connessione al database MySQL nel vostro terminale.
$(ruby -e 'require "uri"; uri = URI.parse(ARGV[0]); puts "mysql -u#{uri.user} -p#{uri.password} -h#{uri.host} -D#{uri.path.gsub("/", "")}"' `heroku config:get CLEARDB_DATABASE_URL`)
incolla questo comando nel terminale
heroku config | grep CLEARDB_DATABASE_URL
Dopo questo si otterrà URL del database. per esempio questo è il tuo URL del database cleardb.
'mysql://b0600ea495asds:[email protected]
06.cleardb.net/heroku_4a1dc3673c4114d?reconnect=true'
Di questo saranno le credenziali del database. (Estratto da Above URL)
nome utente = b0600ea495asds
PASSWORD = 9cd2b111
HOST = us-CDBR-HIRONE-West- 06.cleardb.net
Nome database = heroku_4a1dc3673c4114d
Puoi anche vederlo direttamente nella dashboard/sito Web di Heroku, vai alla tua app, fai clic su "Impostazioni" e "Mostra le vele di configurazione". –
Almeno nel mio caso, la parte equivalente a us-cdbr-east.cleardb.com non era il nome del database ma piuttosto il nome dell'host. Il nome del database è stato tuttavia trovato sul dashboard per l'addon ClearDB. – Roseaboveit
dovrai esportare il tuo file di database locale nel database creato da Heroku. Segui questo video e sarai pronto per andare su https://www.youtube.com/watch?v=mBCH9OTVaGw&t=6s –