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?
Réponses
Trop de publicités?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
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:
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.