Heroku和ClearDB错误

ste*_*ste 6 mysql postgresql ruby-on-rails heroku cleardb

我有一个带有mysql数据库的Ruby on Rails应用程序(使用gem mysql2).由于Heroku运行postgres,我按照这一步骤使其工作:

$>heroku addons:create cleardb:ignite
$>heroku config | grep CLEARDB_DATABASE_URL
$>heroku config:set DATABASE_URL='mysql2://my-url'
Run Code Online (Sandbox Code Playgroud)

如上所述这里.

问题是我在最后一个命令上得到了这个错误:

Setting config vars and restarting xxxxxx-xxxxx-16407... !!!
 ?    Cannot overwrite attachment values DATABASE_URL.
Run Code Online (Sandbox Code Playgroud)

我的应用程序无法运行:

2016-03-18T10:31:31.413121+00:00 heroku[run.1567]: State changed from up to complete
2016-03-18T10:31:34.818303+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=xxxxx-xxxxx-16407.herokuapp.com request_id=236455b8-7a02-49f0-8e2e-a67341a81580 fwd="151.225.234.109" dyno= connect= service= status=503 bytes=
2016-03-18T10:31:35.308136+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=xxxxx-xxxx-16407.herokuapp.com request_id=974dab02-e914-42fb-ad96-5476e30e9d17 fwd="151.225.234.109" dyno= connect= service= status=503 bytes=
2016-03-18T10:31:35.434538+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=xxxx-xxxxx-16407.herokuapp.com request_id=22bfdfd8-9cdf-4e3d-bb13-c616591bd91f fwd="151.225.234.109" dyno= connect= service= status=503 bytes=
Run Code Online (Sandbox Code Playgroud)

我已经在heroku机器上执行了bundle install和rake db:migrate.

你知道我怎么解决这个问题?

ste*_*ste 13

感谢heroku的支持,我解决了这个问题!

基本上我需要在运行新的数据库之前删除旧的数据库实现.这是我做的:

$ heroku addons:destroy heroku-postgresql -a NAMEOFTHEAPP
Run Code Online (Sandbox Code Playgroud)

并再次执行安装ClearDB的过程.现在一切正常!


小智 6

您需要在通过以下命令添加新DATABASE_URL之前删除旧数据库:

$ heroku addons:destroy heroku-postgresql

我会问这个应用程序的名称.或者你可以直接使用

$ heroku addons:destroy heroku-postgresql -a NAMEOFTHEAPP