【数据库】如何正确关闭mongodb

写在前面

有时候我们的MongoDB被非正常关闭了,比如使用了kill -9 强制关闭或者停电宕机等。而后我们重启MongoDB时,会出现以下报错

 about to fork child process, waiting until server is ready for connections.
forked process: 15935
ERROR: child process failed, exited with error number 1

当然该问题是可以解决的,方法如下

1、删除dbpath路径下*.lock文件 

2、修复 /usr/local/bin/mongod --repair --dbpath=<dbpath>

3、再次启动

不过为了避免造成不必要的错误,我们还是尽量使用正确的方式来关闭MongoDB server

方式一 Crtl+C

如果以前台方式启动 MongoDB 服务,使用“Crtl+C” 服务会关闭,这种关闭方式会等待
当前进行中的的操作完成,所以依然是干净的关闭方式。

方式二 使用数据库命令

需要使用client进入mongodb

use admin;
db.shotdownServer()

方式三 使用mongod命令

mongod  --shutdown  --dbpath <dbpath>