我试图连接到mongodb 根据这里提供的指示,但得到了以下错误:
vamsiampolu1@takenote:~/workspace (master) $ ./mongod
2014-11-17T09:00:10.101+0000 ** WARNING: --rest is specified without --httpinterface,
2014-11-17T09:00:10.101+0000 ** enabling http interface
warning: bind_ip of 0.0.0.0 is unnecessary; listens on all ips by default
2014-11-17T09:00:10.106+0000 [initandlisten] MongoDB starting : pid=2274 port=27017 dbpath=data 64-bit host=vamsiampolu1-takenote-1084968
2014-11-17T09:00:10.106+0000 [initandlisten] db version v2.6.5
2014-11-17T09:00:10.106+0000 [initandlisten] git version: e99d4fcb4279c0279796f237aa92fe3b64560bf6
2014-11-17T09:00:10.106+0000 [initandlisten] build info: Linux build8.nj1.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
2014-11-17T09:00:10.106+0000 [initandlisten] allocator: tcmalloc
2014-11-17T09:00:10.107+0000 [initandlisten] options: { net: { bindIp: "0.0.0.0", http: { RESTInterfaceEnabled: true, enabled: true } }, storage: { dbPath: "data", journal: { enabled: false } } }
**************
Unclean shutdown detected.
Please visit http://dochub.mongodb.org/core/repair for recovery instructions.
*************
2014-11-17T09:00:10.107+0000 [initandlisten] exception in initAndListen: 12596 old lock file, terminating
2014-11-17T09:00:10.107+0000 [initandlisten] dbexit:
2014-11-17T09:00:10.107+0000 [initandlisten] shutdown: going to close listening sockets...
2014-11-17T09:00:10.107+0000 [initandlisten] shutdown: going to flush diaglog...
2014-11-17T09:00:10.107+0000 [initandlisten] shutdown: going to close sockets...
2014-11-17T09:00:10.107+0000 [initandlisten] shutdown: waiting for fs preallocator...
2014-11-17T09:00:10.107+0000 [initandlisten] shutdown: closing all files...
2014-11-17T09:00:10.107+0000 [initandlisten] closeAllFiles() finished
2014-11-17T09:00:10.107+0000 [initandlisten] dbexit: really exiting now编辑:
我尝试过使用mongod --repair标记,我还尝试执行这个脚本,如果我没有正确关闭mongod,就关闭了本地机器,我就是这样做的:
#!/bin/sh
sudo rm /var/lib/mongodb/mongod.lock
sudo -u mongodb mongod -f /etc/mongodb.conf --repair
sudo service mongodb start它说没有找到/var/lib/mongodb/mongod.lock文件,我尝试将mongodb作为一个服务启动:
sudo service mongod start其中,它要求我使用同样的消息也失败的mongod start。我读过关于net.http.enabled应该关闭,因为它可能增加网络曝光率。
我曾经使用过基于Ubuntu 12.04的vagrant盒,所以我尝试了:
mongodb start这告诉我mongodb不是有效的命令。
我也尝试过mongo,它告诉我:
vamsiampolu1@takenote:~/workspace (master) $ mongo
MongoDB shell version: 2.6.5
connecting to: test
2014-11-17T11:51:44.752+0000 warning: Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused
2014-11-17T11:51:44.753+0000 Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed at src/mongo/shell/mongo.js:146
exception: connect failed我相信我可能错误地关闭了运行mongod的终端窗口,因此无法启动it.But --它不会让我做我通常做的事情并继续工作。
我还尝试运行这个程序,以确定mongod是否已经在运行:
vamsiampolu1@takenote:~/workspace (master) $ ps ax | grep mongod
2504 pts/2 S+ 0:00 grep --color=auto mongod 我试图使用以下方法阻止它运行:
stop mongod然后我又跑了一遍,看看蒙神是否还在跑:
vamsiampolu1@takenote:~/workspace (master) $ ps ax | grep mongod
2524 pts/2 S+ 0:00 grep --color=auto mongod当我试图运行这个:
vamsiampolu1@takenote:~/workspace (master) $ mongod --shutdown
There doesn't seem to be a server running with dbpath: /data/db当我尝试手动设置dbpath时:
vamsiampolu1@takenote:~/workspace (master) $ ./mongod --dbpath /data/db
Error parsing command line: Multiple occurrences of option "--dbpath"发布于 2014-11-17 12:29:23
在我看来,你已经做了很多事情交叉交叉,而没有真正理解你在做什么。
但基本的理解是必要的。因此,下面是一个逐步的指南,用于净化环境,并希望修复带注释的数据库。你有后援,不是吗?
vamsiampolu1还是根用户,还是使用专用用户。与流行的观点相反,sudo命令并不等同于“我真的希望您执行此命令!”还有一次脚踏。没有-u参数的sudo以根权限执行它的参数-进程的有效用户id将是根用户的。文件和目录将为用户和组根创建(除了问题中的进程删除根权限)。通常,最好有一个专门的用户来处理任何守护进程,所以您应该使用mongodb,因为这是由ubuntu和10 and包创建的用户。-u mongodb对于您的系统在修复后能够正常工作至关重要。
这可能需要一段时间。仔细观察日志文件
vamsiampolu1 1@takenote:~$ -n 100 -f /var/log/mongodb/mongod.log
如果上面写的是[initandlisten] dbexit: really exiting now,那么…发布于 2016-03-16 08:44:36
如果您已经根据这方法设置了mongodb,请转到目录中的data文件夹。其中有一个文件mongod.lock。删除它(您不需要根权限),只需使用rm mongod.lock。返回主目录并输入./mongod。希望这能解决问题
发布于 2017-03-10 14:23:59
就我个人而言,我已经经历过这种情况,我发现了一个快速修复程序,它保留了所有的数据。我是一个new developer,如果您在cloud9上编码并使用mongoDB,我的答案将对您有效。
步骤1:导航到在终端中安装mongoDB的目录,您将找到可以使用$ cd ~导航到此目录的文件mongod*。
步骤2: cd进入数据目录$ cd data/
步骤3:查看此目录ls中的所有文件和文件夹。您将找到一个文件mongod.lock*。
步骤4:使用$ rm mongod.lock NB:不包括*删除此文件
步骤5: cd返回到根目录$ cd ~和启动mongo与通常的./mongod与所有数据安全。
祝你好运。
https://stackoverflow.com/questions/26969448
复制相似问题