[英]Starting mongod with --nojournal option deletes existing journal files?
我的MongoDB因嘗試附加到日志文件時發生的內存不足錯誤而崩潰。 在那種情況下,我的mongod.lock文件為空。 我重新啟動了mongod,沒有任何選擇。 它正常地接受連接。 然后我運行mongo.exe,但無法連接到數據庫。 它陷入了“連接測試”的困境,但從未成功連接。
我結束了該過程,並使用--nojournal選項重新啟動了mongod。 但這也沒有幫助。
但是現在我看到mongod.lock文件不為空。 另外,我的所有日記帳分錄都被刪除了。
問題是,--noJournal選項是否刪除現有日記帳分錄? 另外,有沒有辦法恢復日記帳分錄?
首先,請閱讀這篇文章:
發生崩潰后,您有兩種選擇:
--repair
選項運行mongod
; 運行mongod --nojournal
不會刪除日志文件。 實際上,如果存在日志文件, mongod
甚至不會啟動。 它會給您以下消息並關閉。
Error: journal files are present in journal directory, yet starting without journaling enabled.
It is recommended that you start with journaling enabled so that recovery may occur.
exception in initAndListen: 13597 can't start without --journal enabled when journal/ files are present, terminating
如果隨后運行不帶--nojournal
選項的mongod
,它將應用保存在日志文件中的所有更改並刪除這些文件。 只有這樣,您才能使用--nojournal
重新啟動它。
我相信這就是您的情況。 您無需嘗試還原日志文件,因為它們已經應用於數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.