私の外部記憶装置

ただの覚え書きです。ちょこちょこ加筆・修正しています。

【Rails】「PG::ObjectInUse: ERROR: 〜」でdb操作できず

状況

ローカルのdevelopment環境で、データを入れ直そうと bin/rails db:drop した所、以下のエラーメッセージが出た

PG::ObjectInUse: ERROR: database "bootcamp_development" is being accessed by other users DETAIL: There is 1 other session using the database. Couldn't drop database 'bootcamp_development' rails aborted! (以下略)

対応

以下の手順で、該当するプロセスをキルするすればOK

  1. ps aux | grep postgres
  2. ps aux | head -n 1:各項目のタイトルを表示(↓)
    USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND
  3. COMMANDpostgres: ユーザ名 bootcamp_development [local] idle のプロセスID(上記 PID )を確認
  4. kill プロセスID