LoginSignup
3
1

More than 3 years have passed since last update.

Rails + MySQLで作ったアプリをherokuにデプロイする

Last updated at Posted at 2020-05-29

※rails初心者向けの記事です。

herokuのデータベース

herokuはデフォルトのデータベース(以下DB)はPostgreSQLです。
なのでMySQLで作ったアプリをherokuにデプロイするときは次の2つがあります。

① DBをPostgreSQLに変更してherokuにデプロイ
こちらのサイトに大変お世話になりました。本記事では取り扱いません。
【初心者向け】railsアプリをherokuを使って確実にデプロイする方法【決定版】

② DBをMySQLのままherokuにデプロイ
本記事ではこちらの方法についての備忘録です。

この記事でやること

  • ClearDBアドオンを追加
  • Gemとデータベースをチェック
  • MySQLからMySQL2に変更

ClearDBアドオンを追加

ClearDB はクラウド上で提供されている MySQL データベースです。
クレジットカード必須。
データ容量5MBの最小構成であれば無料で使えます。(2020年5月現在)
詳しくは公式で。

参考 : HerokuでMySqlの設定をする

ターミナル
$ heroku addons:add cleardb

Gemとデータベースをチェック

まずはGemの確認

Gemfile
# Use mysql as the database for Active Record
  gem 'mysql2', '0.5.3'

mysql2を使っていることがわかりました。
そして以下を実行。

ターミナル
$ heroku config | grep CLEARDB_DATABASE_URL

CLEARDB_DATABASE_URL:  mysql://ユーザー名:パスワード@ホスト/データベース名?reconnect=true

このコマンドにより、自分のmysqlの情報を知ることができました。

ちなみにこのデータをSequelProに紐付けることでデータベースをGUI操作できます。
201862herokuでMySQL環境作ってやんよ!!!

MySQLからMySQL2に変更

Gemと合わせるためにmysqlからmysql2に変えましょう。

ターミナル
$ heroku config:set  DATABASE_URL='mysql2://ユーザー名:パスワード@ホスト/データベース名?reconnect=true'

詰まった方はこちらを参考に
HerokuでMySQLを使おうとして詰まったところ

参考

お世話になりました。
HerokuでMySqlの設定をする
HerokuでMySQLを使おうとして詰まったところ

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1