mongodb關閉方法

來源:互聯網
上載者:User

標籤:mongodb

最近再用mongodb做開發,在linux上嘛,習慣性的會使用kill -9 PID來關閉服務。

結果每次關閉再重啟mongodb後,mongodb總會自己關閉。看日誌也沒看出什麼來,然後就百度唄。

發現用kill -9殺死mongodb的後果挺嚴重。

然後去官網逛了一圈,查了一下

MongoDB使用的是記憶體映射儲存引擎:

它會把磁碟IO操作轉換成記憶體操作,如果是讀操作,記憶體中的資料起到緩衝的作用,如果是寫操作,記憶體還可以把隨機的寫操作轉換成順序的寫操作,總之可以大幅度提升效能。

寫操作會被每隔60秒(syncdelay設定)的flush到磁碟裡。如果在這60秒內flush處於停止事情我們進行kill -9那麼從上次flush之後的寫入資料將會全部丟失。

如果在flush操作進行時執行kill -9則會造成檔案混亂,可能導致資料全丟了。

官方描述:

Sending a KILL signal kill -9 will probably cause damage as mongod will not be able to cleanly exit.  (In such a scenario, run the repairDatabase command.)

幸虧發現的早啊...不然指不定出什麼事故

最後查到可以用以下方法關閉mongodb


1、使用killall mongod

2、使用kil  -15 PID

3、在admin使用者下執行db.shutdownServer()命令


mongodb關閉方法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.