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


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

10 76

10 ответов:

на веб-сайте heroku перейдите в Мои приложения и выберите приложение, на котором вы установили ClearDB.

в верхнем углу нажмите на кнопку аддоны и выберите ClearDB MySQL Database. Оказавшись там, нажмите на свою базу данных и выберите 'Информация О Конечной Точке' tab. Там вы видите свое имя пользователя / пароль. URL-адрес базы данных можно получить, запустив heroku config --app <YOUR-APP-NAME> в командной строке.

в моем случае, это было что-то вроде: mysql: / / user: pass@us-cdbr-east.cleardb.com/DATABASE?reconnect=true Что вам нужно это часть:us-cdbr-east.cleardb.com

вы запускаете Heroku config, чтобы получить CLEARDB_DATABASE_URL и это должно быть что-то такого формата:

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

Так что в основном вы просто смотрите на свой собственный url и получить все, что вы хотите оттуда. Вот как я настроил MySQL workbench.

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

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

  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

вставьте это внутри терминала:

heroku config | grep CLEARDB_DATABASE_URL

вы можете использовать этот однострочный для подключения к базе данных MySQL в вашем терминале.

$(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`)

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

перейдите в приложение на heroku и перейдите на вкладку "Настройки". Затем нажмите кнопку на втором варианте, который говорит "показать config vars".

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

mysql:/ / [username]: [password]@[host] / [имя базы данных]?переподключение=истина

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

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

Это должно быть все, что вам нужно для доступа к базе данных. Я использую sequel pro. Я просто подключил эту информацию (имя, Хост, на вкладке "стандарт", и мне было хорошо идти.

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

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