我正在使用在本地计算机上运行的MongoDB的单个实例,并希望编写一个自动修复例程,因为数据库将与我正在处理的用户应用程序捆绑在一起。
docs表示有一个mongod.lock
文件,表明需要修复数据库:
如果dbPath指定的数据目录中的
mongod.lock
文件,/data/db
默认情况下,不是一个零字节文件,然后mongod会拒绝 开始,[...]
我的mogod
进程就像魅力一样开始,但我的修复例程告诉我需要修复数据库。修复例程只是查找mongod.lock
的文件大小为5个字节,cat mongod.lock
给出了以下内容:
9817
所以根据上面的文档引用,我想知道即使mongod.lock
文件肯定是而不是一个零字节文件,MongoDB怎么能开始呢。
答案 0 :(得分:3)
该文档涉及在没有日记的情况下运行Mongo的情况。如果你有日记,那么Mongo将尝试自我修复。 您在.lock文件中看到的数字是进程ID。如果进程没有运行,那么端口可能没有被使用,如果数据文件没有损坏,Mongo可能会成功重启进程。