MySQL Query Browserなどを使用して、herokuでClearDB MySQLデータベースにリモート接続する方法を教えてください。 URL、ポート、ログイン、パスワードはどこで入手できますか?
Heroku Webサイトで、[マイアプリ]に移動し、ClearDBをインストールしたアプリを選択します。
上隅でAddonsをクリックしてからClearDB MySQL Databaseを選択します。そこになったら、データベースをクリックして、「エンドポイント情報」タブを選択します。そこにあなたのユーザー名/パスワードが表示されます。データベースへのURLは、heroku config --app <YOUR-APP-NAME>
コマンドラインで。
私の場合、次のようなものでした:mysql:// user:pass @ s-cdbr-east.cleardb.com/DATABASE
?reconnect = true必要なのはこの部分です:s-cdbr-east.cleardb.com
Heroku configを実行して、CLEARDB_DATABASE_URL
そして、それはこの形式のものでなければなりません:
CLEARDB_DATABASE_URL => mysql://[username]:[password]@[Host]/[database name]?reconnect=true
基本的には、自分のURLを見て、そこから必要なものをすべて取得するだけです。これが、mysqlワークベンチのセットアップ方法です。
このコマンドをターミナルに貼り付けます
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
HerokuサーバーでNodeJSを使用してMySqlに接続する方法を説明したビデオを見て、見てみましょう。
http://www.youtube.com/watch?v=2OGHdii_42s
これはあなたが見たい場合のコードです:
https://github.com/mescalito/MySql-NodeJS-Herok
コードの一部は次のとおりです。
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
このワンライナーを使用して、ターミナルの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`)
Herokuでアプリに移動し、[設定]タブをクリックします。次に、「構成変数の表示」という2番目のオプションのボタンをクリックします。
CLEARDB_DATABASE_URL変数の下にリストされている、次のようなものが見つかります...
mysql:// [ユーザー名]:[パスワード] @ [ホスト]/[データベース名]?reconnect = true
したがって、[ホスト部分]はホストです。 [データベース名]の部分は、もちろんデータベース名です。
それでもユーザー名とパスワードが必要です。 herokuの[概要]タブに戻ります。インストールされているアドオンセクションのClearDBアドオンに移動します。アクセスするデータベースをクリックします(おそらく1つのオプションのみがあります)。 「システム情報」タブをクリックします。ユーザー名とパスワードが表示されます。
データベースにアクセスするために必要なのはこれだけです。私はプロの続編を使用します。その情報(名前、ホスト)を「標準」タブにプラグインしただけでいいのです。
これらはすべて私にとって完璧に機能しました。 heroku configを使用する|上記のようにgrepを実行し、phpMyAdminで使用するために別のエントリをconfig.inc.phpに追加するだけで、cleardbデータベースにリモートでアクセスできます。ローカルでSQLを使用し、Herokuでpostgresを使用する必要がなくなります。
heroku構成(構成変数)で変数の資格情報を取得することを検討する必要があります。
CLEARDB_DATABASE_URL
すべての詳細は、heroku config
にあるデータベースURLにあります。 ClearDBに直接接続できると仮定すると(試したことはありません)、必要なものはこれだけです...