MongoDB的启动和停止

1. 启动

  1. 用命令行,加各种的特殊参数
  2. 用命令行,但是所有的参数都放在一个配置文件中。如

    mongod -f /etc/mongod.conf
    
  3. 用传统的service mongod start

1.1. service mongod start

  • 该命令本身没有任何问题。只需要注意配置启动的时候执行的语句就可以达到同样的效果。在实际使用的过程中,并不会频繁的变更需求和配置,因此用service来启动足以。
  • 另外如果用命令行启动,还存在权限问题。
    用mongod启动了以后,权限全部变为root。这时候再用service mongod start来启动就会有各种各样的权限问题。

  • service start启动的脚本

    /usr/lib/systemd/system/mongod.service
    
[Unit]
Description=MongoDB Database Server
After=network.target
Documentation=https://docs.mongodb.org/manual

[Service]
User=mongod
Group=mongod
Environment="OPTIONS=-f /etc/mongod.conf"
EnvironmentFile=-/etc/sysconfig/mongod
ExecStart=/usr/bin/mongod $OPTIONS
ExecStartPre=/usr/bin/mkdir -p /var/run/mongodb
ExecStartPre=/usr/bin/chown mongod:mongod /var/run/mongodb
ExecStartPre=/usr/bin/chmod 0755 /var/run/mongodb
PermissionsStartOnly=true
PIDFile=/var/run/mongodb/mongod.pid
Type=forking
# file size
LimitFSIZE=infinity
# cpu time
LimitCPU=infinity
# virtual memory size
LimitAS=infinity
# open files
LimitNOFILE=64000
# processes/threads
LimitNPROC=64000
# locked memory
LimitMEMLOCK=infinity
# total threads (user+kernel)
TasksMax=infinity
TasksAccounting=false
# Recommended limits for for mongod as specified in
# http://docs.mongodb.org/manual/reference/ulimit/#recommended-settings

[Install]
WantedBy=multi-user.target

2. 停止

强制关闭MongoDB(不建议使用);
service mongod stop
或者,从MongoDB的admin中关闭(推荐用这种方法):

>use admin
switched to db admin
>db.shutdownServer()
server should be down...

或者

mongod --shutdown

使用shutdownServer关闭MongoDB,如有MongoDB主从服务器,则在服务关闭前同步主从服务器;强制关闭则不会;

2019/01/20 23:56 下午 posted in  MongoDB