将rails app连接到Amazon RDS服务器.在控制台中工作,但现在页面不会加载

Jon*_*ono 5 ruby ruby-on-rails amazon-web-services amazon-rds

我正在尝试使用我的rails应用程序的RDS数据库,因为最终我想把它放在heroku上.(数据库大约10gb).我无法连接但它似乎正在工作.如果我进入控制台,我可以运行sphinx搜索以及我需要的所有内容,但是当我启动服务器时,它似乎会冻结或者其他东西.如果我单击"关于您的应用程序的环境",则没有任何反应.我在控制台或任何东西都没有收到任何消息.如果我尝试转到另一个页面,它只是尝试加载页面但不会去任何地方.

这是我的database.yml的样子.

# development:
#   adapter: postgresql
#   encoding: unicode
#   database: musicbrainz_post
#   pool: 5
#   username: postgres
#   password:

development:
  adapter: mysql2
  #encoding: utf8
  host: musicbrainz.somestuff.amazonaws.com
  #port: 3306
  #reconnect: false
  database: musicbrainz
  username: myusername
  password: mypass
Run Code Online (Sandbox Code Playgroud)

如果我注释掉我的旧数据库配置它可以工作,页面加载和一切.但我想使用亚马逊数据库.

有人知道为什么吗?或者我应该使用另一个数据库/主机吗?

任何帮助都会很棒!

ric*_*day 4

遇到同样的问题后,我发现了问题所在。问题是您需要使用 Ruby 1.9.3,而不是 Ruby 1.8.7。我认为该错误发生在 mysql2 gem 中。

因此修复方法是安装 Ruby 1.9.3。以下是我遵循的步骤:

注意:在开始任何这些步骤之前,请将终端设置为“作为登录 shell 运行命令”。对于 Ubuntu,打开终端,转到编辑 -> 配置文件首选项。转到“标题和命令”。选中“作为登录 shell 运行命令”旁边的框

  1. 在我的系统上安装了RVM ,并捆绑了 ruby​​ 和 ruby​​ on Rails: https://rvm.io/rvm/install/命令: \curl -L https://get.rvm.io | bash -s 稳定--rails
  2. 命令:source ~/.rvm/scripts/rvm
  3. 使用 RVM 安装 OpenSSL:rvm pkg install openssl
  4. 重新安装所有 rubies:rvm reinstall all --force
  5. 因为您现在使用 RVM 来管理红宝石和宝石,所以您的宝石环境将是新的。因此您必须重新安装所有 gem。通过转到您的项目并运行:bundle install 来完成此操作
  6. 运行你的rails应用程序:bundle execrails s

祝你好运!