我收到此错误而不是我的shell提示符(运行Ubuntu 16.04LTS)。
我对MongoDB很新。我不得不从版本3.4降级到3.2: https://docs.mongodb.com/manual/release-notes/3.4-downgrade-standalone/
我非常忠实地遵循了这些指示(我认为),但现在无法访问shell以确认等等。
scorpian555@scorpo:~$ mongo
MongoDB shell version: 3.2.15
connecting to: test
2017-07-13T14:41:31.434-0400 W NETWORK [thread1] Failed to connect to
127.0.0.1:27017, in(checking socket for error after poll), reason:
errno:111 Connection refused
2017-07-13T14:41:31.434-0400 E QUERY [thread1] Error: couldn't
connect to server 127.0.0.1:27017, connection attempt failed :
connect@src/mongo/shell/mongo.js:229:14
@(connect):1:6
exception: connect failed
在/tmp/mongodb-27017.sock中有一个错误似乎引用的套接字文件
根据这些,我最终删除了该套接字文件,然后尝试重新启动mongod守护程序:
'Failed to unlink socket file" error in MongoDB 3.0 MongoDB - Permission denied for socket: /tmp/mongodb-27017.sock
service mongod restart
service mongod status
scorpian555@scorpo:~$ service mongod status
● mongod.service - High-performance, schema-free document-oriented
database
Loaded: loaded (/lib/systemd/system/mongod.service; enabled; vendor
preset: enabled)
Active: active (running) since Thu 2017-07-13 14:58:08 EDT; 4s ago
Docs: https://docs.mongodb.org/manual
Main PID: 4763 (mongod)
CGroup: /system.slice/mongod.service
└─4763 /usr/bin/mongod --quiet --config /etc/mongod.conf
Jul 13 14:58:08 scorpo systemd[1]: Started High-performance, schema-
free document-oriented database.
根据这些,我删除了套接字文件并运行:
scorpian555@scorpo:~$ ls -ld /tmp
drwxrwxrwt 17 root root 20480 Jul 13 14:58 /tmp
我想我在这里有点迷失,我的印象是,在重启守护进程后,它会重新创建这个临时文件,此时我会检查权限。
我目前无法找到该链接,但已在其他地方找到指示以确保mongod.sock文件的所有者是mongod(而不是root),如果它不是&#39,我将不得不将其打包; t mongod。
我对MongoDB很新,就像我说的那样。我发现这是另一个可能的问题,但想知道我是否应该潜入这个兔子洞,或者我是否会在错误的地方寻找它?
Connection refused to MongoDB errno 111
感谢。
答案 0 :(得分:0)
我的问题是,当我启动mongod服务时,我实际上并没有根据需要使用sudo运行守护进程。