我尝试运行 mongo db 服务,但它无法启动。我收到消息
Job for mongod.service failed. See "systemctl status mongod.service" and
"journalctl -xn" for details.
我谷歌搜索并发现问题出在配置文件上,pidfilepath
但/var/run/mongodb/mongod.pid
似乎我没有这样的文件。
我还直接mongod
从终端运行,该终端似乎/data/db
以 root 身份启动数据库服务器(在创建目录之后),但无法以普通用户身份运行它。
我想从服务运行服务器,我的 pid 文件应该如何?我试图找到它,但似乎无处可寻。我也在运行OpenSuse 13.2
。
更新:: 我在我的系统中搜索了几个 pid 文件,它们都包含可能映射到 PID 的数字。 mongodb的默认PID是多少?
更新::我又来了谷歌搜索发现 pid 是 1036,所以我创建了一个mongod.pid
具有该值的文件1036
,并更改了文件所有权和文件权限,现在它正在工作。
答案1
任何应用程序都不存在默认 PID。 PID 代表进程标识符。每个进程在启动时都会被操作系统赋予一个 PID(在已运行的程序中是唯一的)。程序在每次启动时可能有不同的 PID。关于您的问题,您是否尝试过错误消息所说的内容?
journalctl -xn
这将为您提供错误的确切原因。鉴于您发布的内容,我认为问题在于权限。您必须确保运行 mongodb 的用户有权创建 pidfile。