Installing PostgreSQL on Ubuntu for Ruby on Rails
Here are the steps I've followed:
Install PostgreSQL and development package
$ sudo apt-get install postgresql$ sudo apt-get install libpq-dev
Set up a user that is the same as my Ubuntu log-in
$ sudo su postgres -c psqlpostgres=# CREATE ROLE <username> SUPERUSER LOGIN;postgres=# \q
Modify Gemfile
# Remove gem 'sqlite3'gem 'pg'
Modify database.yml
in app directory
development: adapter: postgresql encoding: unicode database: appname_development pool: 5 timeout: 5000 username: <username> password:test: adapter: postgresql encoding: unicode database: appname_test pool: 5 timeout: 5000 username: <username> password:
Run bundle install
$ bundle install
Create databases and migrations
$ rake db:create:all$ rake db:migrate
Here are the sources I used to help:
http://mrfrosti.com/2011/11/postgresql-for-ruby-on-rails-on-ubuntu/
http://railscasts.com/episodes/342-migrating-to-postgresql
https://devcenter.heroku.com/articles/local-postgresql
For all Ubuntu 13.10
users that open this thread follow the steps below to install postresql
:
sudo sh -c "echo 'deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main' > /etc/apt/sources.list.d/pgdg.list"wget --quiet -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add -sudo apt-get updatesudo apt-get install postgresql-common -t saucysudo apt-get install postgresql-9.2 libpq-dev
since there isn't an official Postgres repository for Ubuntu 13.10
.
Then create the user as Nick
explain (you can specify a password too):
sudo su postgres -c psqlpostgres=# CREATE ROLE gotqn SUPERUSER LOGIN;postgres=# \password gotqnpostgres=# \q
Note: Replace the gotqn
above with whoami
result:
The easiest way to create your rails application is to specify you are using postgresql
as follows:
rails new Demo -d postgresql
The code above will automatically add the pg
gem in your GemFile
and create appropriate database.yml
file:
development: adapter: postgresql encoding: unicode database: Demo_development pool: 5 username: gotqn password: mypass
Note: You need to change the username and to specify the correct password if you have set such.
Then run rake db:create
and start the rails server.
sudo sh -c "echo 'deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main' > /etc/apt/sources.list.d/pgdg.list"
wget --quiet -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get install postgresql-common
sudo apt-get install postgresql-9.3 libpq-dev