title: Heroku on Rails - Invalid DATABASE_URL
body: <p>EDIT: The general advice is to use <strong>CEDAR</strong> stack.</p>
  
  <p>Pretty new to RoR, Gems, Heroku and Git. Following tutorial: <a href="http://ruby.railstutorial.org/book/ruby-on-rails-tutorial" rel="nofollow noreferrer">http://ruby.railstutorial.org/book/ruby-on-rails-tutorial</a></p>
  
  <p>Works smoothly on localhost, when deployed to Heroku got <strong>ConnectionNotEstablished error</strong>, that was solved here: 
  <a href="https://stackoverflow.com/questions/7542745/heroku-error-activerecordconnectionnotestablished">https://stackoverflow.com/questions/7542745/heroku-error-activerecordconnectionnotestablished</a> <em>(BTW: following same tutorial)</em> After changing production database to PostgreSQL <em>(gem 'pg')</em> it generates another error:</p>
  
  <p><strong>Visting live site</strong></p>
  
  <blockquote>
    <p>An error occurred in the application and your page could not be
    served. Please try again in a few moments.</p>
    
    <p>If you are the application owner, check your logs for details.</p>
  </blockquote>
  
  <p>Tried this - 
  <a href="https://stackoverflow.com/questions/6335910/heroku-app-crashed-receiving-invalid-database-url-when-attempting-heroku-rake">Heroku app crashed, receiving &quot;Invalid DATABASE URL&quot; when attempting heroku rake db:migrate</a> - 
  <strong>heroku rake db:migrate</strong></p>
  
  <pre><code>rake aborted!
  Invalid DATABASE_URL
  
  Tasks: TOP =&gt; db:migrate =&gt; db:load_config
  (See full trace by running task with --trace)
  </code></pre>
  
  <p><strong>heroku console</strong></p>
  
  <pre><code>Internal server error
  </code></pre>
  
  <p><strong>gemfile</strong></p>
  
  <pre><code>source 'http://rubygems.org'
  
  gem 'rails', '3.1.1'
  
  group :development do
    gem 'rspec-rails', '2.6.1'
    gem 'annotate', '~&gt; 2.4.1.beta' 
    gem 'sqlite3'
  end
  
  group :test do
    gem 'rspec-rails', '2.6.1'
    gem 'webrat', '0.7.1'
    gem 'sqlite3'
  end
  
  group :production do
      gem 'pg'
  end
  
  group :assets do
    gem 'sass-rails',   '~&gt; 3.1.4'
    gem 'coffee-rails', '~&gt; 3.1.1'
    gem 'uglifier', '&gt;= 1.0.3'
  end
  </code></pre>
  
  <p><strong>heroku logs</strong></p>
  
  <pre><code>9:02+00:00 app[web.1]:   from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/thin-1.2.6/lib/thin/runner.rb:143:in `run!'
  9:02+00:00 app[web.1]:   from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/thin-1.2.6/bin/thin:6:in `&lt;top (required)&gt;'
  9:02+00:00 app[web.1]:   from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/thin-1.2.6/lib/thin/runner.rb:177:in `run_command'
  9:02+00:00 app[web.1]:   from /home/heroku_rack/heroku.ru:18:in `block (2 levels) in &lt;main&gt;'
  9:02+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/rack-1.3.6/lib/rack/builder.rb:51:in `initialize'
  9:02+00:00 app[web.1]:   from /usr/ruby1.9.2/bin/thin:19:in `&lt;main&gt;'
  9:02+00:00 app[web.1]:   from /usr/ruby1.9.2/bin/thin:19:in `load'
  9:03+00:00 heroku[web.1]: State changed from starting to crashed
  9:04+00:00 heroku[web.1]: Process exited
  1:58+00:00 heroku[slugc]: Slug compilation started
  3:09+00:00 heroku[api]: Deploy 3dea426 by mstefanow@gmail.com
  3:09+00:00 heroku[api]: Release v7 created by mstefanow@gmail.com
  3:09+00:00 heroku[web.1]: State changed from crashed to created
  3:09+00:00 heroku[web.1]: State changed from created to starting
  3:10+00:00 heroku[slugc]: Slug compilation finished
  3:12+00:00 heroku[web.1]: Starting process with command `thin -p 44881 -e production -R /home/heroku_rack/heroku.ru start`
  3:15+00:00 app[web.1]: (erb):9:in `rescue in &lt;main&gt;': Invalid DATABASE_URL (RuntimeError)
  3:15+00:00 app[web.1]:   from (erb):6:in `&lt;main&gt;'
  3:15+00:00 app[web.1]:   from /usr/ruby1.9.2/lib/ruby/1.9.1/erb.rb:753:in `eval'
  3:15+00:00 app[web.1]:   from /usr/ruby1.9.2/lib/ruby/1.9.1/erb.rb:753:in `result'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/application/configuration.rb:106:in `database_configuration'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:36:in `instance_eval'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activerecord-3.1.1/lib/active_record/railtie.rb:68:in `block (2 levels) in &lt;class:Railtie&gt;'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:36:in `execute_hook'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:43:in `block in run_load_hooks'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:42:in `each'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:42:in `run_load_hooks'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activerecord-3.1.1/lib/active_record/base.rb:2190:in `&lt;top (required)&gt;'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `block in require'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:225:in `load_dependency'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:489:in `load_missing_constant'
  3:15+00:00 app[web.1]:   from /app/app/models/user.rb:12:in `&lt;top (required)&gt;'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:179:in `each'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:179:in `const_missing'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/inflector/methods.rb:124:in `block in constantize'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/inflector/methods.rb:123:in `each'
  3:15+00:00 a
   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/inflector/methods.rb:123:in `constantize'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/core_ext/string/inflections.rb:43:in `constantize'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:348:in `require_or_load'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:181:in `block in const_missing'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/actionpack-3.1.1/lib/action_controller/metal/params_wrapper.rb:148:in `_default_wrap_model'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/actionpack-3.1.1/lib/action_controller/metal/params_wrapper.rb:167:in `_set_wrapper_defaults'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/actionpack-3.1.1/lib/action_controller/metal/params_wrapper.rb:128:in `inherited'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/actionpack-3.1.1/lib/abstract_controller/railties/routes_helpers.rb:7:in `block (2 levels) in wi
  
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/actionpack-3.1.1/lib/action_controller/railties/paths.rb:7:in `block (2 levels) in with'
  3:15+00:00 app[web.1]:   from /app/app/controllers/users_controller.rb:1:in `&lt;top (required)&gt;'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `block in require'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:225:in `load_dependency'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:240:in `require'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:348:in `require_or_load'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:302:in `depend_on'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:214:in `require_dependency'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/engine.rb:417:in `block (2 levels) in eager_load!'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/engine.rb:416:in `each'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/engine.rb:416:in `block in eager_load!'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/engine.rb:414:in `each'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/engine.rb:414:in `eager_load!'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/application/finisher.rb:51:in `block in &lt;module:Finisher&gt;'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/initializable.rb:30:in `instance_exec'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/initializable.rb:30:in `run'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/initializable.rb:55:in `block in run_initializers'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/initializable.rb:54:in `each'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/initializable.rb:54:in `run_initializers'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/application.rb:96:in `initialize!'
  3:15+00:00 app[web.1]:   from /app/config/environment.rb:5:in `&lt;top (required)&gt;'
  3:15+00:00 app[web.1]:   from &lt;internal:lib/rubygems/custom_require&gt;:29:in `require'
  3:15+00:00 app[web.1]:   from &lt;internal:lib/rubygems/custom_require&gt;:29:in `require'
  3:15+00:00 app[web.1]:   from config.ru:3:in `block (3 levels) in &lt;main&gt;'
  3:15+00:00 app[web.1]:   from /home/heroku_rack/heroku.ru:23:in `eval'
  3:15+00:00 app[web.1]:   from /home/heroku_rack/heroku.ru:23:in `block (3 levels) in &lt;main&gt;'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/railties-3.1.1/lib/rails/railtie/configurable.rb:30:in `method_missing'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/rack-1.3.6/lib/rack/builder.rb:120:in `new'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/rack-1.3.6/lib/rack/builder.rb:120:in `map'
  3:15+00:00 app[web.1]:   from /home/heroku_rack/heroku.ru:18:in `block (2 levels) in &lt;main&gt;'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/rack-1.3.6/lib/rack/builder.rb:51:in `instance_eval'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/rack-1.3.6/lib/rack/builder.rb:51:in `initialize'
  3:15+00:00 app[web.1]:   from /home/heroku_rack/heroku.ru:11:in `new'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/rack-1.3.6/lib/rack/builder.rb:51:in `instance_eval'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/rack-1.3.6/lib/rack/builder.rb:51:in `initialize'
  3:15+00:00 app[web.1]:   from /home/heroku_rack/heroku.ru:11:in `block in &lt;main&gt;'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/rack-1.3.6/lib/rack/builder.rb:51:in `instance_eval'
  3:15+00:00 app[web.1]:   from /app/.bundle/gems/ruby/1.9.1/gems/rack-1.3.6/lib/rack/builder.rb:51:in `initialize'
  3:15+00:00 app[web.1]:   from /home/heroku_rack/heroku.ru:1:in `new'
  3:15+00:00 app[web.1]:   from /home/heroku_rack/heroku.ru:1:in `&lt;main&gt;'
  3:15+00:00 app[web.1]:   from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/thin-1.2.6/lib/rack/adapter/loader.rb:36:in `eval'
  3:15+00:00 app[web.1]:   from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/thin-1.2.6/lib/rack/adapter/loader.rb:36:in `load'
  3:15+00:00 app[web.1]:   from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/thin-1.2.6/lib/thin/controllers/controller.rb:175:in `load_rackup_config'
  3:15+00:00 app[web.1]:   from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/thin-1.2.6/lib/thin/controllers/controller.rb:65:in `start'
  3:15+00:00 app[web.1]:   from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/thin-1.2.6/lib/thin/runner.rb:143:in `run!'
  3:15+00:00 app[web.1]:   from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/thin-1.2.6/bin/thin:6:in `&lt;top (required)&gt;'
  3:15+00:00 app[web.1]:   from /usr/ruby1.9.2/bin/thin:19:in `load'
  3:15+00:00 app[web.1]:   from /usr/ruby1.9.2/bin/thin:19:in `&lt;main&gt;'
  3:15+00:00 app[web.1]:   from /usr/ruby1.9.2/lib/ruby/gems/1.9.1/gems/thin-1.2.6/lib/thin/runner.rb:177:in `run_command'
  3:16+00:00 heroku[web.1]: State changed from starting to crashed
  3:17+00:00 heroku[web.1]: Process exited
  5:55+00:00 heroku[router]: Error H10 (App crashed) -&gt; GET high-wind-7473.heroku.com/pages/home dyno= queue= wait= service= status=503 bytes=
  5:57+00:00 heroku[router]: Error H10 (App crashed) -&gt; GET high-wind-7473.heroku.com/pages/home dyno= queue= wait= service= status=503 bytes=
  </code></pre>
  
  <h1>Kind of stuck, please help (point in right direction)</h1>
  
  <p><strong>Of course</strong></p>
  
  <pre><code>bundle install
  git add .
  git commit -m "another heroku fix"
  git push
  git push heroku
  </code></pre>