#エラー内容
Rails5で作ったSNSのようなサービスを、Herokuにデプロイしたのですが、新規ユーザー登録画面で
ユーザー情報を入力しても、
このエラーが出てきて先に進めません。
Herokuのログは下記画像のようになっています。
#行った対処
RailsのデータベースをSQLiteからPostgresqlに変える方法【デイトラ】
こちらの記事を参考に、gemfileへの追記・変更や、
gem 'pg', '>= 0.18', '<2.0'
datebase.ymlの変更
# データベースをSQliteからPostgresqlに変更 default: &default adapter: postgresql encoding: unicode pool: 5 timeout: 5000 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> development: <<: *default database: coffee_app_development test: <<: *default database: coffee_app_test production: <<: *default database: coffee_app_production username: coffee_app password: <%= ENV['DATABASE_PASSWORD'] %> host: <%= ENV['DATABASE_HOST'] %>
を行って、
$rails db:create
$rails db:migrate
$rails db:seed
などを実行してみましたが、結果は変わらずです。
####補足
先ほど記載したURLのサイトの中で「postgreSQLを起動してみよう」という箇所があり、自身のターミナルで
pg_ctl start -D /usr/local/var/postgres
と実行してみたところ、
pg_ctl: another server might be running; trying to start server anyway waiting for server to start....2021-01-19 12:50:55.434 JST [29445] FATAL: lock file "postmaster.pid" already exists 2021-01-19 12:50:55.434 JST [29445] HINT: Is another postmaster (PID 3904) running in data directory "/usr/local/var/postgres"? stopped waiting pg_ctl: could not start server Examine the log output.
のようなエラーが出たので、
ps aux | grep postgresql
kill -9 PID番号
を実行して、もう一度
ps aux | grep postgresql
で確認してみると、先程のkillしたPID番号は無くなり表示が変わりましたが、別のPID番号の物が動いていました。
なので、
tail /usr/local/var/postgres/server.log
を実行したのですが、
tail: /usr/local/var/postgres/server.log: No such file or directory
と返ってきました。
参照URLの記事では、
2020-09-14 14:45:39.582 JST [71593] FATAL: lock file "postmaster.pid" already exists 2020-09-14 14:45:39.582 JST [71593] HINT: Is another postmaster (PID 71564) running in data directory "/usr/local/var/postgres"?
のようなログが返ってくると書いてあるのですが、この現象も原因となっているのでしょうか?
いろいろと調べてはいるのですが、対処法がわからずにいます。
原因が分かる方がいらっしゃいましたら、ご教授いただけますと幸いです。
よろしくお願いいたします。
あなたの回答
tips
プレビュー