73 votes

Installation de PostgreSQL sur Ubuntu pour Ruby on Rails

Ruby on Rails est actuellement installé via RVM dans Ubuntu 12.04. La base de données par défaut est configurée dans SQLite3, mais j'aimerais passer à PostgreSQL dans le but de pousser vers Heroku. Comment puis-je accomplir cela?

166voto

Nick Points 2909

Voici les étapes que j'ai suivi:

Installer PostgreSQL et de développement

$ sudo apt-get install postgresql-9.1
$ sudo apt-get install libpq-dev

Configurer un utilisateur qui est le même que mon Ubuntu log-in

$ sudo su postgres -c psql
postgres=# CREATE ROLE <username> SUPERUSER LOGIN;
postgres=# \q

Modifier Gemfile

# Remove gem 'sqlite3'
gem 'pg'

Modifier la base de données.yml dans le répertoire app

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:

Exécuter la commande bundle install

$ bundle install

Créer des bases de données et des migrations

$ rake db:create:all
$ rake db:migrate

Voici les sources que j'ai utilisé pour aider à:
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

6voto

gotqn Points 4247

Pour tous Ubuntu 13.10 des utilisateurs que vous ouvrez ce fil, suivez les étapes ci-dessous pour installer 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 update
sudo apt-get install postgresql-common -t saucy
sudo apt-get install postgresql-9.2 libpq-dev

puisqu'il n'y a pas un fonctionnaire Postgres référentiel pour l' Ubuntu 13.10.

Créez l'utilisateur en tant que Nick expliquer (vous pouvez spécifier un mot de passe trop):

sudo su postgres -c psql
postgres=# CREATE ROLE gotqn SUPERUSER LOGIN;
postgres=# \password gotqn
postgres=# \q

Remarque: Remplacer le gotqn - dessus avec whoami résultat:

enter image description here

La façon la plus simple pour créer votre application rails est à spécifier que vous utilisez postgresql comme suit:

rails new Demo -d postgresql

Le code ci-dessus va ajouter automatiquement l' pg gem dans votre GemFile et de créer les database.yml le fichier:

development:
  adapter: postgresql
  encoding: unicode
  database: Demo_development
  pool: 5
  username: gotqn
  password: mypass

Remarque: Vous devez modifier le nom d'utilisateur et de spécifier le mot de passe correct si vous avez réglé.

Ensuite, exécutez rake db:create et démarrer le serveur rails.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X