我已经在Ubuntu上安装了Mongodb但是不能启动它,我真的陷入了困境!我尝试了很多解决方案,但没有一个能为我工作。
任何帮助将不胜感激
当我运行启动命令
时sudo service mongod start
它说:
Job for mongod.service failed because the control process exited with
error code. See "systemctl status mongod.service" and "journalctl -xe" for details.
状态命令的输出是:
sudo systemctl status mongod.service
●mongod.service 已加载:已加载(/etc/init.d/mongod; bad;供应商预设:已启用) 有效:失败(结果:退出代码)自جمعه2018-03-30 15:00:56 +0430; 2s前 文档:man:systemd-sysv-generator(8) 处理:5500 ExecStart = / etc / init.d / mongod start(code = exited,status = 1 / FAILURE)
15:00:56 mahdi-HP-15-Notebook-PC mongod [5500]:而不是调用 通过/etc/init.d初始化脚本,使用service(8)
مارس30 15:00:56 mahdi-HP-15-Notebook-PC mongod [5500]:实用程序,例如 service mongod startمارس30 15:00:56 mahdi-HP-15-Notebook-PC mongod [5500]:initctl:无法连接到Upstart:连接失败 to socket / com / ubuntu / upstart:
مارس30 15:00:56 mahdi-HP-15-Notebook-PC mongod [5500]:自从 您尝试调用的脚本已转换为
مارس30 15:00:56 mahdi-HP-15-Notebook-PC mongod [5500]:新贵工作, 你也可以使用start(8)工具,例如启动mongod
مارس30 15:00:56 mahdi-HP-15-Notebook-PC mongod [5500]:开始:无法使用 连接到Upstart:无法连接到套接字 / com / ubuntu / upstart:Co
مارس30 15:00:56 mahdi-HP-15-Notebook-PC systemd [1]:mongod.service: 退出控制流程,代码=退出状态= 1
مارس30 15:00:56 mahdi-HP-15-Notebook-PC systemd [1]:启动失败 mongod.service
مارس30 15:00:56 mahdi-HP-15-Notebook-PC systemd [1]:mongod.service: 单位进入失败状态。 مارس30 15:00:56 mahdi-HP-15-Notebook-PC systemd [1]:mongod.service:结果'exit-code'失败。
答案 0 :(得分:1)
我遇到了完全相同的问题。我按照official MongoDB community guide,在xubuntu 16.04工作站上安装MongoDB。该服务工作正常,直到我在安装后重新启动。
然后服务停止工作,它显示了您在问题中描述的行为。我注意到第一次重启后文件夹/var/log/mongodb
消失了。手动创建后,我可以运行mongod
,直到下次重新启动。
此问题的解决方案是更改文件/lib/systemd/system/mongod.service
,以指示systemd创建此文件夹并在加载mongodb
服务之前将其分配给用户mongod
。只需在[Service]
部分添加以下行:
ExecStartPre=/bin/mkdir -p /var/log/mongodb/
ExecStartPre=/bin/chown -R mongodb:mongodb /var/log/mongodb/
然后你应该能够使用任何一个启动服务
sudo systemctl start mongod
或
sudo service mongod start
以下是基于官方指南执行安装的所有命令。
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
sudo apt update
sudo apt install -y mongodb-org
# this command performs the edit described above
sudo sed -i 's/Group=mongodb/Group=mongodb\nExecStartPre=\/bin\/mkdir -p \/var\/log\/mongodb\/\nExecStartPre=\/bin\/chown -R mongodb:mongodb \/var\/log\/mongodb\//g' /lib/systemd/system/mongod.service
# enable and run the service
sudo systemctl enable mongod
sudo systemctl start mongod
# run mongo client and check the service
mongo --host 127.0.0.1:27017
以下是如何完全删除MongoDB(包含日志和数据库):
sudo apt purge mongodb-org*
sudo rm -r /var/lib/mongodb
sudo rm -r /var/log/mongodb