zoukankan      html  css  js  c++  java
  • Mongodb 启动关闭脚本并设置开机自动启动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

  • 相关阅读:
    使用DBCP时发生AbstractMethodError异常
    Android NDK 环境搭建 + 测试例程
    一个关于含有显式实参的虚函数调用问题解释
    cookie和session
    hello
    python 多线程多进程
    python 网络编程
    docker 制作镜像
    docker 数据卷存储
    docker 简单原理及相关命令(镜像拉取 删除 执行容器 进入容器)
  • 原文地址:https://www.cnblogs.com/hankyoon/p/5169450.html
Copyright © 2011-2022 走看看