#mysql #ruby-on-rails #sqlite #postgresql
#mysql #ruby-on-rails #sqlite #postgresql
Вопрос:
Я нашел информацию, объясняющую, как настроить приложение Rails с самого начала, используя базу данных PostgreSQL. Но у меня уже есть созданное приложение. Есть какие-либо рекомендации по шагам, которые следует предпринять, чтобы изменить мое существующее приложение на использование PostgreSQL вместо SQLite?
Ответ №1:
Если вы используете Rails 6 , вы можете сделать это:
rails db:system:change --to=postgresql
где postgresql
будет база данных, которую вы хотите.
Это было включено этим коммитом.
Комментарии:
1. Но когда я набираю эту команду, она говорит «недопустимый параметр: —to=postgresql».
Ответ №2:
Установите драгоценный камень pg в свой Gemfile
драгоценный камень ‘pg’
измените файл database.yml, чтобы использовать вашу базу данных, например.
adapter: postgresql
database: db_name
pool:
timeout:
host: localhost
username: username
password: password
значения db_name, username и password — это те значения, которые вы также установили для своей базы данных postgresql
Комментарии:
1. После этого мне пришлось перезапустить мой rails-сервер
Ответ №3:
Следует отметить один момент: при таком переключении не будут учитываться какие-либо записи данных в самой базе данных SQLite, а только структура базы данных. Если вы хотите выполнить миграцию из одной базы данных в другую, И у вас было много данных в старой базе данных, которые вы хотите перенести в новую базу данных, вы можете использовать yaml_db
gem.
Это позволило бы вам экспортировать данные в файл дампа YAML, переключить адаптер базы данных, создать и перенести базу данных, затем импортировать дамп YAML обратно в новую базу данных.
На самом деле я недавно опубликовал видео на YouTube именно на эту тему, на случай, если вы, как и я, больше разбираетесь в визуальном обучении.