我在 Ubuntu 16.04 上安装了 MongoDB。我创建了一个服务,以以下 execsystemd
启动:mongo
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
我的配置文件中的所有选项均有效,但 security: authorization: enabled 除外。当我启用该选项并尝试启动 mongo 服务时,该服务不会启动。我注释掉 auth,它就可以正常启动了。
我发现一篇文章说你应该--auth
在 mongo 服务中的 ExecStart 中添加选项,例如:
ExecStart=/usr/bin/mongod --quiet --auth --config /etc/mongod.conf
当我以这种方式启用 auth 时,它可以工作,但在配置文件中启用该选项则不行。有人能解释一下为什么 auth 似乎只在服务的 ExecStart 行中起作用,而在配置文件中不起作用吗?
MongoDB 文档说这应该在配置文件中起作用。
答案1
如果您不参与任何 mongodb 集群,那么配置文件中的安全设置应该是:
security:
# keyFile: "/data/key/rs1.key"
authorization: "enabled"