アシアルブログ

アシアルの中の人が技術と想いのたけをつづるブログです

MongoDBのWeb管理ツール「mViewer」

こんにちは、中川です。

MongoDBの生データを確認したい時などに、
mongoシェルだけではちょっと不便だなという場合に、
今回はMongoDBのWebベースGUIツールのmViewerをご紹介したいと思います。


■mViewer


mViewerはJavaで作られている、WebベースのMongoDBデータ管理アプリです。
Apache License, Version 2.0でGithubで公開されています。

https://github.com/Imaginea/mViewer

セットアップも非常に簡単で、上記URLの「Download mViewer-v0.9.1」から
ダウンロードしたファイルを解凍して、起動するだけです。

これで、デフォルトでは、8080番でブラウザでアクセスすることができます。
※mViewer.propertiesの設定で変更できます。



dbの作成・削除、collectionsの作成・削除等や、クエリの実行などができるようです。
エンジニア以外の人でもデータの確認用に使ったりできますので、非常に便利ですね。

※注意点
現状の0.9.1ではMongoDBで認証を使っている場合は、
ログインできないことがあるようですが、近々リリース予定の次のバージョンでは修正されているようです。
現在のmasterをビルドして動作確認できました。
参考:https://github.com/Imaginea/mViewer

■その他のツール


他にもたくさん以下のURLで紹介されていますので、ご確認ください。

http://www.mongodb.org/display/DOCS/Admin+UIs

■printjson


ちなみに、普段はMongoのシェルでも確認していますが、
普通にfindするとズラズラ〜と出てきて非常に見づらいですよね。
そんな時は、printjson関数を使えば整形されて見やすくなります。



> db.users.find();
{ "_id" : ObjectId("506b958fb9e8c7cfc57cce86"), "firstname" : "aaa", "lastname" : "xxx", "age" : 20 }
{ "_id" : ObjectId("506b959fb9e8c7cfc57cce87"), "firstname" : "bbb", "lastname" : "yyy", "age" : 30 }
{ "_id" : ObjectId("506b95a7b9e8c7cfc57cce88"), "firstname" : "ccc", "lastname" : "zzz", "age" : 40 }


>>BOXNC
> db.users.find().forEach(printjson);
{
"_id" : ObjectId("506b958fb9e8c7cfc57cce86"),
"firstname" : "aaa",
"lastname" : "xxx",
"age" : 20
}
{
"_id" : ObjectId("506b959fb9e8c7cfc57cce87"),
"firstname" : "bbb",
"lastname" : "yyy",
"age" : 30
}
{
"_id" : ObjectId("506b95a7b9e8c7cfc57cce88"),
"firstname" : "ccc",
"lastname" : "zzz",
"age" : 40
}