Pavan Kumar
Pavan Kumar

Reputation: 1735

Ruby is unable to connect to postgresql

Frnds i have edited the database.yml as below for my postgresql db and downloaded pg gem and relating libraries.I serached it in the google and edited in that way.. but after running the server it shows the below error in the terminal window....... please help me in this...

development:
  adapter: postgresql
  encoding: unicode
  database: my db name
  username:  user name
  password: password
  host: host name

test:
  adapter: postgresql
  database: db_pchamara
  database: my db name
  username:  user name
  password: password
  host: host name
  pool: 5


production:
  adapter: postgresql
  database: my db name
  username:  user name
  password: password
  host: host name
  pool: 5

but if i run the command 'rails server' in terminal it shows the following error.

Started GET "/assets/rails.png" for 127.0.0.1 at 2012-12-05 18:10:51 +0530

ActiveRecord::ConnectionNotEstablished (ActiveRecord::ConnectionNotEstablished):
  activerecord (3.2.9) lib/active_record/connection_adapters/abstract/connection_pool.rb:410:in `retrieve_connection'
  activerecord (3.2.9) lib/active_record/connection_adapters/abstract/connection_specification.rb:171:in `retrieve_connection'
  activerecord (3.2.9) lib/active_record/connection_adapters/abstract/connection_specification.rb:145:in `connection'
  activerecord (3.2.9) lib/active_record/query_cache.rb:67:in `rescue in call'
  activerecord (3.2.9) lib/active_record/query_cache.rb:61:in `call'
  activerecord (3.2.9) lib/active_record/connection_adapters/abstract/connection_pool.rb:479:in `call'
  actionpack (3.2.9) lib/action_dispatch/middleware/callbacks.rb:28:in `block in call'
  activesupport (3.2.9) lib/active_support/callbacks.rb:405:in `_run__189673354__call__558944823__callbacks'
  activesupport (3.2.9) lib/active_support/callbacks.rb:405:in `__run_callback'
  activesupport (3.2.9) lib/active_support/callbacks.rb:385:in `_run_call_callbacks'
  activesupport (3.2.9) lib/active_support/callbacks.rb:81:in `run_callbacks'
  actionpack (3.2.9) lib/action_dispatch/middleware/callbacks.rb:27:in `call'
  actionpack (3.2.9) lib/action_dispatch/middleware/reloader.rb:65:in `call'
  actionpack (3.2.9) lib/action_dispatch/middleware/remote_ip.rb:31:in `call'
  actionpack (3.2.9) lib/action_dispatch/middleware/debug_exceptions.rb:16:in `call'
  actionpack (3.2.9) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
  railties (3.2.9) lib/rails/rack/logger.rb:32:in `call_app'
  railties (3.2.9) lib/rails/rack/logger.rb:16:in `block in call'
  activesupport (3.2.9) lib/active_support/tagged_logging.rb:22:in `tagged'
  railties (3.2.9) lib/rails/rack/logger.rb:16:in `call'
  actionpack (3.2.9) lib/action_dispatch/middleware/request_id.rb:22:in `call'
  rack (1.4.1) lib/rack/methodoverride.rb:21:in `call'
  rack (1.4.1) lib/rack/runtime.rb:17:in `call'
  activesupport (3.2.9) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
  rack (1.4.1) lib/rack/lock.rb:15:in `call'
  actionpack (3.2.9) lib/action_dispatch/middleware/static.rb:62:in `call'
  railties (3.2.9) lib/rails/engine.rb:479:in `call'
  railties (3.2.9) lib/rails/application.rb:223:in `call'
  rack (1.4.1) lib/rack/content_length.rb:14:in `call'
  railties (3.2.9) lib/rails/rack/log_tailer.rb:17:in `call'
  rack (1.4.1) lib/rack/handler/webrick.rb:59:in `service'
  /usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/webrick/httpserver.rb:138:in `service'
  /usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/webrick/httpserver.rb:94:in `run'
  /usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/webrick/server.rb:191:in `block in start_thread'


  Rendered /usr/local/rvm/gems/ruby-1.9.3-p327/gems/actionpack-3.2.9/lib/action_dispatch/middleware/templates/rescues/_trace.erb (1.2ms)
  Rendered /usr/local/rvm/gems/ruby-1.9.3-p327/gems/actionpack-3.2.9/lib/action_dispatch/middleware/templates/rescues/_request_and_response.erb (2.6ms)
  Rendered /usr/local/rvm/gems/ruby-1.9.3-p327/gems/actionpack-3.2.9/lib/action_dispatch/middleware/templates/rescues/diagnostics.erb within rescues/layout (13.3ms)

Upvotes: 1

Views: 221

Answers (2)

macool
macool

Reputation: 658

If this helps, my database.yml is as follows:

development:
  adapter: postgresql
  encoding: utf8
  reconnect: false
  database: kenyu_dev
  pool: 5
  username: kenyu
  password: super_secret_pass
  host: localhost

Also, did you create the user and gave him the right privileges? Try logging in as the user with psql

Upvotes: 0

rorra
rorra

Reputation: 9693

Did you setup the gem 'pg' in your Gemfile?

Check your Gemfile, make sure that you commented (or deleted) the gem sqlite, and make sure that you have the gem pg listed

gem 'pg'

after that, run the bundle command (that will setup the libraries that your application will load before it starts):

bundle

Check the file Gemfile.lock, make sure that the gem pg is listed there.

Once you are done with all of that, make sure that you actually create the database in your postgresql server:

bundle exec rake db:create

And just in case, run any pending migration

bundle exec rake db:migrate

Upvotes: 1

Related Questions