我正在使用 Rails 3.2.6 尝试运行
heroku run rake db:migrate
我收到适配器错误
rake aborted!
Please install the mysql adapter: `gem install activerecord-mysql-adapter` (mysql is not part of the bundle. Add it to Gemfile.)
在我的 database.yml 中,我将开发、生产和测试集设置为:
adapter: mysql2
这是我的gem 环境
➜ my_app git:(master) gem env
RubyGems Environment:
- RUBYGEMS VERSION: 1.8.24
- RUBY VERSION: 1.9.3 (2012-11-10 patchlevel 327) [x86_64-darwin11.4.2]
- INSTALLATION DIRECTORY: /Users/jcollyer/.rvm/gems/ruby-1.9.3-p327
- RUBY EXECUTABLE: /Users/jcollyer/.rvm/rubies/ruby-1.9.3-p327/bin/ruby
- EXECUTABLE DIRECTORY: /Users/jcollyer/.rvm/gems/ruby-1.9.3-p327/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-11
- GEM PATHS:
- /Users/jcollyer/.rvm/gems/ruby-1.9.3-p327
- /Users/jcollyer/.rvm/gems/ruby-1.9.3-p327@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org/
我已经尝试了一些我在谷歌上发现的东西,但没有成功。任何帮助表示赞赏!谢谢!
最佳答案
请记住,Heroku 使用配置属性 DATABASE_URL 而不是 database.yml 文件来连接到您的数据库。确保已设置。如果您使用的是 ClearDB 附加组件,那么您需要的值应该在 CLEARDB_DATABASE_URL 中。
heroku config
复制 ClearDB 将在 CLEARDB_DATABASE_URL 配置变量中为您设置的值。将 DATABASE_URL 设置为相同的值
heroku config:set DATABASE_URL=mysql2://bb06ca765fb123:71b6dabc@us-cdbr-east-04.cleardb.com/heroku_703eded6aebc123?reconnect=true
这里是陷阱。大多数人都在使用 mysql2 gem,因此您通常需要将 DATABASE_URL 设置为 mysql2... 而不是 mysql。
没有必要放弃mysql迁移到postgre。
关于mysql - heroku rake 数据库 :migrate ERROR "gem install activerecord-mysql-adapter",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16485742/