こんにちは!kossyです!
アマゾンジャパンが中小店舗向けのQRコード決済事業に参入とのニュースがでてました。
headlines.yahoo.co.jp
今後の動向に目が離せませんね!
さて、今回は既に作成済みのRailsアプリのDB変更手順をブログに残したいと思います。
1. gemfileを編集
デフォルトだと大体9行目にdbのバージョン指定の記述があるので、その行を編集。
(例)
gem 'mysql2', '>= 0.4.4', '< 0.6.0' => gem 'pg', '>= 0.18', '< 2.0'
2. database.ymlファイルの編集
(例)
default: &default adapter: mysql2 encoding: utf8 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> username: root password: socket: /tmp/mysql.sock development: <<: *default database: アプリ名_development test: <<: *default database: アプリ名_test production: <<: *default database: アプリ名_production username: アプリ名 password: <%= ENV['アプリ名_DATABASE_PASSWORD'] %> 以下に変更 default: &default adapter: postgresql encoding: unicode pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> development: <<: *default database: アプリ名_development test: <<: *default database: アプリ名_test production: <<: *default database: アプリ名_production username: アプリ名 password: <%= ENV['アプリ名_DATABASE_PASSWORD'] %>
3. bundle install
もしかしたら、pg(又はmysql)なんてないよ、と怒られるかもしれないので、
brew install postgresql(又はmysql)
をして、ダウンロードが終了したら、
psql --version(mysql -v)
コマンドを実行して、バージョンが表示されるか確認してみてください
mysqlの場合はそのままmysqlにログインすることがあるので、その場合はexitで退出しましょう。
また、
An error occurred while installing pg (1.1.0), and Bundler cannot continue. Make sure that `gem install pg -v '1.1.0' --source 'https://rubygems.org/'` succeeds before bundling.
と怒られた時は、
`gem install pg -v '表示されたバージョン
と実行してください。
4 .rails db:create rails db:migrate
こちらのコマンドを実行してエラーが起きなければ、移行は成功です。
参考にさせていただいた記事
https://qiita.com/pchatsu/items/a7f53da2e57ae4aca065