CentOS5.4にyumでMongoDBをインストール
CentOS5.4にyumでMongoDBをインストールしてみる。
# cat /etc/redhat-release CentOS release 5.4 (Final)
http://www.mongodb.org/display/DOCS/CentOS+and+Fedora+Packages を参考にパッケージの取得先を追加する。
# cat /etc/yum.repos.d/MongoDB.repo [10gen] name=10gen Repository baseurl=http://downloads.mongodb.org/distros/centos/5.4/os/i386/ gpgcheck=0 enabled=1
yumでstable版をインストールする。
# yum search mongo # yum install mongo-stable mongo-stable-debuginfo mongo-stable-devel mongo-stable-server # rpm -aq | grep mongo mongo-stable-devel-20100520-mongodb_1 mongo-stable-20100520-mongodb_1 mongo-stable-server-20100520-mongodb_1 mongo-stable-debuginfo-20100520-mongodb_1
今回インストールされたMongoDBのバージョンは1.4.2らしい。
# /usr/bin/mongod --version db version v1.4.2, pdfile version 4.5 Tue May 25 01:10:24 git version: 53749fc2d547a3139fcf169d84d58442778ea4b0
一緒にインストールされた起動スクリプトを実行してプロセスを見てみる。
設定ファイルを喰わせてるようだ。
# /etc/init.d/mongod start Starting mongod: all output going to: /var/log/mongo/mongod.log forked process: 19073 # ps ax | grep mongo 19073 ? Ssl 0:00 /usr/bin/mongod -f /etc/mongod.conf 19081 pts/1 R+ 0:00 grep mongo
mongodの設定ファイル(デフォルト)で有効になっている値を見てみる。
# egrep '^[^#]' /etc/mongod.conf logpath=/var/log/mongo/mongod.log logappend=true fork = true dbpath=/var/lib/mongo
mongodが使用しているポート(デフォルト)は、27017?・・・なんか2つ出てきた。
# lsof -i | grep mongo mongod 19073 mongod 5u IPv4 359243 TCP *:27017 (LISTEN) mongod 19073 mongod 7u IPv4 359245 TCP *:28017 (LISTEN)
とりあえず対話シェルで試してみる。
データベースやコレクションは、データを保存すると自動的に作られる?
$ mongo MongoDB shell version: 1.4.2 url: test connecting to: test type "help" for help > > use testdb switched to db testdb > > for (var i = 1; i < 10; i++) db.testcoll.save({ key1: i, key2: i*2, key3: 'val-'+ i }); > > db.testcoll.find(); { "_id" : ObjectId("4bfaac75407cf9e2040dbbc6"), "key1" : 1, "key2" : 2, "key3" : "val-1" } { "_id" : ObjectId("4bfaac75407cf9e2040dbbc7"), "key1" : 2, "key2" : 4, "key3" : "val-2" } { "_id" : ObjectId("4bfaac75407cf9e2040dbbc8"), "key1" : 3, "key2" : 6, "key3" : "val-3" } { "_id" : ObjectId("4bfaac75407cf9e2040dbbc9"), "key1" : 4, "key2" : 8, "key3" : "val-4" } { "_id" : ObjectId("4bfaac75407cf9e2040dbbca"), "key1" : 5, "key2" : 10, "key3" : "val-5" } { "_id" : ObjectId("4bfaac75407cf9e2040dbbcb"), "key1" : 6, "key2" : 12, "key3" : "val-6" } { "_id" : ObjectId("4bfaac75407cf9e2040dbbcc"), "key1" : 7, "key2" : 14, "key3" : "val-7" } { "_id" : ObjectId("4bfaac75407cf9e2040dbbcd"), "key1" : 8, "key2" : 16, "key3" : "val-8" } { "_id" : ObjectId("4bfaac75407cf9e2040dbbce"), "key1" : 9, "key2" : 18, "key3" : "val-9" } > > quit();
設定ファイルの中で指定しているdbpathの場所にデータベースのファイルができていた。
$ ll -th /var/lib/mongo/ 合計 81M drwxr-xr-x 2 mongod mongod 4.0K 5月 25 01:42 _tmp -rw------- 1 mongod mongod 64M 5月 25 01:42 testdb.0 -rw------- 1 mongod mongod 16M 5月 25 01:42 testdb.ns -rwxr-xr-x 1 mongod mongod 6 5月 25 01:26 mongod.lock
もう1回対話シェルで接続して、今度はデータベースを削除してみる。
$ mongo MongoDB shell version: 1.4.2 url: test connecting to: test type "help" for help > > use testdb > switched to db testdb > db.dropDatabase() { "dropped" : "testdb.$cmd", "ok" : 1 } > > quit();
dbpathの場所からもデータベースのファイルが消えた。
$ ll -th /var/lib/mongo/ 合計 8.0K drwxr-xr-x 2 mongod mongod 4.0K 5月 25 01:42 _tmp -rwxr-xr-x 1 mongod mongod 6 5月 25 01:26 mongod.lock
今日はここまで。
参考:
http://www.mongodb.org/display/DOCS/Home
http://www.mongodb.org/display/DOCSJP/Home
英語がサッパリなので翻訳してもらえるのはすごく有難い。