我有一个Rails 3.2.3应用程序,它与Capistrano一起部署。到目前为止,这个工作流程现在已经好几个月了。但是自从上次部署最新更改以来,rake db:migrate
操作因为无法找到SQLite3 gem和适配器而挂起。
executing "cd /home/*/*/*/releases/20120425232058 && bundle exec rake RAILS_ENV=production db:migrate"
executing command
rake aborted!
Please install the sqlite3 adapter: `gem install activerecord-sqlite3-adapter` (sqlite3 is not part of the bundle. Add it to Gemfile.)
事实是,应用程序正在MySQL上运行。我有我的Gemfile:
source 'https://rubygems.org'
gem 'rails', '3.2.3'
gem 'jquery-rails'
gem 'omniauth-openid'
gem 'will_paginate'
gem 'pusher'
gem 'carrierwave'
gem 'capistrano'
group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'uglifier', '>= 1.0.3'
end
group :development, :production do
gem 'mysql2'
end
group :production do
gem 'unicorn'
end
和database.yml文件:
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: *****_development
pool: 5
username: *****
password: *****
host: localhost
production:
adapter: mysql2
encoding: utf8
reconnect: false
database: *****_production
pool: 5
username: *****
password: *****
host: localhost
应用程序在本地计算机上的生产模式下运行没有问题。
为什么Rails会尝试安装SQLite?
答案 0 :(得分:2)
我相信你的config / database.yml
中指定了sqlite答案 1 :(得分:1)
我的坏人。卡皮斯特拉诺食谱出了点问题。谢谢你的答案!
答案 2 :(得分:0)
您可以在新部署中发布更改列表吗?也许这是一个问题,其中一个宝石也使用ActiveRecord
?