Mac MongoDBをHomebrewからインストールして起動する

HomebrewからMongoDBをインストールした時のMongoDBの起動

こんなエラーが出て起動できなかったのでメモ。下にまとめ。

$ mongo foo
MongoDB shell version v3.4.10
connecting to: mongodb://127.0.0.1:27017/foo
2017-11-01T16:14:33.082+0900 W NETWORK  [thread1] Failed to connect to 127.0.0.1:27017, in(checking socket for error after poll), reason: Connection refused
2017-11-01T16:14:33.082+0900 E QUERY    [thread1] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed :
connect@src/mongo/shell/mongo.js:237:13
@(connect):1:6
exception: connect failed

調べると、osx - Cannot connect to mongodb errno:61 Connection refused - Stack Overflow で、対処法があった。

MongoDBのデーモンプロセスmongodを起動する必要があり、起動の前に、DB用のディレクトリを作成しなければならない。デフォルトは/data/dbが指定されている。

そのディレクトリを作成して、sudo mongodでデーモンを起動できる。そのあとmongoでシェルを起動すればいい。

ディレクトリを指定したい時は、linux - MongoDB Data directory /data/db not found - Stack Overflowのように、デーモン起動時にmongod --dbpath /data/<path>を使って指定する。

まとめ

# install
brew update
brew install mongodb

# set and run daemon
sudo mkdir -p /data/db
sudo mongod

# run shell
mongo

# stop daemon
kill <PID for mongod>

停止がこれでいいのか疑問。PIDps -e | grep mongodで調べる。

コメント

タイトルとURLをコピーしました