Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

why can't I start the mongodb

Tags:

mongodb

ubuntu

this is the error:

(mysite)zjm1126@zjm1126-G41MT-S2:~$ /usr/local/mongodb/bin/mongod  /usr/local/mongodb/bin/mongod --help for help and startup options Wed Apr 27 10:02:41 [initandlisten] MongoDB starting : pid=2652 port=27017 dbpath=/data/db/ 32-bit   ** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data **       see http://blog.mongodb.org/post/137788967/32-bit-limitations **       with --dur, the limit is lower  Wed Apr 27 10:02:41 [initandlisten] db version v1.8.1, pdfile version 4.5 Wed Apr 27 10:02:41 [initandlisten] git version: a429cd4f535b2499cc4130b06ff7c26f41c00f04 Wed Apr 27 10:02:41 [initandlisten] build sys info: Linux bs-linux32.10gen.cc 2.6.21.7-2.fc8xen #1 SMP Fri Feb 15 12:39:36 EST 2008 i686 BOOST_LIB_VERSION=1_37 Wed Apr 27 10:02:41 [initandlisten] exception in initAndListen std::exception: Unable to create / open lock file for lockfilepath: /data/db/mongod.lock errno:13 Permission denied, terminating Wed Apr 27 10:02:41 dbexit:  Wed Apr 27 10:02:41 [initandlisten] shutdown: going to close listening sockets... Wed Apr 27 10:02:41 [initandlisten] shutdown: going to flush diaglog... Wed Apr 27 10:02:41 [initandlisten] shutdown: going to close sockets... Wed Apr 27 10:02:41 [initandlisten] shutdown: waiting for fs preallocator... Wed Apr 27 10:02:41 [initandlisten] shutdown: closing all files... Wed Apr 27 10:02:41 closeAllFiles() finished Wed Apr 27 10:02:41 [initandlisten] shutdown: removing fs lock... Wed Apr 27 10:02:41 [initandlisten] couldn't remove fs lock errno:9 Bad file descriptor Wed Apr 27 10:02:41 dbexit: really exiting now 
like image 506
zjm1126 Avatar asked Apr 27 '11 02:04

zjm1126


People also ask

Why MongoDB is not opening?

We found that the reason for this error was the dbpath variable in /etc/mongodb. conf. Previously, the default value for dbpath was /data/db. The upstart job mongodb(which comes with mongodb-10gen package) invokes the mongod with –config /etc/mongodb.

How do I start MongoDB?

You can start MongoDB from a command line by issuing the mongod command and specifying options. For a list of options, see the mongod reference. MongoDB can also run as a Windows service. For details, see Start MongoDB Community Edition as a Windows Service.


2 Answers

The user account that is starting MongoDB needs to have write privileges to the /data/db/ directory ... you can change this like so ...

This command will change the owner of the /data/db/ to the user account being used.

$ sudo chown `id -u` /data/db $ mongod  

If you still run into problems with MongoDB starting, you need to delete /data/db/mongod.lock and then run repair on your database ...

mongod --repair 

More about the repair command here.

like image 121
Justin Jenkins Avatar answered Sep 29 '22 14:09

Justin Jenkins


Either sudo the call to mongod or change the permissions of /data/db/mongod.lock so that it is writable by you.

like image 35
Austin Taylor Avatar answered Sep 29 '22 13:09

Austin Taylor