Удаленное подключение к базе данных clearDB heroku


103

Как я могу выполнить удаленное подключение к базе данных ClearDB MySQL на heroku, используя, например, MySQL Query Browser. Где взять url, порт, логин и пароль?

Ответы:


185

На веб-сайте 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


17
Вы также можете увидеть это прямо на панели управления / веб-сайте Heroku, просто зайдите в свое приложение, нажмите «Настройки» и «Показать конфигурационные переменные».
Eirik H

1
По крайней мере, в моем случае эквивалентная часть us-cdbr-east.cleardb.com была не именем базы данных, а скорее именем хоста. Однако имя базы данных было найдено на панели управления надстройки ClearDB.
Roseaboveit

3
вам нужно будет экспортировать файл локальной базы данных в базу данных, созданную Heroku. Просто
Картик Чаухан,

86

Вы запускаете конфигурацию heroku, чтобы получить, CLEARDB_DATABASE_URLи он должен быть примерно в таком формате:

CLEARDB_DATABASE_URL => mysql://[username]:[password]@[host]/[database name]?reconnect=true

Так что в основном вы просто смотрите на свой собственный URL и получаете оттуда все, что хотите. Вот как я настроил рабочую среду mysql.


3
Спасибо @Andrei, а как насчет порта для базы данных?
BKSpurgeon

2
@BKSpurgeon. Я получил его на работу с PhpMyAdmin с портом по умолчанию (См stackoverflow.com/a/22092539/4900327 )
Абхишек Divekar

Большое вам спасибо, мистер Он помогает мне успешно развернуть мой файл mysql на heroku
Трэвис Ле

@AbhishekDivekar ваш комментарий мне очень помог. Я просто изменил имя пользователя и кое-что в файле congig.inc.php в моем xamp, и он работал на PHPMyAdmin.
Ахмед Адевале

24

Вставьте эту команду в терминал

  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


13

Я сделал видео, объясняющее, как подключиться к 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


4
Не знаю, почему это так сильно отвергается ... ваше createConnection прояснило мне ситуацию. Спасибо :)
Нико

3
Также должна быть указана причина голосования "против". Это ответ, который мне помог. Спасибо брат!
Anoop.PA

8

Если вы используете рабочую среду mySQL, следуйте этой схеме. Перейдите в Heroku> Настройки ваших приложений> Config Vars и покажите длинный URL. Этот URL-адрес включает ваше имя пользователя, пароль, URL-адрес базы данных и схему по умолчанию. Вставьте всю информацию, как показано ниже, и вы сможете успешно подключиться к базе данных. В этом потоке не было реального объяснения того, как подключиться к ClearDB с помощью рабочей среды mySQL, так что, надеюсь, это поможет кому-то, кто боролся.

введите описание изображения здесь


Я пробовал это решение, но оно не работает. Но это решение отлично работает в Sequal Pro.
nitin.agam 04


1

Вы можете использовать этот однострочный интерфейс для подключения к базе данных 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`)

1

Зайдите в свое приложение на heroku и перейдите на вкладку «Настройки». Затем нажмите кнопку второго варианта с надписью «показать конфигурационные переменные».

Вы должны найти в переменной CLEARDB_DATABASE_URL что-то вроде этого ...

mysql: // [имя пользователя]: [пароль] @ [хост] / [имя базы данных]? reconnect = true

Итак, [часть хозяина] - это ваш хозяин. Часть [имя базы данных] - это, конечно, ваше имя базы данных.

Вам по-прежнему нужны ваше имя пользователя и пароль. Вернитесь на вкладку «Обзор» в heroku. Перейдите к надстройке ClearDB в разделе установленных надстроек. Щелкните базу данных, к которой вы хотите получить доступ (возможно, только 1 вариант). Щелкните вкладку «системная информация». Вы должны увидеть свое имя пользователя и пароль.

это должно быть все, что вам нужно для доступа к базе данных. Пользуюсь сиквелом про. Я просто вставил эту информацию (имя, хост) во вкладку «Стандарт», и все готово.


0

Все подробности будут в URL-адресе базы данных, который можно найти в heroku config. Предполагая, что вы можете подключиться к ClearDB напрямую (я никогда не пробовал), это должно быть все, что вам нужно ...


0

Все это у меня отлично сработало. Использование конфигурации heroku | grep, как описано выше, а затем просто добавив еще одну запись в мой config.inc.php для использования phpMyAdmin, и я смогу получить удаленный доступ к моей базе данных cleardb. Это избавляет меня от необходимости иметь локальный SQL и использовать postgres с Heroku.



-1

Да, вы можете подключиться к ClearDB напрямую, на самом деле я использую Workbench для подключения. Затем вы можете использовать одну и ту же БД для своего локального хоста и для героку.


4
Это полезно знать, но как это помогает OP найти информацию о подключении?
Брэд Кох

1
Вы правы, но я просто добавил информацию, потому что Нил Миддлтон сказал: «Предполагая, что вы можете подключиться к ClearDB напрямую», тогда я просто сказал «Да, он может». Прошу прощения за то, что ответил на то, что не помогло на главный вопрос.
Алиссон Рейнальдо Силва

Не беспокойся. Подобные вещи - действительно хороший материал для комментариев, но похоже, что для этого вам нужно еще немного репутации.
Брэд Кох

У меня 0 проблем с доступом к сервису heroku. но проблема в том, от службы к базе данных. бууу. gettig «набрать tcp 127.0.0.1:3306: getsockopt: соединение отклонено»
filthy_wizard
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.