症状
ターミナルで$ bin/rails db:dropコマンドを入力したら以下のような画面が表示された(データベース名はセキュリティ上伏せてある)
terminal
PG::ObjectInUse: ERROR: database "XXXxxxx" is being accessed by other users
DETAIL: There are 3 other sessions using the database.
rails aborted!
ActiveRecord::StatementInvalid: PG::ObjectInUse: ERROR: database "XXXxxxx" is being accessed by other users
DETAIL: There are 3 other sessions using the database.
原因と対応
原因は作成中のアプリ以外に接続しているアプリなどはないのに接続されっぱなしになっている模様。
$ bin/rails db:migrate:resetしても改善されなかった。
PostgreSQLの再起動で回復に成功。
DBを再起動すると他のDBを使用しているアプリまで切断されることになるので実行には注意が必要。
terminal
$ brew services stop postgresql # postgresqlの停止
$ brew services stop postgresql # postgresqlの起動
# 以下のコマンドでDBアプリの状態を確認できる
$ brew services list