如何设置mongodb在不同的文件夹中运行?

如何设置mongodb在不同的文件夹中运行?

我尝试在 kubuntu 20.04 中将 mongodb 作为服务运行,但默认文件夹除外,位于 /var/lib/mongodb。我可以使用命令在自定义文件夹中运行 mongodb,但不能将mongod --dbpath /my-desired-path/其作为服务运行,我想将此行为设置为将 mongodb 作为服务运行。我尝试过:

  1. 在 mongodb 的配置文件中设置 dbpath,并将 dbpath 中给出的文件夹的权限更改为用户 mongodb 和组 mongodb。 它不起作用。

  2. 将实际文件夹 /var/lib/mongodb 移动到我想要的位置,然后在原始位置放置一个指向它的符号链接。但都不起作用。

这两个是我在谷歌上搜索到的独特的“解决方案”,但都没有用。为了将 mongodb 作为服务运行,我使用了sudo systemctl start mongod,它默默地执行,在检查它的状态后,sudo systemctl start mongod当我使用上面 1 中描述的“解决方案”时,它会抛出以下错误:

mongod.service - MongoDB Database Server
     Loaded: loaded (/lib/systemd/system/mongod.service; disabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Sun 2020-09-27 13:05:52 CEST; 4s ago
       Docs: https://docs.mongodb.org/manual
    Process: 17895 ExecStart=/usr/bin/mongod --config /etc/mongod.conf (code=exited, status=1/FAILURE)
   Main PID: 17895 (code=exited, status=1/FAILURE)

sep 27 13:05:52 buba-System systemd[1]: Started MongoDB Database Server.
sep 27 13:05:52 buba-System mongod[17895]: {"t":{"$date":"2020-09-27T11:05:52.978Z"},"s":"F",  "c":"CONTROL",  "id":20574,   "ctx":"main","msg":>
sep 27 13:05:52 buba-System systemd[1]: mongod.service: Main process exited, code=exited, status=1/FAILURE
sep 27 13:05:52 buba-System systemd[1]: mongod.service: Failed with result 'exit-code'.

使用“解决方案”2,它会抛出类似的非信息性错误。但是,传递此配置文件不会将 mongod 作为服务运行,因为mongod --config /etc/mongod.conf它可以正常工作且没有任何错误。我需要一些帮助。

相关内容