В настоящее время у меня Ruby on Rails, установленный через RVM в Ubuntu 12.04. База данных по умолчанию настроена в SQLite3, но я хотел бы перейти на PostgreSQL для целей нажатия на Heroku. Как я могу это сделать?
Установка PostgreSQL на Ubuntu для Ruby on Rails
Ответ 1
Вот шаги, которые я выполнил:
Установить PostgreSQL и пакет разработки
$ sudo apt-get install postgresql
$ sudo apt-get install libpq-dev
Настройте пользователя, который является таким же, как мой вход в систему Ubuntu
$ sudo su postgres -c psql
postgres=# CREATE ROLE <username> SUPERUSER LOGIN;
postgres=# \q
Изменить Gemfile
# Remove gem 'sqlite3'
gem 'pg'
Измените database.yml
в каталоге приложения
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:
Запустить пакетную установку
$ bundle install
Создание баз данных и миграций
$ rake db:create:all
$ rake db:migrate
Вот источники, которые я использовал, чтобы помочь:
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
Ответ 2
Для всех пользователей Ubuntu 13.10
, которые открывают этот поток, выполните следующие шаги, чтобы установить 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
поскольку нет официального репозитория Postgres для Ubuntu 13.10
.
Затем создайте пользователя как Nick
explain (вы также можете указать пароль):
sudo su postgres -c psql
postgres=# CREATE ROLE gotqn SUPERUSER LOGIN;
postgres=# \password gotqn
postgres=# \q
Примечание. Замените gotqn
выше результатом whoami
:
Самый простой способ создать ваше приложение rails - указать, что вы используете postgresql
следующим образом:
rails new Demo -d postgresql
Приведенный выше код автоматически добавит камень pg
в ваш GemFile
и создаст соответствующий файл database.yml
:
development:
adapter: postgresql
encoding: unicode
database: Demo_development
pool: 5
username: gotqn
password: mypass
Примечание: вам нужно изменить имя пользователя и указать правильный пароль, если вы его установили.
Затем запустите rake db:create
и запустите сервер rails.
Ответ 3
sudo sh -c "echo 'deb http://apt.postgresql.org/pub/repos/apt/ exact-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
sudo apt-get install postgresql-common
sudo apt-get install postgresql-9.3 libpq-dev