I recently got a new machine and would now like to work on my projects from Github. I'm curious as to how to properly set up the Postgres database on my local machine. I have postgresql
, pgadmin3
and libpq-dev
installed on Ubuntu (12.04).
I pull down the project:
git clone https://github.com/thebenedict/cowsnhills.git
and run:
bundle
.
When I run:
rake db:create && rake db:schema:load
I get this error:
rake db:create && rake db:schema:load
FATAL: password authentication failed for user "cnh"
FATAL: password authentication failed for user "cnh"
....
The config/database.yml
file looks like this:
development:
adapter: postgresql
encoding: unicode
host: localhost
database: cnh_development
pool: 5
username: cnh
password: cnh
test:
adapter: postgresql
encoding: unicode
host: localhost
database: cnh_test
pool: 5
username: cnh
password: cnh
production:
adapter: postgresql
encoding: unicode
host: localhost
database: cnh_production
pool: 5
username: cnh
password: cnh
What's the proper way to set up the Postgres database so I can run this project on my local machine?
Right now when I start the Rails server I get:
I came across your question when looking for the same answer. I attempted to follow the instructions @prasad.surase gave you. The problem I found is the ppa repository is going to depreciate soon on 12.04 LTS. Instead I found this link and it really helped.
PostgreSQL setup for Rails development in Ubuntu 12.04
Install postgresql and admin tools through the package manager
sudo apt-get install postgresql libpq-dev phppgadmin pgadmin3
Login to postgresql prompt as the postgres user
sudo su postgres -c psql
Create a postgresql user for your project
create user username with password 'password';
Setup your postgres user with the same name and password as your Ubuntu user and make him a postgres superuser
alter user username superuser;
Create the development and test databases
create database projectname_development;
create database projectname_test;
Give permissions to the user on the databases
grant all privileges on database projectname_development to username;
grant all privileges on database projectname_test to username;
To end the postgresql session type \q
Update password for the user
alter user username with password ‘new password’;