欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

mongodb服务脚本编写

程序员文章站 2022-06-03 21:35:52
...

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

1.新建配置文件

mongodb安装时缺少配置文件

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

内容如下

# mongo.conf

#where to log
logpath=/data/logs/db.log

logappend=true

# fork and run in background
fork = true

#port = 27017

dbpath=/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 log
logpath=/data/logs/db.log

logappend=true

# fork and run in background
fork = true

#port = 27017

dbpath=/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 = 

# Accout token for Mongo monitoring server.
#mms-token = 

# Server name for Mongo monitoring server.
#mms-name = 

# Ping interval for Mongo monitoring server.
#mms-interval = 

# 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
# OPTIONS
OPTIONS=" -f /etc/mongod.conf"

#mongod
mongod="/root/mongodb/bin/mongod"

lockfile=/var/lock/subsys/mongod

start()
{
  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
# OPTIONS
OPTIONS=" -f /etc/mongod.conf"

#mongod
mongod="/root/mongodb/bin/mongod"

lockfile=/var/lock/subsys/mongod

start()
{
  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 12000
RETVAL=0

case "$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=1
esac

exit $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果然博大精深