1、报错,导致mongodb无法正常启动。具体命令如下(注意红色字体,提示日志路径,可查看该日志文件):
[root@oracleLinux ~]# service mongod start
Starting mongod: Fri Jan 24 09:59:59.385
Fri Jan 24 09:59:59.386 warning: 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability.
Fri Jan 24 09:59:59.387
about to fork child process, waiting until server is ready for connections.
forked process: 2120
all output going to: /var/log/mongo/mongod.log
ERROR: child process failed, exited with error number 100
[失败]
通过输出信息可知,日子文件为/var/log/mongo/mongod.log
错误信息是:
ERROR: child process failed, exited with error number 100
[root@oracleLinux ~]# cat /var/log/mongo/mongod.log
日志内容较长,此处截取了相关的内容如下:
**************
Unclean shutdown detected.
Please visit http://dochub.mongodb.org/core/repair for recovery instructions.
*************
Thu Jan 23 12:34:11.293 [initandlisten] exception in initAndListen: 12596 old lock file, terminating
Thu Jan 23 12:34:11.293 dbexit:
Thu Jan 23 12:34:11.293 [initandlisten] shutdown: going to close listening sockets...
Thu Jan 23 12:34:11.293 [initandlisten] shutdown: going to flush diaglog...
Thu Jan 23 12:34:11.293 [initandlisten] shutdown: going to close sockets...
Thu Jan 23 12:34:11.293 [initandlisten] shutdown: waiting for fs preallocator...
Thu Jan 23 12:34:11.293 [initandlisten] shutdown: closing all files...
Thu Jan 23 12:34:11.293 [initandlisten] closeAllFiles() finished
Thu Jan 23 12:34:11.293 dbexit: really exiting now
a、首先删除/var/lib/mongo/目录下的mongod.lock文件,具体命令如下:
[root@oracleLinux ~]# rm /var/lib/mongo/mongod.lock
b、已repair方式启动mongodb,具体命令如下:
[root@oracleLinux mongo]# mongod -f /etc/mongod.conf --repair
Fri Jan 24 10:38:39.112
Fri Jan 24 10:38:39.113 warning: 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability.
Fri Jan 24 10:38:39.114
about to fork child process, waiting until server is ready for connections.
forked process: 2237
all output going to: /var/log/mongo/mongod.log
child process started successfully, parent exiting
[root@oracleLinux mongo]# mongod -f /etc/mongod.conf
Fri Jan 24 10:41:13.664
Fri Jan 24 10:41:13.665 warning: 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability.
Fri Jan 24 10:41:13.666
about to fork child process, waiting until server is ready for connections.
forked process: 2253
all output going to: /var/log/mongo/mongod.log
child process started successfully, parent exiting
[root@oracleLinux mongo]# ps -ef | grep mongo
root 2253 1 2 10:41 ? 00:00:02 mongod -f /etc/mongod.conf
root 2268 2079 0 10:43 pts/0 00:00:00 grep mongo
[root@oracleLinux mongo]# mongo
MongoDB shell version: 2.4.9
connecting to: test
Server has startup warnings:
Fri Jan 24 10:41:13.708 [initandlisten]
Fri Jan 24 10:41:13.708 [initandlisten] ** NOTE: This is a 32 bit MongoDB binary.
Fri Jan 24 10:41:13.708 [initandlisten] ** 32 bit builds are limited to less than 2GB of data (or less with --journal).
Fri Jan 24 10:41:13.708 [initandlisten] ** Note that journaling defaults to off for 32 bit and is currently off.
Fri Jan 24 10:41:13.708 [initandlisten] ** See http://dochub.mongodb.org/core/32bit
Fri Jan 24 10:41:13.708 [initandlisten]
>