mongodb服务脚本编写

来源:互联网 发布:apache ant 安装配置 编辑:程序博客网 时间:2024/04/28 02:07

1.新建配置文件

mongodb安装时缺少配置文件

在 /etc 目录下新建 mongod.conf 配置文件

内容如下

# mongo.conf#where to loglogpath=/data/logs/db.loglogappend=true# fork and run in backgroundfork = true#port = 27017dbpath=/data/db# Enables periodic logging of CPU utilization and I/O wait#cpu = true# Turn on/off security.  Off is currently the default#noauth = true#auth = true# Verbose logging output.#verbose = true# Inspect all client data for validity on receipt (useful for# developing drivers)#objcheck = true# Enable db quota management#quota = true"/etc/mongod.conf" 82L, 1628C# mongo.conf#where to loglogpath=/data/logs/db.loglogappend=true# fork and run in backgroundfork = true#port = 27017dbpath=/data/db# Enables periodic logging of CPU utilization and I/O wait#cpu = true# Turn on/off security.  Off is currently the default#noauth = true#auth = true# Verbose logging output.#verbose = true# Inspect all client data for validity on receipt (useful for# developing drivers)#objcheck = true# Enable db quota management#quota = true# Set oplogging level where n is#   0=off (default)#   1=W#   2=R#   3=both#   7=W+some reads#oplog = 0# Diagnostic/debugging option#nocursors = true# Ignore query hints#nohints = true# Disable the HTTP interface (Defaults to localhost:27018).#nohttpinterface = true# Turns off server-side scripting.  This will result in greatly limited# functionality#noscripting = true# Turns off table scans.  Any query that would do a table scan fails.#notablescan = true# Disable data file preallocation.#noprealloc = true# Specify .ns file size for new databases.# nssize = <size># Accout token for Mongo monitoring server.#mms-token = <token># Server name for Mongo monitoring server.#mms-name = <server-name># Ping interval for Mongo monitoring server.#mms-interval = <seconds># Replication Options# in replicated mongo databases, specify here whether this is a slave or master#slave = true#source = master.example.com# Slave only: specify a single database to replicate#only = master.example.com# or#master = true#source = slave.example.com


2.启动

mongodb/bin/mongod -f /etc/mongod.conf
这种启动我感到很不爽,那我就做成service


3.service(服务)脚本

在 /etc/init.d 目录下新建 mongod文件

内容如下

#!/bin/sh##mongod - Startup script for mongod## chkconfig: - 85 15# description: Mongodb database.# processname: mongod# Source function library. /etc/rc.d/init.d/functions# things from mongod.conf get there by mongod reading it# OPTIONSOPTIONS=" -f /etc/mongod.conf"#mongodmongod="/root/mongodb/bin/mongod"lockfile=/var/lock/subsys/mongodstart(){  echo -n $"Starting mongod: "  daemon $mongod $OPTIONS  RETVAL=$?  echo  [ $RETVAL -eq 0 ] && touch $lockfile}"/etc/init.d/mongod" 70L, 1036C#!/bin/sh##mongod - Startup script for mongod## chkconfig: - 85 15# description: Mongodb database.# processname: mongod# Source function library. /etc/rc.d/init.d/functions# things from mongod.conf get there by mongod reading it# OPTIONSOPTIONS=" -f /etc/mongod.conf"#mongodmongod="/root/mongodb/bin/mongod"lockfile=/var/lock/subsys/mongodstart(){  echo -n $"Starting mongod: "  daemon $mongod $OPTIONS  RETVAL=$?  echo  [ $RETVAL -eq 0 ] && touch $lockfile}stop(){  echo -n $"Stopping mongod: "  killproc $mongod -QUIT  RETVAL=$?  echo  [ $RETVAL -eq 0 ] && rm -f $lockfile}restart () {        stop        start}ulimit -n 12000RETVAL=0case "$1" in  start)    start    ;;  stop)    stop    ;;  restart|reload|force-reload)    restart    ;;  condrestart)    [ -f $lockfile ] && restart || :    ;;  status)    status $mongod    RETVAL=$?    ;;  *)    echo "Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}"    RETVAL=1esacexit $RETVAL

4.添加文件执行权限

# chmod +x /etc/init.d/mongod


5.service命令

service mongod start

service mongod stop

service mongod restart


6.查看mongod服务的端口

netstat -npt | grep mongod


7.我操,哥哥也会写脚本了


8.这里我想把开机启动也写进去,奈何能力有限,开机启动还是只能放在 /etc/rc.local 下

# mongodb start
/root/mongodb/bin/mongod --repair
/root/mongodb/bin/mongod -f /etc/mongod.conf


9.linux果然博大精深


10.注意

上边 ulimit -n 12000 是对mongodb连接数做限制,mongodb最大连接数是20000,直接把这个数值调到最高就可以了

0 0
原创粉丝点击