Ответы:
На веб-сайте heroku перейдите в Мои приложения и выберите приложение, в котором вы установили ClearDB.
На верхнем углу нажмите на Addons , а затем выберите ClearDB базы данных MySQL . Оказавшись там, щелкните свою базу данных и выберите вкладку « Информация о конечной точке». Там вы видите свой логин / пароль. URL-адрес базы данных можно получить, запустив его
heroku config --app <YOUR-APP-NAME>
в командной строке.
В моем случае это было что-то вроде: mysql: // user: pass @ us-cdbr-east.cleardb.com / DATABASE
? Reconnect = true Вам нужна эта часть: us-cdbr-east.cleardb.com
Вы запускаете конфигурацию heroku, чтобы получить, CLEARDB_DATABASE_URL
и он должен быть примерно в таком формате:
CLEARDB_DATABASE_URL => mysql://[username]:[password]@[host]/[database name]?reconnect=true
Так что в основном вы просто смотрите на свой собственный URL и получаете оттуда все, что хотите. Вот как я настроил рабочую среду mysql.
Вставьте эту команду в терминал
heroku config | grep CLEARDB_DATABASE_URL
После этого вы получите URL базы данных. например, это URL вашей базы данных cleardb.
'mysql://b0600ea495asds:9cd2b111@us-cdbr-hirone-west-
06.cleardb.net/heroku_4a1dc3673c4114d?reconnect=true'
Тогда это будут учетные данные вашей базы данных. (Извлечено из вышеуказанного URL)
ИМЯ ПОЛЬЗОВАТЕЛЯ = b0600ea495asds
ПАРОЛЬ = 9cd2b111
HOST = us-cdbr-hirone-west- 06.cleardb.net
ИМЯ БАЗЫ ДАННЫХ = heroku_4a1dc3673c4114d
Я сделал видео, объясняющее, как подключиться к MySql с помощью NodeJS на сервере Heroku, посмотрите:
http://www.youtube.com/watch?v=2OGHdii_42s
Это код на случай, если вы хотите увидеть:
https://github.com/mescalito/MySql-NodeJS-Heroku
Вот часть кода:
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);
});
Ура! МАГИЯ: http://makegif.com/g9yv.gif
Если вы используете рабочую среду mySQL, следуйте этой схеме. Перейдите в Heroku> Настройки ваших приложений> Config Vars и покажите длинный URL. Этот URL-адрес включает ваше имя пользователя, пароль, URL-адрес базы данных и схему по умолчанию. Вставьте всю информацию, как показано ниже, и вы сможете успешно подключиться к базе данных. В этом потоке не было реального объяснения того, как подключиться к ClearDB с помощью рабочей среды mySQL, так что, надеюсь, это поможет кому-то, кто боролся.
Вставьте это внутри терминала:
heroku config | grep CLEARDB_DATABASE_URL
Вы можете использовать этот однострочный интерфейс для подключения к базе данных MySQL в вашем терминале.
$ (ruby -e 'require "uri"; uri = URI.parse (ARGV [0]); помещает "mysql -u # {uri.user} -p # {uri.password} -h # {uri.host}" -D # {uri.path.gsub ("/", "")} "'` конфигурация heroku: получить CLEARDB_DATABASE_URL`)
Зайдите в свое приложение на heroku и перейдите на вкладку «Настройки». Затем нажмите кнопку второго варианта с надписью «показать конфигурационные переменные».
Вы должны найти в переменной CLEARDB_DATABASE_URL что-то вроде этого ...
mysql: // [имя пользователя]: [пароль] @ [хост] / [имя базы данных]? reconnect = true
Итак, [часть хозяина] - это ваш хозяин. Часть [имя базы данных] - это, конечно, ваше имя базы данных.
Вам по-прежнему нужны ваше имя пользователя и пароль. Вернитесь на вкладку «Обзор» в heroku. Перейдите к надстройке ClearDB в разделе установленных надстроек. Щелкните базу данных, к которой вы хотите получить доступ (возможно, только 1 вариант). Щелкните вкладку «системная информация». Вы должны увидеть свое имя пользователя и пароль.
это должно быть все, что вам нужно для доступа к базе данных. Пользуюсь сиквелом про. Я просто вставил эту информацию (имя, хост) во вкладку «Стандарт», и все готово.
Все подробности будут в URL-адресе базы данных, который можно найти в heroku config
. Предполагая, что вы можете подключиться к ClearDB напрямую (я никогда не пробовал), это должно быть все, что вам нужно ...
Все это у меня отлично сработало. Использование конфигурации heroku | grep, как описано выше, а затем просто добавив еще одну запись в мой config.inc.php для использования phpMyAdmin, и я смогу получить удаленный доступ к моей базе данных cleardb. Это избавляет меня от необходимости иметь локальный SQL и использовать postgres с Heroku.
следует рассмотреть возможность получения учетных данных варов в конфигурациях heroku (Config Vars):
CLEARDB_DATABASE_URL
Да, вы можете подключиться к ClearDB напрямую, на самом деле я использую Workbench для подключения. Затем вы можете использовать одну и ту же БД для своего локального хоста и для героку.