[mongodb] unable to start mongodb local server

I am new to mongodb .. when i tried running mongodb local server with mongod command it failed to run and threw this error..

/usr/lib/mongodb/mongod --help for help and startup options
Sat Jun 25 09:38:51 MongoDB starting : pid=1782 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

Sat Jun 25 09:38:51 db version v1.6.3, pdfile version 4.5
Sat Jun 25 09:38:51 git version: nogitversion
Sat Jun 25 09:38:51 sys info: Linux vernadsky 2.6.24-27-server #1 SMP Fri Mar 12 01:45:06 UTC 2010 i686 BOOST_LIB_VERSION=1_42
Sat Jun 25 09:38:51 [initandlisten] *** warning: spider monkey build without utf8 support.  consider rebuilding with utf8 support
Sat Jun 25 09:38:51 [initandlisten] waiting for connections on port 27017
Sat Jun 25 09:38:51 [initandlisten] listen(): bind() failed errno:98 Address already in use for socket: 0.0.0.0:27017
Sat Jun 25 09:38:51 [initandlisten]   addr already in use
Sat Jun 25 09:38:51 [initandlisten] now exiting
Sat Jun 25 09:38:51 dbexit: 

Sat Jun 25 09:38:51 [initandlisten] shutdown: going to close listening sockets...
Sat Jun 25 09:38:51 [initandlisten] shutdown: going to flush oplog...
Sat Jun 25 09:38:51 [initandlisten] shutdown: going to close sockets...
Sat Jun 25 09:38:51 [initandlisten] shutdown: waiting for fs preallocator...
Sat Jun 25 09:38:51 [initandlisten] shutdown: closing all files...
Sat Jun 25 09:38:51     closeAllFiles() finished

Sat Jun 25 09:38:51 [initandlisten] shutdown: removing fs lock...
Sat Jun 25 09:38:51 dbexit: really exiting now

I tried deleting mongod.lock file... I ran mongod --repair.. I also changed permissions to mongod.lock file.

but nothing seems to work.. it keeps showing the same error.. what should i do.?

I also have installed git version 1.7.4.1 but it shows nogitversion in error..

This question is related to mongodb

The answer is


To resolve the issue in Windows, the below steps work for me:

For example mongoDB version 3.6 is installed, and the install path of MongoDB is "D:\Program Files\MongoDB".

Create folder D:\mongodb\logs, then create file mongodb.log inside this folder.

Run cmd.exe as administrator,

D:\Program Files\MongoDB\Server\3.6\bin>taskkill /F /IM mongod.exe
D:\Program Files\MongoDB\Server\3.6\bin>mongod.exe --logpath D:\mongodb\logs\mongodb.log --logappend --dbpath D:\mongodb\data --directoryperdb --serviceName MongoDB --remove
D:\Program Files\MongoDB\Server\3.6\bin>mongod --logpath "D:\mongodb\logs\mongodb.log" --logappend --dbpath "D:\mongodb\data" --directoryperdb --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install

Remove these two files mongod.lock and storage.bson under the folder "D:\mongodb\data".

Then type net start MongoDB in the cmd using administrator privilege, the issue will be solved.


Try:

sudo service mongod stop
sudo mongod

To stop current active mongodb service, allowing you to then start a new one


(If your're using linux,) if

mongod --shutdown --config=path/to/your/configFile.conf 

or

mongod --repair --config=path/to/your/configFile.conf 

didn't fix the issue, logout and re-login. That solved my problem.

Or you can kill the process manually from terminal, I guess.


Use:

sudo killall mongod

It will stop the server.

Then restart mongod by:

sudo service mongod restart

it should work.


Sat Jun 25 09:38:51 [initandlisten] listen(): bind() failed errno:98 Address already in use for socket: 0.0.0.0:27017

is self-speaking.

Another instance of mongod is already running and allocating the MongoDB default port which is 27017.

Either kill the other process or use a different port.


I suggest use instead:

$sudo service mongodb stop

That could work.


I had the same problem were I tried to open a new instance of mongod and it said it was already running.

I checked the docs and it said to type

mongo
use admin
db.shutdownServer()

Check for logs at /var/log/mongodb/mongod.log and try to deduce the error. In my case it was

Failed to unlink socket file /tmp/mongodb-27017.sock errno:1 Operation not permitted

Deleted /tmp/mongodb-27017.sock and it worked.


It may be possible that the server is already running. Please check it by the command mongo is working or not.


Killing process did not solve my issue. My mac had crashed and on restart some of lock files (mongod.lock, WiredTiger.lock) were present in mongo dbPath. I moved these files to different folder (I did not delete to avoid more issues) and then it worked. On successul star, I deleted the moved lock files.


Find out from netstat which process is running mongodb port (27017)

command:

sudo netstat -tulpn | grep :27017

Output will be:

tcp        0      0 0.0.0.0:27017           0.0.0.0:* 
LISTEN      6432/mongod

In my case "6432" is the pid, it may be different in your case. Then kill that process using following command:

sudo kill <pid>

Thats it!


Don't kill the process using the -9 signal as it would cause damage: http://www.mongodb.org/display/DOCS/Starting+and+Stopping+Mongo#StartingandStoppingMongo-SendingaUnixINTorTERMsignal

Use sudo killall -15 mongod instead


Try a different port if you can't find any current running processes or killing them doesn't work. For example, try 27018 because the default is 27017.

mongod  --port 27018

I found this out with the command, mongod --help


You already have a process running. You can kill it with the command :

killall mongod

if you are running mongo for first time you might wanna set the path first

mongod --dbpath <path to the directory>

You want to do killall -15 mongod because it is still running: Address already in use for socket: 0.0.0.0:27017.

Then you can run mongod again.


MongoDB unable to start is mainly due to unclean shutdown. To remedy, delete the mongod.lock file. This file is located in the data folder.

Find out where your data folder is by looking in the mongodb.conf or mongod.conf file. (Conf file under /etc on Linux systems.)

# Where and how to store data.
storage:
  dbPath: /var/lib/mongodb

For example using the above configuration, the file is at /var/lib/mongodb/mongod.lock. Simply remove it and restart mongodb.


It looks like the same error is showed in logs when you're missing LC_ALL environment setting. It's confusing, but you may execute mongo client to see that it's a problem.


Andreas Jung:

"Sat Jun 25 09:38:51 [initandlisten] listen(): bind() failed errno:98 Address already in use for socket: 0.0.0.0:27017

is self-speaking.

Another instance of mongod is already running and allocating the MongoDB default port which is 27017.

Either kill the other process or use a different port."

In this case, type the following command

ps wuax | grep mongo

You should see something that looks like this

User           31936   0.5 0.4 2719784 35624   ?? S     7:34pm   0:09.98 mongod
User           31945   0.0 0.0 2423368   184 s000 R+   8:24pm   0:00.00 grep mongo

Now enter the kill command for the mongod instance (31936 in this case):

kill 31936

OS X. Activity Monitor, look for mongod, cross it . then run again mongod. problem Solved.


It shows error listen(): bind() failed errno:98 Address already in use for socket: 0.0.0.0:27017 i.e. 27017 address is already in used by some other service. please check this by "netstat -apt| grep "27017"" command


try

/usr/lib/mongodb/mongod.exe --dbpath c:data\db

--dbpath (should be followed by the path of your db)


Try either killall -15 mongod/ killall mongod Even after this if this doesnt work then remove the db storage folder by typing the following commands sudo rm -rf /data/db sudo mkdir /data/db sudo chmod 777 /data/db


I've faced the same issue. Though the mongodb service is not running, the log showed address already in use message.

 $netstat -tulpn | grep :27017 

returns nothing

On further analysis found that the issue was due to lock file. The service is running fine, after deleting the lock file and restarting it.

$grep "dbpath" /etc/mongodb.conf

dbpath =/var/lib/mongodb

$ls /var/lib/mongodb/mongod.lock

$service mongod start

Open the terminal and type:

mkdir -p /data/db

Then enter:

mongod