質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.02%
Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Q&A

解決済

【Rails】SQLiteからPostgreSQLに変更する方法

rinpei
rinpei

総合スコア1

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

1回答

0グッド

0クリップ

378閲覧

投稿2022/11/22 13:42

編集2022/11/27 12:42

前提

Ruby on RailsでLINE APIを使い、LINE チャットボットを作成しています。

SQLiteでのローカルでの動作は確認できました。

  • しかし、PostgreSQLをインストールしてbundle installした後、db:migrateした際に以下のエラーメッセージが発生しました。

実現したいこと

  • "dpg-cdr3he9gp3jnj84cco80-a"の謎を解きたい。
  • SQLiteからPostgreSQLに変更してRenderでデプロイしたい。

発生している問題・エラーメッセージ

cmd

1>rails db:migrate 2rails aborted! 3PG::ConnectionBad: could not translate host name "dpg-cdr3he9gp3jnj84cco80-a" to address: Unknown host 4 5>rails db 6psql: エラー: ホスト名"dpg-cdr3he9gp3jnj84cco80-a"をアドレスに変換できませんでした: Unknown host

"dpg-cdr3he9gp3jnj84cco80-a"って何なんや…?

該当のソースコード

ポスグレで"my_app"という名前でDB作ってあります。
エラーで"ホスト名"が悪さしてるっぽいから、hostが悪いのか…?

database.yml

1default: &default 2 adapter: postgresql 3 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> 4 timeout: 5000 5 encoding: utf8 6 username: my_app 7 password: <%= ENV['postgreSQL_PASSWORD'] %> 8 host: localhost 9 10development: 11 <<: *default 12 database: my_app_development 13 14test: 15 <<: *default 16 database: my_app_test 17 18production: 19 <<: *default 20 datebase: my_app_production

途中にpg入ってます。

Gemfile.lock

1# (18 Gemfile dependencies, 80 gems now installed.) 2GEM 3 remote: https://rubygems.org/ 4 specs: 5 actioncable (5.2.8.1) 6 actionpack (= 5.2.8.1) 7 nio4r (~> 2.0) 8 websocket-driver (>= 0.6.1) 9 actionmailer (5.2.8.1) 10 actionpack (= 5.2.8.1) 11 actionview (= 5.2.8.1) 12 activejob (= 5.2.8.1) 13 mail (~> 2.5, >= 2.5.4) 14 rails-dom-testing (~> 2.0) 15 actionpack (5.2.8.1) 16 actionview (= 5.2.8.1) 17 activesupport (= 5.2.8.1) 18 rack (~> 2.0, >= 2.0.8) 19 rack-test (>= 0.6.3) 20 rails-dom-testing (~> 2.0) 21 rails-html-sanitizer (~> 1.0, >= 1.0.2) 22 actionview (5.2.8.1) 23 activesupport (= 5.2.8.1) 24 builder (~> 3.1) 25 erubi (~> 1.4) 26 rails-dom-testing (~> 2.0) 27 rails-html-sanitizer (~> 1.0, >= 1.0.3) 28 activejob (5.2.8.1) 29 activesupport (= 5.2.8.1) 30 globalid (>= 0.3.6) 31 activemodel (5.2.8.1) 32 activesupport (= 5.2.8.1) 33 activerecord (5.2.8.1) 34 activemodel (= 5.2.8.1) 35 activesupport (= 5.2.8.1) 36 arel (>= 9.0) 37 activestorage (5.2.8.1) 38 actionpack (= 5.2.8.1) 39 activerecord (= 5.2.8.1) 40 marcel (~> 1.0.0) 41 activesupport (5.2.8.1) 42 concurrent-ruby (~> 1.0, >= 1.0.2) 43 i18n (>= 0.7, < 2) 44 minitest (~> 5.1) 45 tzinfo (~> 1.1) 46 addressable (2.8.1) 47 public_suffix (>= 2.0.2, < 6.0) 48 archive-zip (0.12.0) 49 io-like (~> 0.3.0) 50 arel (9.0.0) 51 bindex (0.8.1) 52 bootsnap (1.13.0) 53 msgpack (~> 1.2) 54 builder (3.2.4) 55 byebug (11.1.3) 56 capybara (3.36.0) 57 addressable 58 matrix 59 mini_mime (>= 0.1.3) 60 nokogiri (~> 1.8) 61 rack (>= 1.6.0) 62 rack-test (>= 0.6.3) 63 regexp_parser (>= 1.5, < 3.0) 64 xpath (~> 3.2) 65 childprocess (4.1.0) 66 chromedriver-helper (2.1.1) 67 archive-zip (~> 0.10) 68 nokogiri (~> 1.8) 69 coffee-rails (4.2.2) 70 coffee-script (>= 2.2.0) 71 railties (>= 4.0.0) 72 coffee-script (2.4.1) 73 coffee-script-source 74 execjs 75 coffee-script-source (1.12.2) 76 concurrent-ruby (1.1.10) 77 crass (1.0.6) 78 dotenv (2.8.1) 79 dotenv-rails (2.8.1) 80 dotenv (= 2.8.1) 81 railties (>= 3.2) 82 duktape (2.6.0.0) 83 erubi (1.11.0) 84 execjs (2.8.1) 85 ffi (1.15.5-x64-mingw32) 86 globalid (1.0.0) 87 activesupport (>= 5.0) 88 i18n (1.12.0) 89 concurrent-ruby (~> 1.0) 90 io-like (0.3.1) 91 jbuilder (2.11.5) 92 actionview (>= 5.0.0) 93 activesupport (>= 5.0.0) 94 line-bot-api (1.25.0) 95 loofah (2.19.0) 96 crass (~> 1.0.2) 97 nokogiri (>= 1.5.9) 98 mail (2.7.1) 99 mini_mime (>= 0.1.1) 100 marcel (1.0.2) 101 matrix (0.4.2) 102 method_source (1.0.0) 103 mini_mime (1.1.2) 104 minitest (5.16.3) 105 msgpack (1.6.0) 106 nio4r (2.5.8) 107 nokogiri (1.13.8-x64-mingw32) 108 racc (~> 1.4) 109 pg (1.4.5-x64-mingw32) 110 public_suffix (5.0.0) 111 puma (3.12.6) 112 racc (1.6.0) 113 rack (2.2.4) 114 rack-test (2.0.2) 115 rack (>= 1.3) 116 rails (5.2.8.1) 117 actioncable (= 5.2.8.1) 118 actionmailer (= 5.2.8.1) 119 actionpack (= 5.2.8.1) 120 actionview (= 5.2.8.1) 121 activejob (= 5.2.8.1) 122 activemodel (= 5.2.8.1) 123 activerecord (= 5.2.8.1) 124 activestorage (= 5.2.8.1) 125 activesupport (= 5.2.8.1) 126 bundler (>= 1.3.0) 127 railties (= 5.2.8.1) 128 sprockets-rails (>= 2.0.0) 129 rails-dom-testing (2.0.3) 130 activesupport (>= 4.2.0) 131 nokogiri (>= 1.6) 132 rails-html-sanitizer (1.4.3) 133 loofah (~> 2.3) 134 railties (5.2.8.1) 135 actionpack (= 5.2.8.1) 136 activesupport (= 5.2.8.1) 137 method_source 138 rake (>= 0.8.7) 139 thor (>= 0.19.0, < 2.0) 140 rake (13.0.6) 141 rb-fsevent (0.11.2) 142 rb-inotify (0.10.1) 143 ffi (~> 1.0) 144 regexp_parser (2.6.0) 145 rexml (3.2.5) 146 rubyzip (2.3.2) 147 sass (3.7.4) 148 sass-listen (~> 4.0.0) 149 sass-listen (4.0.0) 150 rb-fsevent (~> 0.9, >= 0.9.4) 151 rb-inotify (~> 0.9, >= 0.9.7) 152 sass-rails (5.1.0) 153 railties (>= 5.2.0) 154 sass (~> 3.1) 155 sprockets (>= 2.8, < 4.0) 156 sprockets-rails (>= 2.0, < 4.0) 157 tilt (>= 1.1, < 3) 158 selenium-webdriver (4.1.0) 159 childprocess (>= 0.5, < 5.0) 160 rexml (~> 3.2, >= 3.2.5) 161 rubyzip (>= 1.2.2) 162 sprockets (3.7.2) 163 concurrent-ruby (~> 1.0) 164 rack (> 1, < 3) 165 sprockets-rails (3.4.2) 166 actionpack (>= 5.2) 167 activesupport (>= 5.2) 168 sprockets (>= 3.0.0) 169 thor (1.2.1) 170 thread_safe (0.3.6) 171 tilt (2.0.11) 172 turbolinks (5.2.1) 173 turbolinks-source (~> 5.2) 174 turbolinks-source (5.2.0) 175 tzinfo (1.2.10) 176 thread_safe (~> 0.1) 177 tzinfo-data (1.2022.4) 178 tzinfo (>= 1.0.0) 179 uglifier (4.2.0) 180 execjs (>= 0.3.0, < 3) 181 web-console (3.7.0) 182 actionview (>= 5.0) 183 activemodel (>= 5.0) 184 bindex (>= 0.4.0) 185 railties (>= 5.0) 186 websocket-driver (0.7.5) 187 websocket-extensions (>= 0.1.0) 188 websocket-extensions (0.1.5) 189 xpath (3.2.0) 190 nokogiri (~> 1.8) 191 192PLATFORMS 193 x64-mingw32 194 195DEPENDENCIES 196 bootsnap (>= 1.1.0) 197 byebug 198 capybara (>= 2.15) 199 chromedriver-helper 200 coffee-rails (~> 4.2) 201 dotenv-rails 202 duktape 203 jbuilder (~> 2.5) 204 line-bot-api 205 pg 206 puma (~> 3.11) 207 rails (~> 5.2.8, >= 5.2.8.1) 208 sass-rails (~> 5.0) 209 selenium-webdriver 210 turbolinks (~> 5) 211 tzinfo-data 212 uglifier (>= 1.3.0) 213 web-console (>= 3.3.0) 214 215RUBY VERSION 216 ruby 2.6.10p210 217 218BUNDLED WITH 219 1.17.2

試したこと

主に下記の情報を参照して以下を行いました。

  1. PostgreSQLのインストール(Windows x86-64)
  2. PostgreSQLでDB作成
  3. Railsに適用(Gemfile変更、config/database.yml編集)

4. DBにレコードを挿入(してません。ローカルで既にレコード入れてあるので、そのまま移行してデプロイしたいです。)

PostgreSQL を Windows にインストールするには
https://qiita.com/tom-sato/items/037b8f8cb4b326710f71
Heroku スターターガイド (Rails 5.x)
https://devcenter.heroku.com/ja/articles/getting-started-with-rails5
PostgreSQLのインストールからRailsでのDB変更まで
https://qiita.com/krtsato/items/4565051608a63f11b316

補足情報(FW/ツールのバージョンなど)

  • ruby 2.6.10p210 (2022-04-12 revision 67958) [x64-mingw32]
  • Rails 5.2.8.1
  • psql (PostgreSQL) 13.9

感謝

ここまで読んでいただきありがとうございます!
分かる方は教えてください。
同じように悩んで分からない方は、出来ればこの質問をシェアしてほしいです。
よろしくお願いいたします。

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

rinpei

2022/11/27 04:01

rails 5 からrails 6 にバージョンアップしてみましたが、謎の文字列は変わりませんでした。 ポスグレの再インストールやバージョン変更もしてみましたが、変わりません...。 お手上げです。
rinpei

2022/11/27 12:41

2つ進展しました! 謎の文字列と一致する文字列を発見しました! デプロイするためにrender.comを利用しようと、render.comのDBの設定をしたところ、ConnectionsのHostnameと一致していました。 また、上記のエラーメッセージは、Gemfileのgem 'chromedriver-helper'をgem 'webdrivers'に変更したところ発生するようになったことが分かりました。 結局renderにデプロイはできていないので、問題は解決していませんが、そちらは別で質問します。

回答1

0

ベストアンサー

「PG::ConnectionBad: could not translate host name "" to address: Unknown host」というキーワードで検索しただけですが、下記などで解決しないでしょうか?
https://qiita.com/at-946/items/2fb75cec5355fad4050d

そもそもDBをPostgreSQLに変換するだけならコマンド1つで良いはずです。
rails db:system:change --to=postgresql

分かる方は土下座しますので、教えてください。

意味のない文章を書く必要はやめましょう。

投稿2022/11/22 22:06

no1knows

総合スコア3363

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

rinpei

2022/11/22 23:18

ご回答ありがとうございます! 引用いただいたサイトも既に見ました!😢 質問で書いている通り、私は仮装環境を構築していません。 となると引用元から参考に出来るとするなら 「その値をconfig/database.ymlのpasswordに定義」というところかと思いますが、それも既にやってあります。 また、コマンドの方はRails6から使用可能であり、私の動作環境はRails5です。 一つはRails6にバージョンアップすることかと思いますのでやってみますが、そもそもの”dpg-cdr3he9gp3jnj84cco80-a"の謎が解けていません。 お詳しい方とお見受けしましたので、厚かましいですが、是非ご回答いただきたいです! また、最後の挨拶は無駄でしたね…。反省します。
no1knows

2022/11/23 00:38

こちらこそきちんと読み込んでいなくて申し訳ないです。 そもそもPostgreSQLは立ち上がっていますか?
rinpei

2022/11/23 11:35 編集

ご回答ありがとうございます。 また、返信が遅くなり申し訳ございません。 一応psqlコマンドでDBに接続し、postgres=# の状態や、my_app_development=# の状態で同じくrails db:migrateコマンドしましたが、同じエラーでした。 また、services.mscでもpostgresql-x64-15は状態:実行中 でした。 上記の状態が「PostgreSQL」が立ち上がっている状態ということで間違いないでしょうか? 検索していると「PostgreSQLサーバーを立ち上げる」というようなサイトがありました。 しかし私の理解が間違っていなければ、サーバーに関してはherokuでデプロイすることで構築の必要が無いということだと思っています。 なので、PostgreSQLサーバーを立ち上げるということではない、ですよね?
rinpei

2022/11/27 12:43

no1knows様 質問へのコメントで追記しましたが、謎は少し解けました。 しかし、問題は解決していないので別で質問しようと思います。 ご回答ありがとうございました。

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.02%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。