无法启动mongodb本地服务器

我是新来的mongodb ..当我试图运行mongodb本地服务器与mongod命令它未能运行,并抛出此错误..

 /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 

我试图删除mongod.lock文件…我跑了mongod --repair ..我也改变了mongod.lock文件的权限。

但似乎没有工作..它不断显示相同的错误..我该怎么办。

我也已经安装了git版本1.7.4.1,但它显示错误nogitversion ..

尝试:

 sudo service mongod stop sudo mongod 

要停止当前有效的mongodb服务,请允许您启动一个新的服务

不要使用-9信号杀死进程,因为它会造成损害: http : //www.mongodb.org/display/DOCS/Starting+and+Stopping+Mongo#StartingandStoppingMongo-SendingaUnixINTorTERMsignal

改用sudo killall -15 mongod

Andreas Jung:

“星期六6月25日09:38:51 [initandlisten] listen():bind()失败errno:98地址已经在使用socket:0.0.0.0:27017

是自言自语。

mongod的另一个实例已经在运行,并分配了27017的MongoDB默认端口。

要么杀死其他进程,要么使用不同的端口。“

在这种情况下,键入以下命令

 ps wuax | grep mongo 

你应该看到像这样的东西

 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 

现在inputmongod实例的kill命令(在这种情况下为31936):

 kill 31936 

星期六6月25日09:38:51 [initandlisten] listen():bind()失败errno:98地址已经在使用socket:0.0.0.0:27017

是自言自语。

mongod的另一个实例已经在运行,并分配了27017的MongoDB默认端口。

要么杀死其他进程,要么使用不同的端口。

从netstat中查找哪个进程正在运行mongodb端口(27017)

命令:

 sudo netstat -tulpn | grep :27017 

输出将是:

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

在我的情况下,“6432”是pid,在您的情况下可能会有所不同。 然后使用以下命令杀死该进程:

 sudo kill <pid> 

而已!

您已经有一个进程正在运行。 你可以用命令杀死它:

 killall mongod 

使用:

 sudo killall mongod 

它会停止服务器。

然后重新开始:

  mongod 

它应该工作。

尝试killall -15 mongod / killall mongod即使在这之后,如果这不起作用,然后通过键入以下命令删除数据库存储文件夹sudo rm -rf / data / db sudo mkdir / data / db sudo chmod 777 / data / db

你要做killall -15 mongod ,因为它还在运行,“socket已经在使用地址:0.0.0.0:27017”。 然后你可以再次运行mongod

如果找不到任何当前运行的进程或者查杀不起作用,请尝试使用其他端口。 例如,请尝试27018,因为默认值是27017。

 mongod --port 27018 

我用命令mongod --help发现了这个

OS X. 活动监视器 ,findmongod ,交叉它。 然后再运行mongod。 问题解决了。

打开terminal并键入:

 mkdir -p /data/db 

然后input:

 mongod 

MongoDB无法启动主要是由于不干净的关机。 要补救,请删除mongod.lock文件。 该文件位于数据文件夹中。

通过查看mongodb.conf或mongod.conf文件来查找数据文件夹的位置。 (Linux系统上/ etc下的Conf文件)。

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

例如,使用上述configuration,该文件位于/var/lib/mongodb/mongod.lock。 只需将其删除并重新启动mongodb。

尝试

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

–dbpath(应该跟着你的数据库的path)

服务器可能已经在运行了。 请通过命令mongo工作与否检查它。

我面临同样的问题。 虽然mongodb服务没有运行,但日志显示address already in use信息。

  $netstat -tulpn | grep :27017 

什么也不返回

经进一步分析发现,这个问题是由于locking文件造成的。 该服务运行正常后,删除locking文件并重新启动它。

 $grep "dbpath" /etc/mongodb.conf dbpath =/var/lib/mongodb $ls /var/lib/mongodb/mongod.lock $service mongod start 

我有同样的问题,我试图打开一个新的mongod实例,它说它已经在运行。

我检查了文档 ,它说打字

 mongo use admin db.shutdownServer() 

检查/var/log/mongodb/mongod.log中的日志,并尝试推断错误。 在我的情况是这样的

无法取消链接套接字文件/tmp/mongodb-27017.sock errno:1操作不允许

删除/tmp/mongodb-27017.sock,它的工作。

它显示错误listen():bind()失败errno:98地址已经在使用套接字:0.0.0.0:27017即27017地址已被其他服务使用。 请通过“netstat -apt | grep”27017“”命令检查

(如果你使用的是Linux),如果

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

要么

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

没有解决这个问题, 注销并重新login 。 这解决了我的问题。

或者你可以从terminal手动杀死进程,我猜。

看起来像是在缺lessLC_ALL环境设置的日志中显示的错误。 这是令人困惑的,但是你可以执行mongo客户端来查看这是一个问题。

如果你是第一次运行mongo,你可能想先设置path

 mongod --dbpath <path to the directory>