nigoblog

暫定無職のブログ

MacにmongoDBをインストールする。そしてちょっと使ってみる。

f:id:nigohiroki:20130105220924p:plain

今回はMacにmongoDBをmacにインストールする方法について書いていきます。
インストールには「Homebrew」を使います。

  1. インストール
  2. mongoDBとは?
  3. mongoDBを操作する(コマンド)

このような流れで書いていきます。

インストール

ターミナルで確認

$ brew search mongo

mongoでサーチ
すると

mongodb	  mongoose
josegonzalez/php/php53-mongo	       josegonzalez/php/php54-mongo

色々出てきましたが目的はmongodbなので、

$ brew install mongodb

でインストール開始。
ずらずら出てきます。

To have launchd start mongodb at login:
    ln -s /usr/local/opt/mongodb/*.plist ~/Library/LaunchAgents/
Then to load mongodb now:
    launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist
Or, if you don't want/need launchctl, you can just run:
    mongod
==> Summary
/usr/local/Cellar/mongodb/2.2.0-x86_64: 20 files, 170M, built in 3.4 minutes

最後にこんな感じで出てくれば成功!
成功したらこの指示に従います。

$ ln -s /usr/local/opt/mongodb/*.plist ~/Library/LaunchAgents/
$ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist
$ mongod

と、立て続けに入力。
最後に

$ mongo -version

で確認。

MongoDB shell version: 2.2.0

と出てきました。
というわけでインストール完了。

mongoDBとは?

こちらこの動画を参考にしました。
#01 MongoDBとは何か? | MongoDBの基礎 - プログラミングならドットインストール
NoSQLの一種であり、パフォーマンスが高くスケーラブル(拡張性高)であるみたいです。
NoSQLの定義としては
RDBMSではないデータベース」とするのが一番しっくりくる気がします。

ではそんなmongoDBを色々触ってみましょう!!

mongoDBを操作する(コマンド)

まずは起動。

$ mongo
MongoDB shell version: 2.2.0
connecting to: test
> 

このような表示が出ました。

トラブルシューティング

ちなみにmongoコマンドが有効になるまでかなり時間がかかりました。
その時に出たエラーがこちら。

MongoDB shell version: 2.2.0
connecting to: test
Sat Jan  5 23:00:33 Error: couldn't connect to server 127.0.0.1:27017 src/mongo/shell/mongo.js:91
exception: connect failed

これのトラブルシューティングにかなり時間がかかりました。
解決としては、

  1. mongod --repair
  2. mongod --dbpath /var/db/mongo
  3. journalの要領不足

などなど色々ありまして解決しました。
2番目に関しては

mkdir /var/db/mongo

をした後、

mongod --dbpath /var/db/mongo

コマンドを入力します。
基本的には

$ vim /usr/local/var/log/mongodb/mongo.log

でlogを見ることによって色んなエラーが出てくることがわかります。

ERROR: dbpath (/var/db/mongo) does not exist.

 Sat Jan  5 23:21:37 [initandlisten] ERROR: Insufficient free space for journal files

などが主な原因です。

mongodbコマンド

exit

終了

help

使えるコマンドの表示

…と一個一個みていてもキリがないので良く使うコマンドまとめということでもう少しmongodbをいじるようになってから続きを書こうと思います。

というわけで今回はこの辺で。

関連図書

NoSQLデータベースファーストガイド

NoSQLデータベースファーストガイド


NoSQLまずはこちらから!