$ mongo
MongoDB shell version: 2.0.2
connecting to: test
Tue Jan 17 22:43:09 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84
exception: connect failed
まず、サーバーであるmongod(daemon??)を動かす。mongodサーバーも立ち上がっていないのにmongoコマンドを打つと下記のようなエラーが出る。自分はこれに気付くまで時間を要した。
$ mongod mongod --help for help and startup options Tue Jan 17 22:44:57 [initandlisten] MongoDB starting : pid=2198 port=27017 dbpath=/data/db/ 64-bit host=xxxxxxxxxxxxxxxxxxxxxx Tue Jan 17 22:44:57 [initandlisten] db version v2.0.2, pdfile version 4.5 Tue Jan 17 22:44:57 [initandlisten] git version: nogitversion (略)
mongodを立ち上げたので、mongoのShellを立ち上げる
$ mongo MongoDB shell version: 2.0.2 connecting to: test
ここからどんどんmongoDBのコマンドを打っていきましょう。データの入れ方は他のサイトを参考にしてもらうとして、今日はデータの参照方法について見ていく。
> show dbs db 0.203125GB local (empty) telnodb 0.203125GB test 0.203125GB
MySQLでいうSHOW DATABASES
> use test
MySQLでいうuse test
> show collections tasks users
MySQLでいうshow tables
> db.tasks.find() { "_id" : ObjectId("4f16945a0220b112a5000066"), "label" : "", "created_at" : ISODate("2012-01-18T09:43:54Z"), "title" : "aaaa", "body" : "", "updated_at" : ISODate("2012-01-18T09:43:54Z"), "role" : null, "mission_id" : ObjectId("4f15a7040c5b9f0b4c00003b") }
MySQLでいうselect * from tasks;
db.って何よ。と思っていたが、ヘルプを見ると分かる。
> help (略) db.foo.find() list objects in collection foo (略)
RDBMSとは違う点が多いので、ベストプラクティスを探るのも大変そう。