mongoコマンドが突然使えなくなった
突然、mongoコマンドが使えなくなってしまいました。
% mongo zsh: command not found: mongo
MongoDBは、Homebrew Cask Versions で古いバージョンを入れていたので、情報を確認してみます。
% brew info mongodb30 mongodb@3.0: stable 3.0.12 (bottled) [keg-only] High-performance document-oriented database https://www.mongodb.org/ /usr/local/Cellar/mongodb@3.0/3.0.12 (18 files, 145.3MB) Built from source on 2017-03-11 at 15:22:05 From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/mongodb@3.0.rb (途中省略) If you need to have this software first in your PATH run: echo 'export PATH="/usr/local/opt/mongodb@3.0/bin:$PATH"' >> ~/.zshrc To have launchd start mongodb@3.0 now and restart at login: brew services start mongodb@3.0 Or, if you don't want/need a background service you can just run: mongod --config /usr/local/etc/mongod.conf
あれ? mongodb@3.0 に名前が変わったのかな?
そういえば、今朝、brew update
したので、それが原因のような。。。
あと、PATHを設定するようにという指示が追加されていますね。
今は特にPATHを設定していなかったはず。
指示のとおりに.zshrcにPATHを追加してみます。
PATH="/usr/local/opt/mongodb@3.0/bin:$PATH"
% which mongo /usr/local/opt/mongodb@3.0/bin/mongo
解決しました!
あと、サーバー側のプロセスもおかしな状態になっている模様。
% brew services list Name Status User Plist mongodb@3.0 stopped % ps aux | grep mongo user12345 405 0.0 0.4 3945820 62960 ?? S 木07AM 1:15.11 /usr/local/opt/mongodb30/bin/mongod --config /usr/local/etc/mongod.conf user12345 13482 0.0 0.0 2432804 2024 s001 S+ 10:18AM 0:00.00 grep mongo
サービスは止まっていますが、プロセスが残っています。
プロセスを殺してサービスを起動することにします。
% kill 405 % ps aux | grep mongo shimotori 13517 0.0 0.0 2432804 1960 s001 R+ 10:23AM 0:00.00 grep mongo % brew services start mongodb@3.0 ==> Successfully started `mongodb@3.0` (label: homebrew.mxcl.mongodb@3.0) % brew services list Name Status User Plist mongodb@3.0 started user12345 /Users/user12345/Library/LaunchAgents/homebrew.mxcl.mongodb@3.0.plist
これで正常になりました。
まとめ
brew update
はちょっと注意しないといけないですね。
Dockerに移行したくなってきました。