Conexão remota ao banco de dados clearDB heroku

103

Como posso realizar uma conexão remota ao banco de dados ClearDB MySQL no heroku usando, por exemplo, o MySQL Query Browser. Onde obter url, porta, login e senha?

romano
fonte

Respostas:

185

No site do heroku, acesse Meus aplicativos e selecione o aplicativo no qual você instalou ClearDB.

No canto superior, clique em Complementos e selecione ClearDB MySQL Database . Uma vez lá, clique em seu banco de dados e escolha a guia ' Endpoint Information '. Lá você vê seu nome de usuário / senha. A URL para o banco de dados pode ser adquirida executando heroku config --app <YOUR-APP-NAME>na linha de comando.

No meu caso, era algo como: mysql: // user: pass @ us-cdbr-east.cleardb.com / DATABASE? Reconnect = true O que você precisa é esta parte: us-cdbr-east.cleardb.com

Abbas
fonte
17
Você também pode ver isso diretamente no painel / site do Heroku, basta ir ao seu aplicativo, clicar em "Configurações" e "Revelar vars de configuração".
Eirik H
1
Pelo menos no meu caso, a parte equivalente us-cdbr-east.cleardb.com não era o nome do banco de dados, mas sim o nome do host. O nome do banco de dados, entretanto, foi encontrado no painel do complemento ClearDB.
Roseaboveit
3
você precisará exportar seu arquivo de banco de dados local para o banco de dados criado pelo Heroku. Basta seguir este vídeo e você estará pronto
Kartik Chauhan
86

Você executa a configuração do heroku para obter o CLEARDB_DATABASE_URLe deve ser algo neste formato:

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

Basicamente, basta olhar para o seu próprio url e obter tudo o que deseja a partir daí. É assim que eu configurei o mysql workbench.

Andrei
fonte
3
Obrigado @Andrei mas e a porta para o banco de dados?
BKSpurgeon
2
@BKSpurgeon. Consegui funcionar com phpMyAdmin com a porta padrão (consulte stackoverflow.com/a/22092539/4900327 )
Abhishek Divekar
Muito obrigado, Sr. Isso me ajuda a implantar meu arquivo mysql no heroku com sucesso
Travis Le
@AbhishekDivekar seu comentário me ajudou muito. Acabei de alterar o nome de usuário e algumas coisas em um arquivo congig.inc.php no meu xamp e funcionou no PHPMyAdmin.
Ahmed Adewale
24

Cole este comando no terminal

  heroku config | grep CLEARDB_DATABASE_URL

Depois disso, você obterá o URL do banco de dados. por exemplo, este é o URL do seu banco de dados cleardb.

'mysql://b0600ea495asds:9cd2b111@us-cdbr-hirone-west-
 06.cleardb.net/heroku_4a1dc3673c4114d?reconnect=true'

Em seguida, serão suas credenciais de banco de dados. (Extraído do URL acima)

NOME DE USUÁRIO = b0600ea495asds

SENHA = 9cd2b111

HOST = us-cdbr-hirone-west- 06.cleardb.net

NOME DA BASE DE DADOS = heroku_4a1dc3673c4114d

Developine
fonte
13

Fiz um vídeo explicando como se conectar ao MySql usando NodeJS em um servidor Heroku, dê uma olhada:

http://www.youtube.com/watch?v=2OGHdii_42s

Este é o código, caso você queira ver:

https://github.com/mescalito/MySql-NodeJS-Heroku

Aqui está parte do código:

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);
});

Felicidades! MAGIC: http://makegif.com/g9yv.gif

lito
fonte
4
Não sei por que isso foi tão fortemente rejeitado .. seu createConnection esclareceu as coisas para mim. Obrigado :)
Nico
3
A razão para votos negativos também deve ser fornecida. Essa é a resposta que me ajudou. Obrigado, mano!
Anoop.PA de
8

Se você estiver usando o ambiente de trabalho mySQL, siga este esquema. Vá para Heroku> Suas configurações de aplicativos> Config Vars e mostre o URL longo. Esse url inclui seu nome de usuário, senha, o URL do banco de dados e o esquema padrão. Cole todas as informações conforme a seguir, e você poderá se conectar com êxito ao banco de dados. Não houve nenhuma explicação real sobre como se conectar ao ClearDB usando mySQL workbench neste thread, então espero que isso ajude alguém que estava tendo dificuldades.

insira a descrição da imagem aqui

Jordan Schuetz
fonte
Tentei essa solução, mas não está funcionando. Mas esta solução está funcionando bem no Sequal Pro.
nitin.agam
2

Cole isto dentro do terminal:

heroku config | grep CLEARDB_DATABASE_URL
user3805474
fonte
1

Você pode usar este one-liner para se conectar ao banco de dados MySQL em seu terminal.

$ (ruby -e 'require "uri"; uri = URI.parse (ARGV [0]); puts "mysql -u # {uri.user} -p # {uri.password} -h # {uri.host} -D # {uri.path.gsub ("/", "")} "'` config heroku: get CLEARDB_DATABASE_URL`)
Sébastien Saunier
fonte
1

Vá para o seu aplicativo no heroku e clique na guia 'configurações'. Em seguida, clique no botão na segunda opção que diz 'revelar vars de configuração'.

Você deve encontrar, listado na variável CLEARDB_DATABASE_URL, algo assim ...

mysql: // [nome de usuário]: [senha] @ [host] / [nome do banco de dados]? reconectar = true

Portanto, a [parte do host] é o seu host. A parte [nome do banco de dados] é o nome do banco de dados, é claro.

Você ainda precisa do seu nome de usuário e senha. Volte para a guia 'visão geral' no heroku. Vá para o complemento ClearDB na seção de complementos instalados. Clique no banco de dados que deseja acessar (provavelmente apenas 1 opção lá). Clique na guia 'informações do sistema'. Você deve ver seu nome de usuário e senha.

isso deve ser tudo que você precisa para acessar seu banco de dados. Eu uso o sequel pro. Acabei de inserir essa informação (nome, host, na guia 'padrão' e estava pronto para prosseguir.

user2364424
fonte
0

Todos os detalhes estarão no URL do banco de dados, que pode ser encontrado em heroku config. Supondo que você possa se conectar ao ClearDB diretamente (nunca tentei), isso deve ser tudo que você precisa ...

Neil Middleton
fonte
0

Tudo isso funcionou perfeitamente para mim. Usando a configuração do heroku | grep, conforme descrito acima e, em seguida, simplesmente adicionando outra entrada em meu config.inc.php para uso por phpMyAdmin e posso acessar meu banco de dados cleardb remotamente. Isso me poupa de ter que ter SQL localmente e usar postgres com Heroku.

GiantCoder
fonte
0

deve considerar obter as credenciais de vars nas configurações do heroku (Config Vars):

CLEARDB_DATABASE_URL

Diego Santa Cruz Mendezú
fonte
-1

Sim, você pode se conectar ao ClearDB diretamente, na verdade eu uso o Workbench para me conectar. Então você pode usar o mesmo banco de dados para seu localhost e para heroku.

Alisson Reinaldo Silva
fonte
4
É bom saber, mas como isso ajuda o OP a encontrar suas informações de conexão?
Brad Koch
1
Você está certo, mas acabei de adicionar uma informação, porque Neil Middleton disse "Supondo que você possa se conectar ao ClearDB diretamente", então eu apenas disse Sim, ele pode. Peço desculpas por responder algo que não ajudou a pergunta principal.
Alisson Reinaldo Silva
Não se preocupe. Coisas como este são realmente bons comentários, mas parece que você ainda precisa de mais alguns representantes para isso.
Brad Koch
Eu tenho 0 problemas para obter o serviço heroku. mas do serviço para o banco de dados é onde reside o problema. boooo. gettig "disque tcp 127.0.0.1:3306: getsockopt: conexão recusada"
filthy_wizard