2

I am developing in which I am using MongoDB as my database and I use the the following commands to install on the terminal on cloud 9.

$ sudo apt-get install -y mongodb-org 
$ mkdir data
$ echo 'mongod --bind_ip=$IP --dbpath=data --nojournal --rest "$@"' > mongod
$ chmod a+x mongod 
$ ./mongod

This worked fine and I closed the terminal after I finished. Then I got back to it and I just typed: $ ./mongod in order to run the program but it's giving me the following error:

2017-12-24T07:02:40.787+0000 ** WARNING: --rest is specified without --httpinterface,
2017-12-24T07:02:40.787+0000 **          enabling http interface
warning: bind_ip of 0.0.0.0 is unnecessary; listens on all ips by default
2017-12-24T07:02:40.790+0000 [initandlisten] MongoDB starting : pid=15545 port=27017 dbpath=data 64-bit host=traorefly-real-5786569
2017-12-24T07:02:40.790+0000 [initandlisten] db version v2.6.12
2017-12-24T07:02:40.790+0000 [initandlisten] git version: d73c92b1c85703828b55c2916a5dd4ad46535f6a
2017-12-24T07:02:40.790+0000 [initandlisten] build info: Linux build5.ny.cbi.10gen.cc 2.6.32-431.3.1.el6.x86_64 #1 SMP Fri Jan 3 21:39:27 UTC 2014 x86_64 BOOST_LIB_VERSION=1_49
2017-12-24T07:02:40.790+0000 [initandlisten] allocator: tcmalloc
2017-12-24T07:02:40.790+0000 [initandlisten] options: { net: { bindIp: "0.0.0.0", http: { RESTInterfaceEnabled: true, enabled: true } }, storage: { dbPath: "data", journal: { enabled: false } } }
2017-12-24T07:02:40.811+0000 [initandlisten] ERROR: listen(): bind() failed errno:98 Address already in use for socket: 0.0.0.0:27017
2017-12-24T07:02:40.811+0000 [initandlisten] ERROR:   addr already in use
2017-12-24T07:02:40.811+0000 [initandlisten] ERROR: listen(): bind() failed errno:98 Address already in use for socket: 0.0.0.0:28017
2017-12-24T07:02:40.811+0000 [initandlisten] ERROR:   addr already in use
2017-12-24T07:02:40.814+0000 [initandlisten] now exiting
2017-12-24T07:02:40.814+0000 [initandlisten] dbexit: 
2017-12-24T07:02:40.814+0000 [initandlisten] shutdown: going to close listening sockets...
2017-12-24T07:02:40.814+0000 [initandlisten] shutdown: going to flush diaglog...
2017-12-24T07:02:40.814+0000 [initandlisten] shutdown: going to close sockets...
2017-12-24T07:02:40.814+0000 [initandlisten] shutdown: waiting for fs preallocator...
2017-12-24T07:02:40.814+0000 [initandlisten] shutdown: closing all files...
2017-12-24T07:02:40.814+0000 [initandlisten] closeAllFiles() finished
2017-12-24T07:02:40.814+0000 [initandlisten] shutdown: removing fs lock...
2017-12-24T07:02:40.814+0000 [initandlisten] dbexit: really exiting now

Some people said to delete *mongod.lock that's created inside the data file and then use --repair an then run it but it still doesn't work.

Pape Traore
  • 83
  • 2
  • 9

1 Answers1

1

You're starting an instance of mongod while one is already running in the background. You could use ps -A to look for the mongod process, and subsequently use kill <process id> to kill that instance.

If the port is blocked by any other process, you can find that out with: lsof -i :27017

COMMAND   PID   USER   FD   TYPE    DEVICE SIZE/OFF NODE NAME
mongod  30284 ubuntu    5u  IPv4 447749095      0t0  TCP *:27017 (LISTEN)