環境
・ruby on rails 5.2
・heroku
・ClearDB MySQL
タイトル通りの問題が起きております。
既にherokuのマスターブランチにはpushが成功している状態で、あとはheroku run rake db:migrate
を実行しマイグレーションを行うだけだったのですが、、、、以下のようなエラーが出て失敗します(念の為伏せ文字にしてます。。。)
Mysql2::Error::ConnectionError: Access denied for user 'b8.........'@'ip-..-..-...-....ec2.internal' (using password: YES)
仕様しているDBはmysql2です。
ClearDBアドオンを用いてDBの設定をMySQL2に変えており、heroku configで開いたDATABASE_URL:~~~
の箇所はDATABASE_URL: mysql2://~~~~~reconnect=true
としっかりとMySQL2になっているのでここは問題ではないと感じております。
エラーログをみるとAccess denied for user 'b88.......'
となっており、heroku側のmysqlから拒否られてる
感じなのですがどう解決すればよいでしょうか?何かheroku側で設定すべきなのでしょうか?
一応なぜエラーが吐かれているか分からないので、database.ymlのproductionの設定も載せます。
production: <<: *default database: アプリ名_production username: アプリ名 password: <%= ENV['アプリ名_DATABASE_PASSWORD'] %>
いつもローカルでは特にパスワードとかは設定せずsequelproを使ってDBの中身をみたりしていたので、調べていて本番環境のパスワードは環境変数越しに読み込むべきと知りました。
ちなみにこの環境変数ってのをherokuにおいてどこで設定すればよいのも分からず、、、もしかしたらこの環境変数を設定していないせいなのではないかと考えております。。。
他者さんの質問を見ますとpoorやらhostなど色々設定されている姿も見受けられ、設定項目が足りないのではないかと思いました、、、
あと一歩でweb上で自分が作ったサービスが見られそうなのに非常に悔しいです。。。どうしてもデプロイしてみたいです。。。宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/30 16:17
2018/09/30 16:20
2018/10/01 02:16
2018/10/01 05:32
2018/10/01 05:38
2018/10/01 09:37
2018/10/01 09:38
2018/10/01 11:41
2018/10/01 12:01
2018/10/01 17:10