1、mongoDB配置成副本集模式,並成功啟動
2、向其中插入數據,master和slave2都正常,slave1異常宕掉
3、重啟slave1報錯如下
about to fork child process, waiting until server is ready for connections.
forked process: 756411
ERROR: child process failed, exited with error number 1
4、刪除mongo.lock和mongodb.log後以repair模式啟動報錯如下
about to fork child process, waiting until server is ready for connections.
forked process: 756411
ERROR: child process failed, exited with error number 100
5、看mongodb.log內容如下,報了一堆No space left on device
2017-02-28T15:22:10.933+0800 E STORAGE [repl writer worker 3] WiredTiger (28) [1488266530:932986][21657:0x7f903153f700], WT_SESSION.commit_transaction: journal/WiredTigerLog.0000000003: ha
ndle-write: pwrite: failed to write 45952 bytes at offset 8572928: No space left on device
2017-02-28T15:22:10.933+0800 I - [repl writer worker 3] Invariant failure: s->commit_transaction(s, NULL) resulted in status UnknownError: 28: No space left on device at src/mongo/db
/storage/wiredtiger/wiredtiger_recovery_unit.cpp 213
2017-02-28T15:22:10.933+0800 E STORAGE [repl writer worker 0] WiredTiger (28) [1488266530:933845][21657:0x7f9032d42700], WT_SESSION.commit_transaction: journal/WiredTigerLog.0000000003: ha
ndle-write: pwrite: failed to write 129408 bytes at offset 8753152: No space left on device
2017-02-28T15:22:10.933+0800 I - [repl writer worker 0] Invariant failure: s->commit_transaction(s, NULL) resulted in status UnknownError: 28: No space left on device at src/mongo/db
/storage/wiredtiger/wiredtiger_recovery_unit.cpp 213
2017-02-28T15:22:10.934+0800 E STORAGE [repl writer worker 7] WiredTiger (28) [1488266530:934510][21657:0x7f902f53b700], WT_SESSION.commit_transaction: journal/WiredTigerLog.0000000003: ha
ndle-write: pwrite: failed to write 131840 bytes at offset 8882560: No space left on device
2017-02-28T15:22:10.934+0800 I - [repl writer worker 7] Invariant failure: s->commit_transaction(s, NULL) resulted in status UnknownError: 28: No space left on device at src/mongo/db
/storage/wiredtiger/wiredtiger_recovery_unit.cpp 213
2017-02-28T15:22:10.935+0800 E STORAGE [repl writer worker 1] WiredTiger (28) [1488266530:935197][21657:0x7f9032541700], WT_SESSION.commit_transaction: journal/WiredTigerLog.0000000003: ha
ndle-write: pwrite: failed to write 131840 bytes at offset 9014400: No space left on device
2017-02-28T15:22:10.935+0800 I - [repl writer worker 1] Invariant failure: s->commit_transaction(s, NULL) resulted in status UnknownError: 28: No space left on device at src/mongo/db
/storage/wiredtiger/wiredtiger_recovery_unit.cpp 213
2017-02-28T15:22:10.936+0800 E STORAGE [repl writer worker 9] WiredTiger (28) [1488266530:936508][21657:0x7f902e539700], WT_SESSION.commit_transaction: journal/
6、有人遇到類似的問題嗎?還望解答
你的磁碟空間不足了,導致提交日誌失敗,
df -h
查看一下磁碟空間,/mongo/db/storage/wiredtiger/對應的磁碟是否滿了,通常可以刪除mongo的日誌檔案來釋放部分磁碟空間。