无法启动本地服务器

我是新来的。.当我尝试用 mongod命令运行 mongodb 本地服务器时,它运行失败并抛出此错误。.

/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. 。

210369 次浏览

星期六6月25日09:38:51[ initandlisten ] Listen () : bind () false errno: 98 已用于套接字的地址: 0.0.0:27017

是自言自语。

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

要么终止另一个进程,要么使用不同的端口。

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

使用 sudo killall -15 mongod代替

试试:

sudo service mongod stop
sudo mongod

停止当前活动的 mongodb 服务,允许您随后启动一个新的服务

它显示了错误 listen () : bind () false errno: 98 Address already in use for socket: 0.0.0.0:27017 即27017地址已被其他服务使用。 请检查一下 “ netstat-apt | grep“27017” 指挥官

试试看

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

—— dbpath (后面应该跟着 db 的路径)

从 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>

够了!

(如果您正在使用 linux,)如果

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

或者

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

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

或者可以从终端手动终止进程。

荣格:

”Sat Jun 2509:38:51[ initandlisten ] listen () : bind () false errno: 98已经在套接字中使用的地址: 0.0.0.0:27017

是自言自语。

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

要么关闭另一个进程,要么使用另一个端口。”

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

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

现在输入 monGod 实例的 kill 命令(本例中为31936) :

kill 31936

当缺少 LC _ ALL 环境设置时,似乎在日志中显示了相同的错误。这是令人困惑的,但是您可以执行 mongo客户端来看到它是一个问题。

服务器可能已经在运行。请用 Mongo命令检查它是否正常工作。

我也遇到过同样的问题。虽然 mongodb服务没有运行,但是日志显示了 address already in use消息。

 $netstat -tulpn | grep :27017

一无所获

经进一步分析发现,问题出在锁文件上。在删除锁文件并重新启动之后,服务运行良好。

$grep "dbpath" /etc/mongodb.conf


dbpath =/var/lib/mongodb


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


$service mongod start

如果你是第一次运行 mongo 你可能要先设置路径

mongod --dbpath <path to the directory>

我也遇到了同样的问题,当我试图打开一个 monGod 的新实例时,它显示它已经在运行了。

我检查了 医生,上面说要打字

mongo
use admin
db.shutdownServer()

您已经运行了一个进程:

killall mongod

打开终端并键入:

mkdir -p /data/db

然后输入:

mongod

检查/var/log/mongodb/mongod.log 上的日志,并尝试推断出错误

解除套接字文件/tmp/mongodb-27017的链接失败。 sock errno: 1操作不允许

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

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

mongod  --port 27018

我通过指令 mongod --help发现了这个

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

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

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

例如,使用上面的配置,该文件位于/var/lib/mongodb/mongod.lock。

尝试杀死任何一个 -15蒙古/杀死所有蒙古 即使在此之后,如果这不工作,然后删除数据库存储文件夹,键入以下命令 Sudo rm-rf/data/db Sudo mkdir/data/db Sudo chmod 777/data/db

用途:

sudo killall mongod

它会停止服务器。

然后通过以下方法重新启动 mongod:

sudo service mongod restart

应该能行。

操作系统。 活动监察器 , 寻找 上帝, 穿过去。 然后再跑,上帝。 问题解决了。

您希望执行 killall -15 mongod,因为它仍在运行: Address already in use for socket: 0.0.0.0:27017

然后再运行 mongod

我建议改用:

$sudo service mongodb stop

这样也行。

要解决 窗户中的问题,以下步骤对我有效:

例如 mongoDB 版本3.6已经安装,MongoDB 的安装路径是“ D: Program Files MongoDB”。

创建文件夹 D: mongodb log,然后在该文件夹中创建文件 mongodb.log。

将 cmd.exe 运行为 管理人,

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

将这两个文件 mongod.lockstorage.bson删除到文件夹“ D: mongodb data”下。

然后使用管理员权限在 cmd 中键入 net start MongoDB,问题就解决了。

杀戮过程并没有解决我的问题。 我的 Mac崩溃了,在重新启动时,mongodbPath 中出现了一些锁文件(mongo.lock,WiredTiger.lock)。我将这些文件移动到不同的文件夹(我没有删除,以避免更多的问题) ,然后它工作。 在成功星号上,我删除了移动的锁文件。