Unable to run rake db:create:all

I am able to create databases (development, test, and production
databases) as follows
.................................................................
ajit@ajit:~$ su - postgres
Password:
postgres@ajit:~$ psql
postgres=# create DATABASE book_shelf_development;
CREATE DATABASE
postgres=# create DATABASE book_shelf_test;
CREATE DATABASE
postgres=# create DATABASE book_shelf_production;
CREATE DATABASE
postgres=#

................................................................

But when I try to create same databases using the command
'rake db:create:all', I am getting an error massage saying 'FATAL:
Ident authentication failed for user "postgres"'. And none of the
databases are created.

  And also after creating databases as shown above, I created migration
files and I am able to do rake db:migrate for the same database.yml
file.

Can you please help me why 'rake db:create:all' is not working?

Thank you
  Ajit

Possibly you have the correct user/password for the development db but
not for one of the others. Try using create to create them one at a
time and see if one fails. Also check the yml file very carefully for
small errors. Possibly copy/paste the user/password lines from the
development section to the others.

Colin

I am able to create databases (development, test, and production
databases) as follows
.................................................................
ajit@ajit:~$ su - postgres
Password:
postgres@ajit:~$ psql
postgres=# create DATABASE book_shelf_development;
CREATE DATABASE
postgres=# create DATABASE book_shelf_test;
CREATE DATABASE
postgres=# create DATABASE book_shelf_production;
CREATE DATABASE
postgres=#

................................................................

But when I try to create same databases using the command
'rake db:create:all', I am getting an error massage saying 'FATAL:
Ident authentication failed for user "postgres"'. And none of the
databases are created.

And also after creating databases as shown above, I created migration
files and I am able to do rake db:migrate for the same database.yml
file.

Can you please help me why 'rake db:create:all' is not working?

Maybe the practical solution for the OP then is to do

$ createuser ajit
Shall the new role be a superuser? (y/n) y

and that will at least reduce the need to use the ‘postgres’ user.

In that case the database.yml could look like

development:
adapter: postgresql
encoding: unicode
pool: 5
min_messages: log

As described by Craig.

Do NOT mention localhost (then you will go over local socket, using the

user authentication of user ‘ajit’ to get in locally).

HTH,

Peter