Ari-Press

エンジニアAriのブログ.

MongoDBのセットアップ

MongoDB

前回に引き続きデータベースのセットアップについてです。

今回はNoSQLの中でも活用事例が多く、地理検索にも対応したMongoDBのセットアップを行いたいと思います。

MongoDBのインストール

今回もMacOSX Mountain Lion(10.8.2)の環境に、Homebrewを使ってインストールしていきます。

まず叩くコマンドはbrew install mongodb。これはすぐでした。簡単に入るものですね。

MongoDBの設定

Homebrewで入れたMongoDBの設定ファイルはどうやら/usr/local/etc/mongod.confにあるようですね。

この設定ファイル内でlogpath = /usr/local/var/log/mongodb/mongo.loglogpath = /var/log/mongodb/mongo.logに修正しました。このあたりは完全に僕の好みです。

上記の設定に対応するため、sudo mkdir /var/log/mongodbsudo chown user:group /var/log/mongodbを実行しました。ログの吐き先を設定した感じですね。

MongoDBの起動

MongoDBの起動コマンドはmongodらしいのでこれを実行してみます。

1
2
$ mongod
all output going to: /var/log/mongodb/mongo.log

ログは全部/var/log/mongodb/mongo.logに吐いてるよ!と言われました。なので試しにtail -f /var/log/mongodb/mongo.logをしてみると確かにログが吐かれていますね。正常に起動しているみたいです。

MongoDBクライアント

MongoDBに接続してデータベースを弄ったりするクライアントはmongoで起動できます。試しに打ってみると対話式のプロンプトが登場しました。MongoDBはすぐ動いていいですね。

プロンプト内で次のように実行するとデータベースの一覧が確認できます。

1
2
> show dbs
local   (emptry)

まだDBが無い状態みたいですね。

続いて違うデータベースを使用すると宣言してみます。

1
2
> use db
switched to db test

違うDBに移動して、何かを保存し始めるとデータベースが作成されるみたいです。

1
2
3
4
5
6
7
8
> show dbs
local   (emptry)
> db.articles.insert({name: "hoge", desc: "fuga!"})
> db.articles.find()
{ "_id" : ObjectId("50cca4e670b2612adafb4b1d"), "name" : "hoge", "desc" : "fuga!" }
> show dbs
local   (empty)
test    0.203125GB

こんな感じで使い始めることができます。

おまけ: 実験で作ったデータベースを削除

db.dropDatabase()を使います。消すときはdbを実行して、どのデータベースが削除されるかを確認!これ大事です。

1
2
3
4
5
6
7
8
9
> show dbs
local   (empty)
test    0.203125GB
> db
test
> db.dropDatabase()
{ "dropped" : "test", "ok" : 1 }
> show dbs
local   (empty)

Comments