Fedora Linux に mongodb と mongodb-server をインストールする方法 (f16 と f17 で検証済み)。すべてのコマンドは、su セッションで実行することを意図しています。
1) mongodb がインストールされていないことを確認してください
# yum erase mongodb
# yum erase mongo-10gen (if it is installed)
2) Fedora yum リポジトリからインストール
# yum --disablerepo=* --enablerepo=fedora,updates install mongodb mongodb-server
3) mongod (mongodb デーモン) を起動
# systemctl start mongod.service
4) mongod が実行されていることを確認します
# systemctl status mongod.service
# tail /var/log/mongodb/mongodb.log
# nmap -p27017 localhost
または実行中のクライアント
# mongo
MongoDB shell version: 2.0.2
connecting to: test
> db.test.save( { a: 1 } )
> db.test.find()
{ "_id" : ObjectId("4fdf28f09d16204d66082fa3"), "a" : 1 }
5) 構成のカスタマイズ
# vim /etc/mongodb.conf
# systemctl restart mongod.service
6) 起動時に mongodb サービスを自動的に開始する
# systemctl enable mongod.service
Fedora 18 の更新
低速または負荷の高いマシンで systemd によって初めて開始されると、mongod サービスが初期化を完了する前にタイムアウトし、systemd がサービスに失敗したというフラグを立てることがあります。
症状:
# journalctl -xn
-- Unit mongod.service has begun starting up.
10:38:43 local mongod[24558]: forked process: 24560
10:38:43 local mongod[24558]: all output going to: /var/log/mongodb/mongodb.log
10:40:13 local systemd[1]: mongod.service operation timed out. Terminating.
10:40:13 local systemd[1]: Failed to start High-performance, schema-free document-oriented database.
-- Subject: Unit mongod.service has failed
非常に簡単に修復できます。サービスを再起動してください:
# systemctl restart mongod.service
これにより、初期化が正常に完了し、デーモンが実行状態のままになります。