操作系统:centos 6.5
mongodb版本:3.2.10
事由:测试环境服务器到期,需重新搭建服务器
问题:
在按常规方法安装好mongodb 后,在测试启动时,先用 kill -9 进程号删除,再启动mongodb 发现mongodb上报以下错误:
ERROR: child process failed, exited with error number 100
查看data/db目录,发现缺少.wt扩展名(主要用于保存搜索引擎的),根据百度到的方法用repaire方法修改,删除mongod.lock文件再启动
重新安装,再测试等等,均失败。
直至看到一个久远的文章,kill -9 会破坏存储文件,想想是不是在测试是所用kill -9 杀死mongod 进程时,将文件破坏掉了
再重新,不再用kill -9 用 killall mongod ,再启动,一切ok. 问题解决。
问题根因: kill -9
kill -9 会强行中止进程,对于一些有存储需求的进程来说, kill -9 一定要慎用。