Mongodb 啓動關閉腳本並設置…

配置文件內容:
[root@yoon etc]# cat  mongod.conf 
logpath=/export/log/mongodb.log
logappend=true
fork = true
dbpath=/export/data/db
pidfilepath = /export/mongodb/etc/mongodb.pid
rest = true
httpinterface = true
port = 27017


腳本如下:
[root@yoon ~]# cd  /etc/init.d/

[root@yoon init.d]# vi  mongod

#!/bin/bash


# mongod - Startup script for mongod


# chkconfig: 35 80 15
# description: Mongo is a scalable, document-oriented database.
# processname: mongod
#config: /export/mongodb/etc/mongod.conf
# pidfile: /export/mongodb/etc/mongodb.pid


source /etc/rc.d/init.d/functions


# things from mongod.conf get there by mongod reading it


if [ $(id -u) != "0" ]; then
    echo "Permission Denied! Please use root to run again!"
    exit 1
fi


test -d /export/mongodb || (mkdir -p  /export/mongodb ; chown mongod:mongod /export/mongodb)


# NOTE: if you change any OPTIONS here, you get what you pay for:
# this script assumes all options are in the config file.
CONFIGFILE="/export/mongodb/etc/mongod.conf"
SYSCONFIG="/etc/sysconfig/mongod"


export PATH=$PATH:/export/mongodb/bin/


DBPATH=`awk -F= '/^dbpath/{print $2}' "$CONFIGFILE"`
OPTIONS=" --config $CONFIGFILE"
mongod=${MONGOD-/export/mongodb/bin/mongod}
echo "db path is: "$DBPATH
echo $mongod
MONGO_USER=mongodb
MONGO_GROUP=mongodb


[ -f "$SYSCONFIG" ] && source "$SYSCONFIG"


super() {
    su - $MONGO_USER -c "PATH=$PATH:/export/mongodb/bin/; $*"
}


start()
{
  echo -n $"Starting mongod: "
#  echo -n "$MONGO_USER" "numactl --interleave=all"
#  daemon --user "$MONGO_USER" "numactl --interleave=all" $mongod $OPTIONS
#  daemon --user "$MONGO_USER" $mongod $OPTIONS
#  
#   su - $MONGO_USER -c "$mongod $OPTIONS" -m -p
#  su - $MONGO_USER
#  $mongod $OPTIONS
daemon --user "$MONGO_USER" "numactl --interleave=all" $mongod $OPTIONS
#  super $mongod $OPTIONS
  echo $mongod$OPTIONS
  RETVAL=$?
  echo
  [ $RETVAL -eq 0 ] && touch /var/lock/subsys/mongod
}


stop()
{
  echo -n $"Stopping mongod: "
  killproc -p "$DBPATH"/mongod.lock -d 300 /export/mongodb/bin/mongod
  RETVAL=$?
  echo
  [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/mongod
}


restart () {
        stop
        start
}


ulimit -n 12000
RETVAL=0


case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  restart|reload|force-reload)
    restart
    ;;
  condrestart)
    [ -f /var/lock/subsys/mongod ] && restart || :
    ;;
  status)
    status $mongod
    RETVAL=$?
    ;;
  *)
    echo "Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}"
    RETVAL=1
esac


exit $RETVAL

==========================================
[root@yoon ~]# service mongod start

[root@yoon ~]# service mongod stop


===============================================
設置開機自動啓動Mongodb
[root@yoon ~]# chkconfig --add mongod

[root@yoon ~]# chkconfig  mongod  on

[root@yoon ~]# chkconfig mongod --list
mongod         0:off 1:off 2:on 3:on 4:on 5:on 6:off
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章