无法从Heroku App访问外部数据库

时间:2013-07-22 23:45:22

标签: ruby-on-rails-3 heroku

我在heroku上运行了rails 3.2.13应用程序。我希望我的应用程序访问远程MySQL数据库。为此,我更改了heroku配置中的DATABASE_URL。我是这样做的

heroku config:add DATABASE_URL=mysql2://user_name:password@171.121.123.120:3306/database_name

上面的命令成功更改了database_url。

但是当我尝试运行heroku run rake db:migrate时,它会出错。以下是我得到的错误

Connecting to database specified by DATABASE_URL
rake aborted!
Access denied for user 'user_name'@'ec2-23-20-128-131.compute-1.amazonaws.com'    (using password: YES)
/app/vendor/bundle/ruby/2.0.0/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in `connect'

我在我的MySQL服务器上添加了%。%。%。%的通配符,允许任何IP访问数据库,但即使这样也无效。添加这些外卡后,我可以从我的本地开发机器访问数据库。

由于

1 个答案:

答案 0 :(得分:0)

您是否在/app/vendor/bundle/ruby/2.0.0/gems/mysql2-0.3.11/lib/mysql2/client.rb中定义了凭据?看起来migrate命令试图从该文件中提取信息。

编辑:对不起,您的屏幕截断了代码块。在client.rb文件中一切正常吗?