Antworten:
Gehen Sie auf der Heroku-Website zu Meine Apps und wählen Sie die App aus, auf der Sie ClearDB installiert haben.
Klicken Sie in der oberen Ecke auf Addons und wählen Sie dann ClearDB MySQL Database aus . Klicken Sie dort auf Ihre Datenbank und wählen Sie die Registerkarte " Endpunktinformationen ". Dort sehen Sie Ihren Benutzernamen / Passwort. Die URL zur Datenbank kann durch Ausführen abgerufen werden
heroku config --app <YOUR-APP-NAME>
in der Befehlszeile abgerufen werden.
In meinem Fall war es ungefähr so: mysql: // user: pass @ us-cdbr-east.cleardb.com / DATABASE
? Reconnect = true Was Sie brauchen, ist dieser Teil: us-cdbr-east.cleardb.com
Sie führen heroku config aus, um das zu erhalten, CLEARDB_DATABASE_URL
und es sollte etwas von diesem Format sein:
CLEARDB_DATABASE_URL => mysql://[username]:[password]@[host]/[database name]?reconnect=true
Im Grunde schauen Sie sich einfach Ihre eigene URL an und erhalten von dort alles, was Sie wollen. So habe ich die MySQL-Workbench eingerichtet.
Fügen Sie diesen Befehl in das Terminal ein
heroku config | grep CLEARDB_DATABASE_URL
Danach erhalten Sie die Datenbank-URL. Dies ist beispielsweise Ihre Cleardb-Datenbank-URL.
'mysql://b0600ea495asds:9cd2b111@us-cdbr-hirone-west-
06.cleardb.net/heroku_4a1dc3673c4114d?reconnect=true'
Dann sind dies Ihre Datenbankanmeldeinformationen. (Aus der obigen URL extrahiert)
USER NAME = b0600ea495asds
PASSWORT = 9cd2b111
HOST = us-cdbr-hirone-west- 06.cleardb.net
DATENBANKNAME = heroku_4a1dc3673c4114d
Ich habe ein Video gemacht, in dem erklärt wird, wie man mit NodeJS auf einem Heroku-Server eine Verbindung zu MySql herstellt.
http://www.youtube.com/watch?v=2OGHdii_42s
Dies ist der Code, falls Sie Folgendes sehen möchten:
https://github.com/mescalito/MySql-NodeJS-Heroku
Hier ist ein Teil des Codes:
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);
});
Prost! MAGIE: http://makegif.com/g9yv.gif
Wenn Sie die mySQL-Workbench verwenden, folgen Sie diesem Schema. Gehen Sie zu Heroku> Ihre Anwendungseinstellungen> Config Vars und zeigen Sie die lange URL an. Diese URL enthält Ihren Benutzernamen, Ihr Kennwort, die URL der Datenbank und das Standardschema. Fügen Sie alle Informationen wie folgt ein, und Sie können erfolgreich eine Verbindung zur Datenbank herstellen. Es gab keine wirkliche Erklärung, wie man mit mySQL Workbench in diesem Thread eine Verbindung zu ClearDB herstellt. Hoffentlich hilft dies jemandem, der Probleme hatte.
Fügen Sie dies in das Terminal ein:
heroku config | grep CLEARDB_DATABASE_URL
Mit diesem Einzeiler können Sie eine Verbindung zu Ihrer MySQL-Datenbank in Ihrem Terminal herstellen.
$ (ruby -e 'erfordert "uri"; uri = URI.parse (ARGV [0]); setzt "mysql -u # {uri.user} -p # {uri.password} -h # {uri.host} -D # {uri.path.gsub ("/", "")} "'` heroku config: get CLEARDB_DATABASE_URL`)
Gehen Sie zu Ihrer App auf Heroku und klicken Sie auf die Registerkarte "Einstellungen". Klicken Sie dann auf die Schaltfläche der zweiten Option mit der Aufschrift "Konfigurationsvariablen anzeigen".
Sie sollten unter der Variablen CLEARDB_DATABASE_URL etwas Ähnliches finden ...
mysql: // [Benutzername]: [Passwort] @ [Host] / [Datenbankname]? reconnect = true
Der [Host-Teil] ist also Ihr Host. Der Teil [Datenbankname] ist natürlich Ihr Datenbankname.
Sie benötigen weiterhin Ihren Benutzernamen und Ihr Passwort. Gehen Sie zurück zur Registerkarte "Übersicht" in Heroku. Wechseln Sie zum Abschnitt ClearDB-Add-On in Ihrem Abschnitt zu installierten Add-Ons. Klicken Sie auf die Datenbank, auf die Sie zugreifen möchten (wahrscheinlich nur 1 Option dort). Klicken Sie auf die Registerkarte "Systeminformationen". Sie sollten Ihren Benutzernamen und Ihr Passwort sehen.
Das sollte alles sein, was Sie brauchen, um auf Ihre Datenbank zuzugreifen. Ich benutze Fortsetzung Pro. Ich habe diese Informationen (Name, Host) einfach in die Registerkarte "Standard" eingefügt und konnte loslegen.
Alle Details finden Sie in der Datenbank-URL, die Sie unter finden heroku config
. Angenommen, Sie können eine direkte Verbindung zu ClearDB herstellen (ich habe es noch nie versucht), sollten dies alles sein, was Sie brauchen ...
All dies hat perfekt für mich funktioniert. Heroku config | verwenden grep, wie oben beschrieben, und füge dann einfach einen weiteren Eintrag in meine config.inc.php ein, der von phpMyAdmin verwendet wird, und ich kann remote auf meine cleardb-Datenbank zugreifen. Es erspart mir, SQL lokal zu haben und Postgres mit Heroku zu verwenden.
sollten in Betracht ziehen, die Anmeldeinformationen von vars in Heroku-Konfigurationen (Config Vars) abzurufen:
CLEARDB_DATABASE_URL
Ja, Sie können eine direkte Verbindung zu ClearDB herstellen. Tatsächlich verwende ich Workbench, um eine Verbindung herzustellen. Dann können Sie dieselbe Datenbank für Ihren lokalen Host und für Heroku verwenden.