我使用 rvm ruby1.9.2p0 和 rails 3.0.1 在我的机器上创建了一个新应用程序,并执行了以下操作:
rails new -J -d mysql appname
git init
git add .
git commit
heroku create
然后应用程序就创建好了。但是当我这样做时:
heroku rake db:create --trace
我得到:
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Couldn't create database for {"reconnect"=>false, "encoding"=>"utf8", "username"=>"root", "adapter"=>"mysql2", "database"=>"app_production", "pool"=>5, "password"=>nil, "socket"=>"/var/run/mysqld/mysqld.sock"}, charset: utf8, collation: utf8_unicode_ci
(in /app)
** Invoke db:create (first_time)
** Invoke db:load_config (first_time)
** Invoke rails_env (first_time)
** Execute rails_env
** Execute db:load_config
** Execute db:create
当我这样做时: heroku rake db:migrate --trace,然后跟踪有如下行:
/app/.bundle/gems/ruby/1.8/gems/rake-0.8.7/lib/rake.rb:590:in
这表明它使用的是 ruby 1.8 而不是 ruby 1.9.2
如何在我的 heroku 应用程序上创建数据库并使其使用 ruby 1.9.2p0?
最佳答案
如果您已经在 Heroku 上创建了应用程序,它将默认为您所发现的 1.8.7。您可以在创建应用时指定要在其上创建应用的堆栈;
heroku create myapp --stack bamboo-mri-1.9.2
要将您的应用迁移到 1.9.2,您需要发布
heroku stack:migrate bamboo-mri-1.9.2
迁移后您将需要重新推送您的应用程序(如果我没记错的话)
关于mysql - 如何告诉 heroku 为新创建的应用程序使用 rails 3 和 ruby 1.9.2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5631927/