clearDB herokuデータベースへのリモート接続


103

MySQLクエリブラウザーなどを使用して、heroku上のClearDB MySQLデータベースへのリモート接続を実行するにはどうすればよいですか?URL、ポート、ログイン、パスワードはどこで入手できますか?

回答:


185

herokuのWebサイトで、[マイアプリ]に移動し、ClearDBをインストールしたアプリを選択します。

上隅にある[ アドオン ]をクリックし、[ 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ダッシュボード/ Webサイトで直接確認することもできます。アプリに移動して、[設定]をクリックし、[構成変数を表示]をクリックします。
Eirik H

1
私の場合、少なくとも、us-cdbr-east.cleardb.comに相当する部分はデータベースの名前ではなく、ホストの名前でした。ただし、データベース名はClearDBアドオンのダッシュボードで見つかりました。
Roseaboveit 2015年

3
ローカルデータベースファイルをHerokuによって作成されたデータベースにエクスポートする必要があります。この動画をフォローするだけで、youtube.com
Kartik Chauhanが

86

あなたは取得するためにheroku configを実行しCLEARDB_DATABASE_URL、それはこのフォーマットの何かであるはずです:

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

つまり、基本的には自分のURLを見て、そこから必要なすべてを取得するだけです。これがmysqlワークベンチのセットアップ方法です。


3
@Andreiに感謝しますが、データベースのポートはどうですか?
BKSpurgeon 2016年

2
@BKSpurgeon。私はそれをphpMyAdminとデフォルトのポートで動作させるようにしました(stackoverflow.com/a/22092539/4900327を参照)
Abhishek Divekar

どうもありがとうございました。MySQLファイルをHerokuに正常にデプロイするのに役立ちます
Travis Le

@AbhishekDivekarあなたのコメントは私を大いに助けてくれました。私はxampのcongig.inc.phpファイルのユーザー名といくつかのものを変更しただけで、PHPMyAdminで動作しました。
Ahmed Adewale

24

このコマンドをターミナルに貼り付けます

  heroku config | grep CLEARDB_DATABASE_URL

この後、データベースURLを取得します。たとえば、これはcleardbデータベースのURLです。

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

これはあなたのデータベース資格情報になります。(上記URLより抜粋)

ユーザー名= b0600ea495asds

パスワード= 9cd2b111

ホスト= us-cdbr-hirone-west- 06.cleardb.net

データベース名= heroku_4a1dc3673c4114d


13

HerokuサーバーでNodeJSを使用してMySqlに接続する方法を説明したビデオを見て、見てみましょう:

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 2016

8

mySQLワークベンチを使用している場合は、このスキーマに従ってください。Heroku>アプリケーション設定>変数の構成に移動し、長いURLを表示します。そのURLには、ユーザー名、パスワード、データベースのURL、およびデフォルトのスキーマが含まれます。以下のようにすべての情報を貼り付けると、データベースに正常に接続できます。このスレッドでmySQLワークベンチを使用してClearDBに接続する方法についての実際の説明はなかったので、うまくいけば、これが苦労していた人を助けるでしょう。

ここに画像の説明を入力してください


私はこの解決策を試しましたが、これは機能していません。しかし、このソリューションはSequal Proで正常に機能しています。
nitin.agam

2

これを内部ターミナルに貼り付けます:

heroku config | grep CLEARDB_DATABASE_URL

1

このワンライナーを使用して、ターミナルで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`)

1

herokuのアプリに移動し、[設定]タブをクリックします。次に、「構成変数を表示」という2番目のオプションのボタンをクリックします。

CLEARDB_DATABASE_URL変数の下にリストされている、次のようなものが見つかります...

mysql:// [ユーザー名]:[パスワード] @ [ホスト] / [データベース名]?reconnect = true

したがって、[ホスト部分]はホストです。[データベース名]の部分はもちろんDB名です。

それでも、ユーザー名とパスワードが必要です。herokuの[概要]タブに戻ります。インストールされているアドオンセクションのClearDBアドオンに移動します。アクセスするデータベースをクリックします(おそらく1つのオプションのみです)。「システム情報」タブをクリックします。ユーザー名とパスワードが表示されます。

データベースにアクセスするために必要なのはこれだけです。続編プロを使っています。その情報(名前、ホスト)を「標準」タブに差し込んだところ、問題はありませんでした。


0

詳細はすべて、にあるデータベースURLにありますheroku config。ClearDBに直接接続できると(私は試したことはありません)、これらが必要なすべてです...


0

これらはすべて私にとって完璧に機能しました。heroku configの使用| 上記のようにgrepを実行し、phpMyAdminで使用するためにconfig.inc.phpに別のエントリを追加するだけで、リモートからcleardbデータベースにアクセスできます。ローカルにSQLを用意し、Herokuでpostgresを使用する必要がなくなります。



-1

はい、ClearDBに直接接続できます。実際にはWorkbenchを使用して接続しています。その後、ローカルホストとherokuに同じDBを使用できます。


4
これは知っておくと役に立ちますが、OPが接続情報を見つけるのにどのように役立ちますか?
ブラッドコッホ

1
あなたは正しいですが、Neil Middletonが「ClearDBに直接接続できると仮定して」と言ったので、情報を追加しました。主な質問に役立たなかった何かに答えたことをお詫び申し上げます。
Alisson Reinaldo Silva 2013

心配ない。このようなものは本当に良いコメント資料ですが、それにはまだまだ数人の担当者が必要なようです。
Brad Koch 2013年

herokuサービスへのgettigの問題はありません。しかし、サービスからデータベースへの問題はそこにあります。わーい。gettig "dial tcp 127.0.0.1:3306:getsockopt:connection refused"
filthy_wizard
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.