上次在一台兩G記憶體的win server 2008電腦上運作一個程式,一段時間後mongod自動停止,發現日志檔案最後有這樣的錯誤:
2014-11-30T00:32:32.914+0800 [conn30751] command taskdb.$cmd command: count { count: "result25", fields: null, query: { md5: "c390a22da3d411675883d6f692f266de" } } planSummary: COLLSCAN keyUpdates:0 numYields:0 locks(micros) r:312476 reslen:48 312ms
2014-11-30T00:32:32.921+0800 [conn30751] VirtualProtect for D:/data/db/taskdb/taskdb.3 chunk 4122 failed with errno:1455 頁面檔案太小,無法完成操作。 (chunk size is 67108864, address is 4068000000) in mongo::makeChunkWritable, terminating
2014-11-30T00:32:32.922+0800 [conn30751] taskdb.result25 Fatal Assertion 16362
然後看來是需要将虛拟記憶體加大才可以運作。
頁面檔案太小,就增大虛拟記憶體:
1、右鍵點【我的電腦】-【屬性】-【進階】頁籤,
2、在【性能】欄内點【設定】-繼續點【進階】頁籤,
3、在【虛拟記憶體】欄内點【更改】-彈出【虛拟記憶體】對話框,就可以設定了。
4、單選【自定義大小】,在【初始大小】裡設定1024,在【最大值】裡設定2048(不能超過32位作業系統的記憶體尋址範圍——4GB)。
最後點一下【設定】可生效。如有必要,可重新開機電腦。
建議将虛拟記憶體移動到除C槽之外的其它盤,例如D盤。以減輕對系統盤的壓力。
方法:仍在【虛拟記憶體】對話框,點選C槽卷标,單選【無分頁大小】。
再選D盤卷标,單選【自定義大小】,設定【初始大小】和【最大值】即可。