MongoDBでpidファイルが作成されないときの対処法
mongoDBをmonitでpidの監視していたが、
時々monitが暴走してmongoDBの再起動コマンドを何度も繰り返してしまうので、
原因を調べたら、pidが作成されていなかった。
・mongodb 2.4
・rpmにてインストール
less /etc/init.d/mongod ---------- # processname: mongod # config: /etc/mongod.conf # pidfile: /var/run/mongo/mongod.pid DBPATH=`awk -F= '/^dbpath=/{print $2}' "$CONFIGFILE"` PIDFILE=`awk -F= '/^dbpath\s=\s/{print $2}' "$CONFIGFILE"` mongod=${MONGOD-/usr/bin/mongod} ----------
/var/run/mongo がデフォルトだけども、 mongod.confファイルの設定から呼び出される模様。
less /etc/mongod.conf ---------- # location of pidfile pidfilepath = /var/run/mongodb/mongod.pid ----------
/var/run/mongodb下に作られる模様。
cd /var/run/ ll mkdir /var/run/mongodb chown mongod:mongod /var/run/mongodb service mongod restart
/var/run/下にmongodbフォルダがなかったので作成。
その後再起動したら無事にpidファイルが作成された。
yumでインストールしても/var/run下に pidファイルを置くためのフォルダが作られないようなので注意。