Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Production environment error

To begin, I'm quite a newbie to Rails. I'm making a blog app, and when trying to run it on production, both ways:

rails s -e production

and

RAILS_ENV=production

I get the same error:

=> Booting WEBrick => Rails 3.2.8 application starting in production on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
Exiting
/home/loku/.rvm/gems/ruby-1.9.3-p286/gems/activerecord-> resolve_hash_connection': database configuration does not specify adapter (ActiveRecord::AdapterNotSpecified)
...

My setup:

ruby 1.9.3p286 (2012-10-12 revision 37165) [i686-linux]

Rails 3.2.8

database.yml:

development:    
  adapter: mysql2    
  encoding: utf8    
  reconnect: false    
  database: blogg_development    
  pool: 5    
  timeout: 5000    
  username: root    
  password: *** 
  host: localhost    

production:    
  adapter: mysql2       
  encoding: utf8    
  reconnect: false    
  database: blogg_production    
  pool: 5    
  timeout: 5000    
  username: root    
  password: ***    
  host: localhost

Gemfile:

source 'https://rubygems.org'
ruby '1.9.3'
gem 'rails', '3.2.8'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

gem 'mysql2'

# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  gem 'therubyracer', :platforms => :ruby

  gem 'uglifier', '>= 1.0.3'
  gem 'haml-rails'
  gem 'less-rails'
  gem 'twitter-bootstrap-rails', :git => 'git://github.com/seyhunak/twitter-bootstrap-    rails.git'
  #gem 'actionpack', '~> 3.1.0'
end

gem 'jquery-rails'
gem 'haml'
gem 'devise'
gem 'cancan'

group :test, :development do
  gem 'guard-livereload'
  gem 'rb-fsevent'
  gem 'pry'
  gem 'pry-rails'
end

group :linux do
  gem 'libnotify'
end

group :darwin do
  gem 'rb-fsevent', require: false
  gem 'growl'
end
like image 323
Mikone Avatar asked Dec 05 '12 15:12

Mikone


People also ask

What is a production error?

This occurs when the product in question is manufactured differently than its intended design. Manufacturing defects may occur when the manufacturer of the product uses the incorrect material or when appropriate quality controls are not used at the manufacturing plant.


1 Answers

These are the things to consider

  1. mysql2 in Gemfile (it is)
  2. production environment defined in config/database.yml (it is) 2.2 remove any other environments from your database.yml and leave production: only
  3. Make sure it's properly indented (I think it is)
  4. bundle install (to make sure you have the gems installed)
  5. bundle show mysql2 to see the version and ensure it's installed
  6. bundle exec rails s -e production (make sure to use bundle exec)

  7. if that doesn't work, I would look in config/environments/production.rb and ensure there isn't anything rare there.

like image 180
lsaffie Avatar answered Sep 28 '22 07:09

lsaffie