我来自riak和redis,在那里我从未有过这个服务启动或互动的问题。

这是蒙古人普遍存在的问题,我对此一无所知。重启也无济于事。我是蒙哥的新手。

mongo
MongoDB shell version: 2.2.1
connecting to: test
Fri Nov  9 16:44:06 Error: couldn't connect to server 127.0.0.1:27017 src/mongo/shell/mongo.js:91
exception: connect failed

这是我在日志里看到的。

 now open)
Fri Nov  9 16:44:34 [conn47] end connection 10.29.16.208:5306 (1 connection now open)
Fri Nov  9 16:45:04 [initandlisten] connection accepted from 10.29.16.208:5307 #48 (2 connections now open)
Fri Nov  9 16:45:04 [conn48] end connection 10.29.16.208:5307 (1 connection now open)
Fri Nov  9 16:45:04 [initandlisten] connection accepted from 10.29.16.208:5308 #49 (2 connections now open)
Fri Nov  9 16:45:04 [conn49] end connection 10.29.16.208:5308 (1 connection now open)
Fri Nov  9 16:45:34 [initandlisten] connection accepted from 10.29.16.208:5316 #50 (2 connections now open)
Fri Nov  9 16:45:34 [conn50] end connection 10.29.16.208:5316 (1 connection now open)
Fri Nov  9 16:45:34 [initandlisten] connection accepted from 10.29.16.208:5317 #51 (2 connections now open)
Fri Nov  9 16:45:34 [conn51] end connection 10.29.16.208:5317 (1 connection now open)
Fri Nov  9 16:46:04 [initandlisten] connection accepted from 10.29.16.208:5320 #52 (2 connections now open)
Fri Nov  9 16:46:04 [conn52] end connection 10.29.16.208:5320 (1 connection now open)
Fri Nov  9 16:46:04 [initandlisten] connection accepted from 10.29.16.208:5321 #53 (2 connections now open)
Fri Nov  9 16:46:04 [conn53] end connection 10.29.16.208:5321 (1 conn

当前回答

此方法仅在希望在不保留原始文件的情况下修复数据文件时有效

找到你的dbpath所在- vim /etc/mongodb.conf

检查选项dbpath=

(I have dbpath=/var/lib/mongodb)

默认:/ / db /数据

典型位置包括:/srv/mongodb、/var/lib/mongodb或/opt/mongodb。

将/var/lib/mongodb替换为dbpath

sudo rm /var/lib/mongodb/mongod.lock
sudo mongod --dbpath /var/lib/mongodb/ --repair
sudo mongod --dbpath /var/lib/mongodb/ --journal

(确保你让你的终端运行,你在上面运行行, 不要按“Ctrl+c”或退出。) 现在在另一个窗口中键入启动mongo的命令。

希望这对你有用! 对于那些想要修复数据文件同时保留原始文件的人 蒙戈恢复

其他回答

在Windows和ubuntu的情况下,我需要在根目录下创建/data/db文件夹。在ubuntu中,我需要一个额外的选项;为目录赋予权限。

窗户

mkdir c:/data/db

ubuntu:

sudo mkdir -p /data/db
sudo chmod 700 /data/db

然后运行

sudo service mongod start

检查

sudo service mongod status

然后运行

mongo

通常这是因为你没有启动mongod进程之前,你尝试启动mongo shell。

启动mongod服务器

mongod

打开另一个终端窗口

启动mongo shell

mongo

@shakthydoss回答工作得很好,但在第二个问题后。lock不在那里,我只是创建了一个空白的,它工作得很好。所以检查一下你的是否在那里。

如果您正在使用命令行:

cd /var/lib/mongodb

ls

“ls”将列出该文件夹中的所有文件,如果mongod. exe文件被删除。锁不在那里,那么:

sudo touch mongod.lock

最后运行命令。

mongod –-repair

sudo service mongod start 

Mongo服务应该工作正常。

如果上面所有的解决方案都不奏效,那么这个可能会有所帮助。在某个地方,您可能已经通过vagrant boxes连接到本地mongodb数据库。

Vagrant up,然后SSH到您的Vagrant机器,其中您已经与mongodb建立了连接(Vagrant SSH vagrant_box_name) 使用# (sudo nano /etc/mongo .conf)注释掉/etc/mongo .conf中的bind_ip行 重启mongodb守护进程服务(sudo service mongod Restart) 瞧……

苹果操作系统

检查状态

brew services list

喜欢的东西:

Name    Status  User Plist
mongodb stopped  

启动它

brew services start mongodb

再试一次

Mongo或Mongo—端口27017