停止mongodb進程的方法:1、在終端登錄mongodb,使用“Crtl+C”關閉停止mongodb進程;2、使用數據庫“db.shutdownServer();”命令關閉停止mongodb進程;3、使用mongod命令的shutdown選項關閉停止mongodb進程;4、使用操作系統的kill命令停止mongodb進程。
一、使用 Crtl+C 關閉
[mongo@redhatB data]$ mongod --dbpath=/database/mongodb/data/ --logpath=/var/applog/mongo_log/mongo.log --logappend--port=27017 --journal > start_mongo.log 2>&1
光標:鍵入 Crtl+C 關閉
備注:如果以前臺方式啟動 MongoDB 服務,使用“Crtl+C” 服務會關閉,這種關閉方式會等待。
當前進行中的的操作完成,所以依然是干凈的關閉方式。
二、使用數據庫命令關閉
--2.1 開啟服務
[mongo@redhatB data]$ mongod -f /database/mongodb/data/mongodb_27017.confforked process: 18155
all output going to: /var/applog/mongo_log/mongo.log
child process started successfully, parent exiting
--2.2 登陸數據庫
[mongo@redhatB data]$ mongoMongoDB shell version: 2.2.1
connecting to: test
--2.3 關閉 MongoDB 服務
> useadmin;switched to db admin
> db.shutdownServer();
Wed Nov 14 06:07:33 DBClientCursor::init call() failed
Wed Nov 14 06:07:33 query failed : admin.$cmd{ shutdown: 1.0 } to: 127.0.0.1:27017
server should be down...
Wed Nov 14 06:07:33 trying reconnect to 127.0.0.1:27017
Wed Nov 14 06:07:33 reconnect 127.0.0.1:27017 failed couldnt connect to server 127.0.0.1:27017
三、使用 mongod 命令關閉
[mongo@redhatB data]$ mongod --shutdown --dbpath /database/mongodb/data/killing process with pid: 17747
備注:mongod 命令的 shutdown 選項能干凈的關閉 MongoDB 服務。
四、使用 kill 命令
--4.1 查看 mongo 相關進程
[mongo@redhatB data]$ ps -ef | grep mongoroot 17573 14213 0 05:10 pts/1 00:00:00 su - mongo
mongo 17574 17573 0 05:10 pts/1 00:00:00 -bash
mongo 18288 1 0 06:12 ? 00:00:00 mongod -f /database/mongodb/data/mongodb_27017.conf
mongo 18300 17574 6 06:13 pts/1 00:00:00 ps -ef
mongo 18301 17574 0 06:13 pts/1 00:00:00 grep mongo
--4.2 kill mongo 服務進程
[mongo@redhatB data]$ kill 18288[mongo@redhatB data]$ ps -ef | grep pmon
mongo 18304 17574 0 06:13 pts/1 00:00:00 grep pmon
備注:可以使用操作系統的 kill 命令,給 mongod 進程發送 SIGINT 或 SIGTERM 信號,
即 "kill -2 PID," 或者 “kill -15 PID“。
建議不要使用 ”kill -9 pid“,因為如果 MongoDB 運行在沒開啟日志(--journal)的情況下, 可能會造成數據損失。