rake test:prepare fails with Rails 4.0.8 - ruby-on-rails

I was testing my app (with rspec) when I noticed rake test:prepare throws an odd FATAL: database "postgres" does not exist error. Stranger still, my tests run just fine regardless.
However, whenever I use rake test:prepare --trace (after using rake db:migrate) I get this error and receive the same error when attempting rake db:create RAILS_ENV=test and also rake db:drop RAILS_ENV=test as well. Any idea what I may be overlooking?
Here is the error in question:
** Invoke test:prepare (first_time)
** Invoke db:test:prepare (first_time)
** Invoke environment (first_time)
** Execute environment
** Invoke db:load_config (first_time)
** Execute db:load_config
** Execute db:test:prepare
** Invoke db:test:load (first_time)
** Invoke db:test:purge (first_time)
** Invoke environment
** Invoke db:load_config
** Execute db:test:purge
rake aborted!
PG::Error: FATAL: database "postgres" does not exist
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/postgresql_adapter.rb:855:in `initialize'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/postgresql_adapter.rb:855:in `new'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/postgresql_adapter.rb:855:in `connect'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/postgresql_adapter.rb:556:in `initialize'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/postgresql_adapter.rb:41:in `new'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/postgresql_adapter.rb:41:in `postgresql_connection'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/abstract/connection_pool.rb:440:in `new_connection'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/abstract/connection_pool.rb:450:in `checkout_new_connection'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/abstract/connection_pool.rb:421:in `acquire_connection'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/abstract/connection_pool.rb:356:in `block in checkout'
/Users/Wilhelm/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/monitor.rb:211:in `mon_synchronize'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/abstract/connection_pool.rb:355:in `checkout'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/abstract/connection_pool.rb:265:in `block in connection'
/Users/Wilhelm/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/monitor.rb:211:in `mon_synchronize'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/abstract/connection_pool.rb:264:in `connection'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_adapters/abstract/connection_pool.rb:546:in `retrieve_connection'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_handling.rb:79:in `retrieve_connection'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/connection_handling.rb:53:in `connection'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/tasks/postgresql_database_tasks.rb:8:in `connection'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/tasks/postgresql_database_tasks.rb:30:in `drop'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/tasks/postgresql_database_tasks.rb:43:in `purge'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/tasks/database_tasks.rb:137:in `purge'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/railties/databases.rake:365:in `block (3 levels) in <top (required)>'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:240:in `call'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:240:in `block in execute'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:235:in `each'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:235:in `execute'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:179:in `block in invoke_with_call_chain'
/Users/Wilhelm/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/monitor.rb:211:in `mon_synchronize'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:172:in `invoke_with_call_chain'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:201:in `block in invoke_prerequisites'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:199:in `each'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:199:in `invoke_prerequisites'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:178:in `block in invoke_with_call_chain'
/Users/Wilhelm/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/monitor.rb:211:in `mon_synchronize'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:172:in `invoke_with_call_chain'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:165:in `invoke'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/activerecord-4.0.8/lib/active_record/railties/databases.rake:371:in `block (3 levels) in <top (required)>'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:240:in `call'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:240:in `block in execute'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:235:in `each'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:235:in `execute'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:179:in `block in invoke_with_call_chain'
/Users/Wilhelm/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/monitor.rb:211:in `mon_synchronize'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:172:in `invoke_with_call_chain'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:201:in `block in invoke_prerequisites'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:199:in `each'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:199:in `invoke_prerequisites'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:178:in `block in invoke_with_call_chain'
/Users/Wilhelm/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/monitor.rb:211:in `mon_synchronize'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:172:in `invoke_with_call_chain'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/task.rb:165:in `invoke'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/application.rb:150:in `invoke_task'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/application.rb:106:in `block (2 levels) in top_level'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/application.rb:106:in `each'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/application.rb:106:in `block in top_level'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/application.rb:115:in `run_with_threads'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/application.rb:100:in `top_level'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/application.rb:78:in `block in run'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/application.rb:176:in `standard_exception_handling'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/lib/rake/application.rb:75:in `run'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/gems/rake-10.3.2/bin/rake:33:in `<top (required)>'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/bin/rake:23:in `load'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/bin/rake:23:in `<main>'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/bin/ruby_executable_hooks:15:in `eval'
/Users/Wilhelm/.rvm/gems/ruby-2.0.0-p481#rails_4_0/bin/ruby_executable_hooks:15:in `<main>'
Tasks: TOP => db:test:load => db:test:purge
Here is what my test environment looks like (according to my gemfile):
gem 'rails', '4.0.8'
gem 'pg', '0.15.1'
group :development, :test do
gem 'rspec-rails', '2.13.1'
end
group :test do
gem 'selenium-webdriver', '2.35.1'
gem 'capybara', '2.1.0'
end
Edit
Here is what my database.yml file looks like :
development:
adapter: postgresql
endoding: unicode
database: myapp_development
pool: 5
timeout: 5000
hostname: localhost
test:
adapter: postgresql
endoding: unicode
database: myapp_test
pool: 5
timeout: 5000
hostname: localhost
production:
adapter: postgresql
database: myapp_production
pool: 5
timeout: 5000

Try using a Postgres client(pgAdmin3 for example, or psql on the command line) to attempt to create a database named 'postgres' on your server. Don't try using Rails rake tasks to do this - they will probably fail for the same reason.
Using psql you could try:
CREATE DATABASE postgres;
or use pgAdmin3 (free with Postgres) if you prefer a GUI.
You will need to be logged in as a user with the appropriate privileges for creating databases.
As I understand it, this database is created automatically by newer versions of Postgres. It needs no tables. Your instance of Postgres may not have it or it may have been deleted or renamed, but the database adapter used by Rails needs it to be there for some reason.

Related

Deploy Redmine 4.x on Plesk-Server: ArgumentError: string contains null byte

Im following this Tutorial to Deploy a Redmine Instance on my vServer: https://support.plesk.com/hc/en-us/articles/115001670625
I get an Error at Point 14.2 "Insert RAILS_ENV=production db:migrate to the Task parameters field and click Run."
Redmine-Version: 4.0.4
Ruby Version: 2.6.3-p62
** Invoke db:migrate (first_time)
** Invoke db:load_config (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:load_config
** Execute db:migrate
rake aborted!
ArgumentError: string contains null byte
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/mysql2-0.5.2/lib/mysql2/client.rb:90:in `connect'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/mysql2-0.5.2/lib/mysql2/client.rb:90:in `initialize'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_adapters/mysql2_adapter.rb:22:in `new'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_adapters/mysql2_adapter.rb:22:in `mysql2_connection'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:811:in `new_connection'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:855:in `checkout_new_connection'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:834:in `try_to_checkout_new_connection'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:795:in `acquire_connection'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:523:in `checkout'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:382:in `connection'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_adapters/abstract/connection_pool.rb:1014:in `retrieve_connection'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_handling.rb:118:in `retrieve_connection'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/connection_handling.rb:90:in `connection'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/tasks/database_tasks.rb:172:in `migrate'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/activerecord-5.2.3/lib/active_record/railties/databases.rake:60:in `block (2 levels) in '
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/task.rb:273:in `block in execute'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/task.rb:273:in `each'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/task.rb:273:in `execute'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/task.rb:214:in `block in invoke_with_call_chain'
/opt/plesk/ruby/2.6.3/lib/x86_64-linux-gnu/ruby/2.6.0/monitor.rb:230:in `mon_synchronize'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/task.rb:194:in `invoke_with_call_chain'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/task.rb:183:in `invoke'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:160:in `invoke_task'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:116:in `block (2 levels) in top_level'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:116:in `each'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:116:in `block in top_level'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:125:in `run_with_threads'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:110:in `top_level'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:83:in `block in run'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:186:in `standard_exception_handling'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:80:in `run'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/gems/rake-12.3.3/exe/rake:27:in `'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/bin/rake:23:in `load'
/var/www/vhosts/redmine.domain/vendor/bundle/ruby/2.6.0/bin/rake:23:in `
'
Tasks: TOP => db:migrate
I don't know what else to do. In the forum of Plesk and Redmine nobody could help me so far...
Aleksandar Pavić was right:
As I can see, on the Plesk tutorial it says Redmine 3.4 not Redmine
4.x, please retry with Redmine 3.4...
With Redmine 3.4.X it worked! Thank you a lot! 👌

Cannot connect rails and mysql2

So I'm trying to perform a simple database dump from the command prompt for the first time and the rails command keeps aborting with an error. This is running Ruby 2.3.0 with rails 5.0.7 and mysql 0.5.0.
C:\Users\MR_ra\Documents\Sites\matt_radin_cms>rails db:schema:dump --trace
** Invoke db:schema:dump (first_time)
** Invoke environment (first_time)
** Execute environment
** Invoke db:load_config (first_time)
** Execute db:load_config
** Execute db:schema:dump
rails aborted!
NameError: uninitialized constant Mysql2::Client::REMEMBER_OPTIONS
C:/Ruby23/lib/ruby/gems/2.3.0/gems/mysql2-0.5.0-x86-mingw32/lib/mysql2/client.rb:14:in `default_query_options'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/mysql2-0.5.0-x86-mingw32/lib/mysql2/client.rb:25:in `initialize'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/connection_adapters/mysql2_adapter.rb:25:in `new'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/connection_adapters/mysql2_adapter.rb:25:in `mysql2_connection'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:729:in `new_connection'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:773:in `checkout_new_connection'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:752:in `try_to_checkout_new_connection'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:713:in `acquire_connection'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:490:in `checkout'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:364:in `connection'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/connection_adapters/abstract/connection_pool.rb:883:in `retrieve_connection'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/connection_handling.rb:128:in `retrieve_connection'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/connection_handling.rb:91:in `connection'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/railties/databases.rake:241:in `block (4 levels) in <top (required)>'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/railties/databases.rake:240:in `open'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/activerecord-5.0.7/lib/active_record/railties/databases.rake:240:in `block (3 levels) in <top (required)>'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `block in execute'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `each'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/task.rb:271:in `execute'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/task.rb:213:in `block in invoke_with_call_chain'
C:/Ruby23/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/task.rb:193:in `invoke_with_call_chain'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/task.rb:182:in `invoke'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:160:in `invoke_task'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:116:in `block (2 levels) in top_level'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:116:in `each'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:116:in `block in top_level'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:125:in `run_with_threads'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:110:in `top_level'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/railties-5.0.7/lib/rails/commands/rake_proxy.rb:14:in `block in run_rake_task'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/rake-12.3.1/lib/rake/application.rb:186:in `standard_exception_handling'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/railties-5.0.7/lib/rails/commands/rake_proxy.rb:11:in `run_rake_task'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/railties-5.0.7/lib/rails/commands/commands_tasks.rb:51:in `run_command!'
C:/Ruby23/lib/ruby/gems/2.3.0/gems/railties-5.0.7/lib/rails/commands.rb:18:in `<top (required)>'
bin/rails:4:in `require'
bin/rails:4:in `<main>'
Tasks: TOP => db:schema:dump
It's looking like no Mysql installed in your machine or adapter setting is wrong.
First install mysql server in your machine.
after that install mysql2 gem by below command or adding in application gemfile
gem install mysql2
gem 'mysql2'
then do below setting for your adapter
default: &default
adapter: mysql2
username: xxxxx
password: xxxxx
host: localhost
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
timeout: 5000
Hope this will help you out.
I think the problem with mysql2 gem version, you can define the version like this
gem 'mysql2', '~> 0.3.17'
then bundle install, it solved the problem on my hand.
The database.yml
default: &default
adapter: mysql2
host: localhost
encoding: unicode
username: root
password: #=> if you use password to your local databse then use otherwise empty this
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
development:
<<: *default
database: database_development

Unable to create development and test databases (NoMethodError: undefined method `tr' for nil:NilClass)?

I am creating a rails app with a postgresql database with the .env gem.
Here is my .env file:
DATABASE_URL=dev
TEST_DATABASE_URL=test
PROD_DATABASE_URL=prod
DB_USERNAME=user1
Here is my config/database.yml
default: &default
adapter: postgresql
pool: 5
timeout: 5000
username: <%= ENV["DB_USERNAME"] %>
development:
<<: *default
database: <%= ENV["DATABASE_URL"] %>
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: <%= ENV["TEST_DATABASE_URL"] %>
production:
<<: *default
database: <%= ENV["PROD_DATABASE_URL"] %>
In my corresponding .env file I have specified the environment variables to substitute the values. When I try to run the command RAILS_ENV=development rake db:create, I receive this error:
** Invoke db:create (first_time)
** Invoke db:load_config (first_time)
** Execute db:load_config
rake aborted!
NoMethodError: undefined method `tr' for nil:NilClass
Did you mean? try
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/connection_adapters/connection_specification.rb:37:in `initialize'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/connection_adapters/connection_specification.rb:270:in `new'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/connection_adapters/connection_specification.rb:270:in `resolve_url_connection'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/connection_adapters/connection_specification.rb:258:in `resolve_hash_connection'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/connection_adapters/connection_specification.rb:215:in `resolve_connection'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/connection_adapters/connection_specification.rb:139:in `resolve'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/connection_adapters/connection_specification.rb:151:in `block in resolve_all'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/connection_adapters/connection_specification.rb:150:in `each'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/connection_adapters/connection_specification.rb:150:in `resolve_all'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/connection_handling.rb:69:in `resolve'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/core.rb:46:in `configurations='
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/core.rb:48:in `block in <module:Core>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activesupport-4.2.6/lib/active_support/concern.rb:120:in `class_eval'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activesupport-4.2.6/lib/active_support/concern.rb:120:in `append_features'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/base.rb:284:in `include'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/base.rb:284:in `<class:Base>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/base.rb:269:in `<module:ActiveRecord>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/base.rb:26:in `<top (required)>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/tasks/mysql_database_tasks.rb:8:in `require'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/tasks/mysql_database_tasks.rb:8:in `<class:MySQLDatabaseTasks>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/tasks/mysql_database_tasks.rb:3:in `<module:Tasks>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/tasks/mysql_database_tasks.rb:2:in `<module:ActiveRecord>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/tasks/mysql_database_tasks.rb:1:in `<top (required)>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/tasks/database_tasks.rb:50:in `require'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/tasks/database_tasks.rb:50:in `<module:DatabaseTasks>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/tasks/database_tasks.rb:37:in `<module:Tasks>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/tasks/database_tasks.rb:4:in `<module:ActiveRecord>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/tasks/database_tasks.rb:3:in `<top (required)>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/railtie.rb:41:in `require'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/activerecord-4.2.6/lib/active_record/railtie.rb:41:in `block (3 levels) in <class:Railtie>'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/task.rb:250:in `block in execute'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/task.rb:250:in `each'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/task.rb:250:in `execute'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/task.rb:194:in `block in invoke_with_call_chain'
/Users/drubio/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/task.rb:187:in `invoke_with_call_chain'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/task.rb:216:in `block in invoke_prerequisites'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/task.rb:214:in `each'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/task.rb:214:in `invoke_prerequisites'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/task.rb:193:in `block in invoke_with_call_chain'
/Users/drubio/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/monitor.rb:214:in `mon_synchronize'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/task.rb:187:in `invoke_with_call_chain'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/task.rb:180:in `invoke'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/application.rb:152:in `invoke_task'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/application.rb:108:in `block (2 levels) in top_level'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/application.rb:108:in `each'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/application.rb:108:in `block in top_level'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/application.rb:117:in `run_with_threads'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/application.rb:102:in `top_level'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/application.rb:80:in `block in run'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/application.rb:178:in `standard_exception_handling'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/lib/rake/application.rb:77:in `run'
/Users/drubio/.rvm/gems/ruby-2.3.0/gems/rake-12.0.0/exe/rake:27:in `<top (required)>'
/Users/drubio/.rvm/gems/ruby-2.3.0/bin/rake:23:in `load'
/Users/drubio/.rvm/gems/ruby-2.3.0/bin/rake:23:in `<main>'
/Users/drubio/.rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `eval'
/Users/drubio/.rvm/gems/ruby-2.3.0/bin/ruby_executable_hooks:15:in `<main>'
Tasks: TOP => db:create => db:load_config
I've followed the documentation for .env and have specified the gem at the top of my Gemfile:
gem 'dotenv-rails', :groups => [:development, :test]
Has anyone encountered this problem before?
It seems you specified incorrect value for the DATABASE_URL env variable. Rails handles it in a special way (see documentation http://edgeguides.rubyonrails.org/configuring.html#configuring-a-database).
Full form of the DATABASE_URL is postgresql://foo:bar#localhost:9000/foo_test?pool=5&timeout=3000 and it can totally replace config/database.yml.
So now you can just rename DATABASE_URL=dev to something more custom like DB_NAME=dev

rake db:create gets "undefined method `[]'"

While tweaking a rails app I wrote long ago I dropped the database to start the migrations over.
Oopsie - now even a basic db:setup isn't working!
If I recall correctly, one does
$ RAILS_ENV=development bundle exec rake db:setup
$ RAILS_ENV=development bundle exec rake db:migrate
I think the problem is my database is no longer being recognized by rake/rails.
Any guesses as to why?
My database.yml has not changed recently!
test:
adapter: postgresql
database: argotifier_test
username: argotifier
password: start123
host: localhost
pool: 5
Here's the trace when I run the rake tasks:
$ RAILS_ENV=test bundle exec rake db:setup --trace
** Invoke db:setup (first_time)
** Invoke db:create (first_time)
** Invoke db:load_config (first_time)
** Invoke rails_env (first_time)
** Execute rails_env
** Execute db:load_config
** Execute db:create
rake aborted!
undefined method `[]' for nil:NilClass
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activerecord-3.1.3/lib/active_record/railties/databases.rake:74:in `rescue in create_database'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activerecord-3.1.3/lib/active_record/railties/databases.rake:54:in `create_database'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activerecord-3.1.3/lib/active_record/railties/databases.rake:44:in `block (2 levels) in <top (required)>'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:236:in `call'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:236:in `block in execute'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:231:in `each'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:231:in `execute'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:175:in `block in invoke_with_call_chain'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:168:in `invoke_with_call_chain'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:197:in `block in invoke_prerequisites'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:195:in `each'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:195:in `invoke_prerequisites'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:174:in `block in invoke_with_call_chain'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:168:in `invoke_with_call_chain'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:161:in `invoke'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:149:in `invoke_task'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:106:in `block (2 levels) in top_level'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:106:in `each'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:106:in `block in top_level'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:115:in `run_with_threads'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:100:in `top_level'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:78:in `block in run'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:165:in `standard_exception_handling'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:75:in `run'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/bin/rake:33:in `<top (required)>'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/bin/rake:23:in `load'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/bin/rake:23:in `<main>'
Tasks: TOP => db:setup => db:create
$ RAILS_ENV=test bundle exec rake db:migrate --trace
** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Invoke db:load_config (first_time)
** Invoke rails_env (first_time)
** Execute rails_env
** Execute db:load_config
rake aborted!
test database is not configured
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activerecord-3.1.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:62:in `establish_connection'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activerecord-3.1.3/lib/active_record/connection_adapters/abstract/connection_specification.rb:55:in `establish_connection'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activerecord-3.1.3/lib/active_record/railtie.rb:69:in `block (2 levels) in <class:Railtie>'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activesupport-3.1.3/lib/active_support/lazy_load_hooks.rb:36:in `instance_eval'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activesupport-3.1.3/lib/active_support/lazy_load_hooks.rb:36:in `execute_hook'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activesupport-3.1.3/lib/active_support/lazy_load_hooks.rb:43:in `block in run_load_hooks'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activesupport-3.1.3/lib/active_support/lazy_load_hooks.rb:42:in `each'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activesupport-3.1.3/lib/active_support/lazy_load_hooks.rb:42:in `run_load_hooks'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activerecord-3.1.3/lib/active_record/base.rb:2190:in `<top (required)>'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/activerecord-3.1.3/lib/active_record/railties/databases.rake:6:in `block (2 levels) in <top (required)>'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:236:in `call'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:236:in `block in execute'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:231:in `each'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:231:in `execute'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:175:in `block in invoke_with_call_chain'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:168:in `invoke_with_call_chain'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:197:in `block in invoke_prerequisites'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:195:in `each'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:195:in `invoke_prerequisites'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:174:in `block in invoke_with_call_chain'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:168:in `invoke_with_call_chain'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/task.rb:161:in `invoke'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:149:in `invoke_task'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:106:in `block (2 levels) in top_level'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:106:in `each'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:106:in `block in top_level'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:115:in `run_with_threads'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:100:in `top_level'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:78:in `block in run'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:165:in `standard_exception_handling'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/lib/rake/application.rb:75:in `run'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/lib/ruby/gems/1.9.1/gems/rake-10.1.0/bin/rake:33:in `<top (required)>'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/bin/rake:23:in `load'
/Users/monkeywidget/.rbenv/versions/1.9.3-p429/bin/rake:23:in `<main>'
Tasks: TOP => db:migrate => db:load_config
You should run rake db:test:prepare for the test database.
Check this for more options.

In ruby rake db:migrate show the password failure

I am using rails with postgresql which is on remote machine. I have edited database.yml file according to the requirement.but when i run rake db:migrate it shows password failure.. but the same password works with the psql command..
the error when i run rake db:migrate is:
root#vdimc04 My_Postgres]# rake db:migrate --trace
** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Invoke db:load_config (first_time)
** Execute db:load_config
** Execute db:migrate
rake aborted!
fe_sendauth: no password supplied
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/postgresql_adapter.rb:1208:in `initialize'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/postgresql_adapter.rb:1208:in `new'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/postgresql_adapter.rb:1208:in `connect'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/postgresql_adapter.rb:326:in `initialize'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/postgresql_adapter.rb:28:in `new'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/postgresql_adapter.rb:28:in `postgresql_connection'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/connection_pool.rb:315:in `new_connection'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/connection_pool.rb:325:in `checkout_new_connection'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/connection_pool.rb:247:in `block (2 levels) in checkout'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/connection_pool.rb:242:in `loop'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/connection_pool.rb:242:in `block in checkout'
/usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/connection_pool.rb:239:in `checkout'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/connection_pool.rb:102:in `block in connection'
/usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/connection_pool.rb:101:in `connection'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/connection_pool.rb:410:in `retrieve_connection'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/connection_specification.rb:171:in `retrieve_connection'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/connection_adapters/abstract/connection_specification.rb:145:in `connection'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/migration.rb:662:in `initialize'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/migration.rb:570:in `new'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/migration.rb:570:in `up'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/migration.rb:551:in `migrate'
/usr/local/rvm/gems/ruby-1.9.3-p327/gems/activerecord-3.2.9/lib/active_record/railties/databases.rake:179:in `block (2 levels) in <top (required)>'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/task.rb:227:in `call'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/task.rb:227:in `block in execute'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/task.rb:222:in `each'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/task.rb:222:in `execute'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/task.rb:166:in `block in invoke_with_call_chain'
/usr/local/rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/task.rb:159:in `invoke_with_call_chain'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/task.rb:152:in `invoke'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/application.rb:141:in `invoke_task'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/application.rb:99:in `block (2 levels) in top_level'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/application.rb:99:in `each'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/application.rb:99:in `block in top_level'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/application.rb:108:in `run_with_threads'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/application.rb:93:in `top_level'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/application.rb:71:in `block in run'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/application.rb:158:in `standard_exception_handling'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/lib/rake/application.rb:68:in `run'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/gems/rake-10.0.2/bin/rake:37:in `<top (required)>'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/bin/rake:19:in `load'
/usr/local/rvm/gems/ruby-1.9.3-p327#global/bin/rake:19:in `<main>'
/usr/local/rvm/gems/ruby-1.9.3-p327/bin/ruby_noexec_wrapper:14:in `eval'
/usr/local/rvm/gems/ruby-1.9.3-p327/bin/ruby_noexec_wrapper:14:in `<main>'
Tasks: TOP => db:migrate
** my database.yml file**
development:
adapter: postgresql
encoding: unicode
database: db_pchamara
pool: 5
username: db_test_user
password: password
host: 192.168.1.101
port: 5432
test:
adapter: postgresql
encoding: unicode
database: db_pchamara_test
pool: 5
username: db_test_user
password: password
production:
adapter: postgresql
encoding: unicode
database: db_pchamara_production
pool: 5
username: db_test_user
password: password
Guys I got answer to my question...
When we start a new project with rails command like 'rails new demo' we have to include '--database=postgresql'. Then only the pg gem will gets to the bundle.. If it is not declared the pg gem will not comes to bundle..
And what i did in database.yml file is also correct. Everything is fine there...
When we use the database of postgresql to rails, we have to make some modifications to pg_hba.conf that is located in the lib directory..
I made some modifications there at my ip to TRUST where before it is md5..
we Can use both TRUST and md5.
md5- requires a passowrd to connect to database
trust- not requires a password
thats it.. as ususal include password to database.yml file.
Now the server runs without any error...
THANKS TO EVERYONE WHO HELPED ME TO FIGURE OUT THIS PROBLEM

Resources