远程连接到clearDB heroku数据库
在heroku网站上,转到我的应用程序并选择你安装了ClearDB的应用程序。
在上角点击插件然后选择ClearDB MySQL数据库。 一旦出现,请单击您的数据库并选择'端点信息'选项卡。你看到你的用户名/密码。数据库的URL可以通过在命令行中运行 heroku config --app <YOUR-APP-NAME>
来获取。
对我来说,这是类似的:mysql://用户名:@传us-cdbr-east.cleardb.com/DATABASE
重新连接=真 你需要的是这个部分:美国CDBR -east.cleardb.com
所有的细节都将在数据库的URL中,可以在heroku config
找到。假设你可以直接连接到ClearDB(我从来没有尝试过),这些应该是你所需要的...
您运行的Heroku的配置,以获得CLEARDB_DATABASE_URL
,它应该是这种形式的东西:
CLEARDB_DATABASE_URL => mysql://[username]:[password]@[host]/[database name]?reconnect=true
所以基本上你只要看看自己的URL,并得到所有你想从那里。这就是我设置mysql工作台的方式。
谢谢@Andrei,但数据库的端口呢? – BKSpurgeon 2016-11-16 06:43:32
@BKSpurgeon。我得到它与默认端口的phpMyAdmin(见http://*.com/a/22092539/4900327) – 2017-02-16 16:47:32
这是更简单:) – 2017-08-16 06:40:14
是的,你可以直接连接到ClearDB,实际上我使用Workbench来连接。然后你可以为你的本地主机和heroku使用相同的数据库。
这很好知道,但如何帮助OP找到他们的连接信息? – 2013-03-29 13:46:28
你是对的,但我只是添加了一个信息,因为Neil Middleton说“假设你可以直接连接到ClearDB”,那么我只是说是的,他可以。我为回答没有帮助主要问题的事情而道歉。 – 2013-05-15 02:58:42
不用担心。像这样的事情是非常好的评论材料,但看起来你还需要更多的代表。 – 2013-05-15 03:02:38
我做了一个视频解释如何使用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);
});
CHeers! MAGIC:http://makegif.com/g9yv.gif
不知道为什么这么严重downvoted ..你的createConnection为我解决了一些事情。谢谢:) – Nico 2016-03-30 21:41:05
应该提供反对票的理由。这是帮助我的答案。多谢兄弟! – 2016-04-10 16:43:42
粘贴这里面终端:
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 config | grep CLEARDB_DATABASE_URL
这个命令这个你会得到数据库的URL后。例如,这是您的cleardb数据库URL。
'mysql://b0600ea495asds:[email protected]
06.cleardb.net/heroku_4a1dc3673c4114d?reconnect=true'
比这将是您的数据库凭据。 (从上面URL中提取)
USER NAME = b0600ea495asds
PASSWORD = 9cd2b111
HOST = US-CDBR-hirone - 西气东输 06.cleardb.net
DATABASE NAME = heroku_4a1dc3673c4114d
你也可以直接在Heroku仪表板/网站上看到这一点,只需去你的应用程序,点击“设置”和“显示配置变量”。 – 2014-08-24 21:06:47
至少在我的情况下,us-cdbr-east.cleardb.com等效的部分不是数据库的名称,而是主机的名称。但是,数据库名称是在ClearDB插件的仪表板上找到的。 – Roseaboveit 2015-01-27 07:23:38
您需要将您的本地数据库文件导出到Heroku创建的数据库。只要按照这个视频,你会很好去https://www.youtube.com/watch?v=mBCH9OTVaGw&t=6s – 2017-05-22 19:17:53