美文网首页
以守护进程方式,开机自启动Mongodb服务

以守护进程方式,开机自启动Mongodb服务

作者: joyitsai | 来源:发表于2019-05-28 11:34 被阅读0次

    1. 编辑mongodb的配置文件:

    修改/opt/mongo/bin/mongodb.conf配置文件,在/etc/init.d中编写自启动脚本时,需要让mongodb按照配置文件来启动和关闭:

     /*数据存放目录*/
     dbpath=/opt/mongo/data/db   
     /*指定日志文件,该文件将保存所有的日志记录、诊断信息*/
     logpath=/opt/mongo/log/mongodb.log   
     /*进程ID,没有指定则启动时候就没有PID文件*/
     pidfilepath=/opt/mongo/db.pid   
    //设置为true,修改数据目录存储模式,每个数据库的文件存储在DBPATH指定目录的不同的文件夹中。
    //使用此选项,可以配置的MongoDB将数据存储在不同的磁盘设备上,以提高写入吞吐量或磁盘容量。
     directoryperdb=true    
    //写日志的模式:设置为true为追加。默认是覆盖。如果未指定此设置,启动时MongoDB的将覆盖现有的日志文件。
     logappend=true
    //绑定地址
     bind_ip= localhost
     /*端口。默认27017*/
     port=27017   
    //是否后台运行,设置为true  启动进程在后台运行的守护进程模式。
     fork=true
    //来禁用预分配的数据文件,会缩短启动时间,但在正常操作过程中,可能会导致性能显著下降。
     noprealloc=true
     //设置为true,使用较小的默认数据文件大小。smallfiles减少数据文件的初始大小,并限制他们到512M,也减少了日志文件的大小,
    //并限制他们到128M。如果数据库很大,各持有少量的数据,会导致mongodb创建很多文件,会影响性能。
     smallfiles=true
    

    2. 创建mongodb服务脚本

    文件夹/etc/init.d/是用来放服务脚本的,当Linux启动时,会寻找这些目录中的服务脚本,并根据脚本的run level确定不同的启动级别。

    • /etc/init.d/中创建mongodb服务脚本文件,编辑内容如下:
    #!/bin/bash
     #
     #chkconfig: 2345 80 90
     #description: mongodb
    
     start() {
      /opt/mongo/bin/mongod --config /opt/mongo/bin/mongodb.conf
     }
    
     stop() {
       /opt/mongo/bin/mongod --config /opt/mongo/bin/mongodb.conf --shutdown
     }
    case "$1" in
       start)
      start
      ;;
    
     stop)
      stop
      ;;
    
     restart)
      stop
      start
      ;;
       *)
      echo 
     $"Usage: $0 {start|stop|restart}"
      exit 1
     esac
    

    上面脚本,是让mongodb脚本服务,可以通过service mongodb start来实现mongod服务按照配置文件启动;通过service mongodb stop来实现mongod服务按照配置文件停止;还有service mongodb restart实现mongod服务重启。

    • 增加服务并开机启动:
    chmod +x /etc/init.d/mongodb
    chkconfig --add mongodb
    chkconfig --level 345 mongodb on
    chkconfig --list mongodb
    service mongodb start
    

    以后启动和重启mongdb服务,都是通Linux守护进程开启的,关闭命令窗口也不会停止服务。

    相关文章

      网友评论

          本文标题:以守护进程方式,开机自启动Mongodb服务

          本文链接:https://www.haomeiwen.com/subject/vdhrtctx.html