Mongodb開啟與關閉

鴨脖發表於2015-07-13
Mongodb的開啟

預設啟動:

$ ./mongodb

預設資料儲存路徑:/data/db/
預設埠:27017

修改預設路徑:

--dbpath
$ ./mongdb --dbpath /mongodb/
把資料儲存位置指向一個自己的目錄/mongodb/

修改預設埠:

--port
$ ./mongdb --port 20111
把服務埠修改為20111,這個一方面是為了安全,使用預設埠容易被一些惡意的人發現做手腳

啟動後臺服務:

--fork
在後臺開啟Mongdb服務
在使用這個方式啟動的時候要注意兩點:
1、該功能只在1.1之後的版本才可以使用。
2、另外通過這個方式在後臺啟動,如果在啟動的時候像--dbpath 那樣使用 --logpath 輸出日誌時候日誌輸出目錄也要自己建立。
如:
$ ./mongod --fork --logpath /var/log/mongodb.log --logappend
解析最後--logappend,以追加的方式建立日誌防止把之前的日誌刪除了


Mongodb的關閉:

前臺執行:

如果沒有使用--fork,直接可以前臺退出終端關閉。通過這種方式,Mongodb將會自己做清理退出,把沒有寫好的資料寫完成,並最終關閉資料檔案。要注意的是這個過程會持續到所有操作都完成。

後臺執行:

如果使用--fork在後臺執行mongdb服務,那麼就要通過向伺服器傳送shutdownServer()訊息來關閉。

1、普通命令:
$ ./mongod
> use admin
> db.shutdownServer()

要注意的是,這個命令只允許在本地,或是一個經過認證的客戶端。

2、如果這是一個主從式的複製叢集,在1.9.1版本後將按下面的步驟來關閉
  • 檢查從Mongodb的資料更新時間
  • 如果所有的從Mongodb和主的時間差都超過10,這個時候不會關閉mongodb(在這種情況下面,我們可以通過配置timeoutSecs的方式來讓從Mongodb完成資料的更新)
  • 如果其中有一個從Mongodb與主服務時間差在10秒內,那麼主伺服器將會關閉,並且等待從Mongodb更新完成並關閉。
3、如果沒有up-to-date 從Mongodb且你想強制關閉服務,可以通過新增force:true;命令如下:
> db.adminCommand({shutdown : 1, force : true})
> //or
> db.shutdownServer({force : true})

4、指定特定超時時間的關閉伺服器,命令同上,另外加上一個timeoutsec:引數
> db.adminCommand(shutdown : 1, force : true, timeoutsec : 5)
//or
> db.shutdownServer({force : true, timeoutsec : 5})


Mongodb開機啟動

在/etc/rc.local檔案末尾新增下面的程式碼
#add mongodb service
rm -rf /data/mongodb_data/* && /usr/local/mongodb/bin/mongod --dbpath=/data/mongdb_data/ --logpath=/data/mongdb_log/mongodb.log --logappend &



版權宣告:本文為博主原創文章,未經博主允許不得轉載。


相關文章