Risposte:
Nel sito web di heroku, vai su Le mie app e seleziona l'app su cui hai installato ClearDB.
Nell'angolo in alto fai clic su Addons e quindi seleziona ClearDB MySQL Database . Una volta lì, fai clic sul tuo database e scegli la scheda " Informazioni sull'endpoint ". Lì vedrai 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, era qualcosa del tipo: mysql: // user: pass @ us-cdbr-east.cleardb.com / DATABASE
? Reconnect = true Ciò di cui hai bisogno è questa parte: us-cdbr-east.cleardb.com
Esegui 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 il proprio URL e ottenere tutto ciò che si desidera da lì. È così che ho configurato il workbench mysql.
Incolla questo comando nel terminale
heroku config | grep CLEARDB_DATABASE_URL
Dopo questo otterrai l'URL del database. ad esempio, questo è l'URL del database cleardb.
'mysql://b0600ea495asds:9cd2b111@us-cdbr-hirone-west-
06.cleardb.net/heroku_4a1dc3673c4114d?reconnect=true'
Quindi queste saranno le credenziali del tuo database. (Estratto da sopra l'URL)
NOME UTENTE = b0600ea495asds
PASSWORD = 9cd2b111
HOST = us-cdbr-hirone-west- 06.cleardb.net
NOME DATABASE = heroku_4a1dc3673c4114d
Ho fatto un video che spiega come connettersi a MySql usando NodeJS su un server Heroku, dai un'occhiata:
http://www.youtube.com/watch?v=2OGHdii_42s
Questo è il codice nel caso tu voglia vedere:
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);
});
Saluti! MAGIA: http://makegif.com/g9yv.gif
Se stai usando il workbench mySQL, segui questo schema. Vai su Heroku> Impostazioni delle tue applicazioni> Config Vars e mostra l'URL lungo. Tale URL include il nome utente, la password, l'URL del database e lo schema predefinito. Incolla tutte le informazioni come segue e sarai in grado di connetterti con successo al database. Non c'era una vera spiegazione su come connettersi a ClearDB utilizzando il workbench mySQL su questo thread, quindi si spera che questo aiuti qualcuno che stava lottando.
Incolla questo all'interno del terminale:
heroku config | grep CLEARDB_DATABASE_URL
Puoi usare questa riga per connetterti al tuo database MySQL nel tuo terminale.
$ (ruby -e 'require "uri"; uri = URI.parse (ARGV [0]); inserisce "mysql -u # {uri.user} -p # {uri.password} -h # {uri.host} -D # {uri.path.gsub ("/", "")} "'` heroku config: get CLEARDB_DATABASE_URL`)
Vai alla tua app su heroku e fai clic sulla scheda "Impostazioni". Quindi fare clic sul pulsante sulla seconda opzione che dice "rivela le variabili di configurazione".
Dovresti trovare, elencato sotto la variabile CLEARDB_DATABASE_URL, qualcosa del genere ...
mysql: // [nome utente]: [password] @ [host] / [nome database]? reconnect = true
Quindi la [porzione host] è il tuo host. La parte [nome database] è il nome del database, ovviamente.
Hai ancora bisogno del tuo nome utente e password. Torna alla scheda "panoramica" in heroku. Vai al componente aggiuntivo ClearDB nella sezione dei componenti aggiuntivi installati. Fare clic sul database a cui si desidera accedere (probabilmente solo 1 opzione lì). Fare clic sulla scheda "informazioni di sistema". Dovresti vedere il tuo nome utente e password.
dovrebbe essere tutto ciò di cui hai bisogno per accedere al tuo database. Uso sequel pro. Ho appena inserito le informazioni (nome, host, nella scheda "standard" ed ero pronto per iniziare.
Tutti i dettagli saranno nell'URL del database che può essere trovato in heroku config
. Supponendo che tu possa connetterti direttamente a ClearDB (non ho mai provato), questi dovrebbero essere tutto ciò di cui hai bisogno ...
Tutto questo ha funzionato perfettamente per me. Utilizzando heroku config | grep, come descritto sopra e quindi semplicemente aggiungendo un'altra voce nel mio config.inc.php per l'utilizzo da parte di phpMyAdmin e posso accedere al mio database cleardb da remoto. Mi evita di dover avere SQL localmente e usare postgres con Heroku.
dovrebbe considerare di ottenere le credenziali di vars nelle configurazioni heroku (Config Vars):
CLEARDB_DATABASE_URL
Sì, puoi connetterti direttamente a ClearDB, in realtà utilizzo Workbench per connettermi. Quindi puoi usare lo stesso DB per il tuo localhost e per heroku.