2016-01-24 42 views
0

在其他SO帖子中已經介紹了這一點,但不幸的是這些解決方案無法正常工作。如何重新啓動/刪除mongod的一個實例?

如何重新啓動/刪除mongod實例?

進入

$ mongod 

我得到以下錯誤:

2016-01-24T09:49:19.557-0500 I CONTROL [initandlisten] MongoDB starting : pid=43675 port=27017 dbpath=/data/db 64-bit host=NAME-MacBook-Pro.local 
2016-01-24T09:49:19.558-0500 I CONTROL [initandlisten] db version v3.0.8 
2016-01-24T09:49:19.558-0500 I CONTROL [initandlisten] git version: 83d8cc25e00e42856924d84e220fbe4a839e605d 
2016-01-24T09:49:19.558-0500 I CONTROL [initandlisten] build info: Darwin NAME-MacBook-Pro.local 15.2.0 Darwin Kernel Version 15.2.0: Fri Nov 13 19:56:56 PST 2015; root:xnu-3248.20.55~2/RELEASE_X86_64 x86_64 BOOST_LIB_VERSION=1_49 
2016-01-24T09:49:19.558-0500 I CONTROL [initandlisten] allocator: system 
2016-01-24T09:49:19.558-0500 I CONTROL [initandlisten] options: {} 
2016-01-24T09:49:19.558-0500 E NETWORK [initandlisten] listen(): bind() failed errno:48 Address already in use for socket: 0.0.0.0:27017 
2016-01-24T09:49:19.558-0500 E NETWORK [initandlisten] addr already in use 
2016-01-24T09:49:19.558-0500 I STORAGE [initandlisten] exception in initAndListen: 98 Unable to create/open lock file: /data/db/mongod.lock errno:13 Permission denied Is a mongod instance already running?, terminating 
2016-01-24T09:49:19.558-0500 I CONTROL [initandlisten] dbexit: rc: 100 

我明確地給了自己的權限有

sudo chown -R <USERNAME> /data/db 

這不起作用。

我試圖刪除目錄完全

sudo rm -rf /data/db 

並重新創建

mkdir -p /data/db 

但不幸的是,這並不工作。

我認爲解決辦法是刪除該文件/data/db/mongod.lock,但它不存在:

rm /data/db/mongod.lock 

別的我應該嘗試一下呢?

編輯:使用mongod --port 12345,當我使用use admin然後db.shutdownServer()與不同的端口上運行之後,我得到以下錯誤:

2016-01-24T10:32:25.039-0500 I NETWORK trying reconnect to 127.0.0.1:27017 (127.0.0.1) failed 
2016-01-24T10:32:25.039-0500 I NETWORK reconnect 127.0.0.1:27017 (127.0.0.1) ok 
2016-01-24T10:32:25.040-0500 I NETWORK DBClientCursor::init call() failed 
server should be down... 

編輯2:

重新啓動機器什麼都不做。我試着mongod --port 27017訪問默認的端口,然後

> use admin 
> db.shutdownServer() 

我得到的輸出:

2016-01-25T12:05:32.163-0500 I NETWORK DBClientCursor::init call() failed 
server should be down... 
2016-01-25T12:05:32.166-0500 I NETWORK trying reconnect to 127.0.0.1:27017 (127.0.0.1) failed 
2016-01-25T12:05:32.166-0500 W NETWORK Failed to connect to 127.0.0.1:27017, reason: errno:61 Connection refused 
2016-01-25T12:05:32.166-0500 I NETWORK reconnect 127.0.0.1:27017 (127.0.0.1) failed failed couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed 

回答

0

在記錄它說:

2016-01-24T09:49:19.558-0500 E NETWORK [initandlisten] listen(): bind() failed errno:48 Address already in use for socket: 0.0.0.0:27017 
2016-01-24T09:49:19.558-0500 E NETWORK [initandlisten] addr already in use 

這意味着,端口已被其他進程或另一個mongo實例使用。

您應該爲此實例使用另一個端口。

Refer to this link