无法在 WSL 上启动 MongoDB

Ami*_*mar 1 mongodb windows-subsystem-for-linux 18.04

我已经使用官方文档中的步骤在 WSL 上安装了 MongoDb 。

当我发出命令时 sudo service mongod start ,我收到以下消息 mongod: unrecognized service

我已经尝试使用这些stackoverflow 答案进行故障排除。我使用其中一个命令开始使用 sudo mongod --fork -f /etc/mongod.conf

但是我无法阻止 mongod 使用sudo service mongod stop. 事实上,即使我关闭 WSL 后 mongod 仍会继续运行。文档有误吗?或者我做错了什么?为什么文档中列出的命令不起作用?

如果我继续使用上述命令启动 mongodb 会影响我存储的数据吗?

小智 7

我能够修复

mongod:无法识别的服务

通过执行以下任务来解决问题:

sudo nano /etc/init.d/mongod
Run Code Online (Sandbox Code Playgroud)

然后复制并粘贴此网址中的内容并保存(您可以使用 vim 或任何其他文本编辑器)

之后给予可执行权限

sudo chmod +x /etc/init.d/mongod
Run Code Online (Sandbox Code Playgroud)

现在您可以通过以下命令启动服务

sudo service mongod start
Run Code Online (Sandbox Code Playgroud)

  • 这适用于安装 mongodb-org 包的官方 MongoDB 文档中的安装说明。如果您使用 WSL Ubuntu,则需要附加说明,因为不知何故未创建该服务。执行“sudo apt-get install mongodb”会安装一个完全独立的 MongoDB 包,该包可能不会像官方包那样更新。 (2认同)
  • 确认这适用于 mongo 4.4、wsl2 和 ubuntu 20 的最新官方说明。 (2认同)