无论出于什么原因,每当我尝试启动 MongoDB 作为服务(sudo service mongod start)时,我都会收到以下错误:
无法启动 mongod.service:未找到单元 mongod.service。我按照以下链接中的安装步骤进行操作 mongo db 安装 失败的
system> sudo systemctl start mongodb
Failed to start mongodb.service: Unknown unit: mongodb.service
当我尝试时sudo mongod
:
MongoDB shell version: 3.2.13 connecting to: -
2017-06-03T16:19:28.513+0530 W NETWORK [thread1]
Failed to connect to 127.0.0.1:27017, in(checking socket for error after poll), reason: errno:111 Connection refused
2017-06-03T16:19:28.514+0530 E QUERY [thread1]
Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed : connect@src/mongo/shell/mongo.js:229:14 @(connect):1:6 exception: connect failed
当我尝试时mongod --repair
:
2017-06-03T16:32:35.514+0530 I CONTROL [initandlisten]
MongoDB starting : pid=17423 port=27017 dbpath=/data/db 64-bit host=sid-Ideapad-Z570 2017-06-03T16:32:35.514+0530 I
CONTROL [initandlisten] db version v3.2.13 [listen] target_arch: x86_64 2017-06-03T16:32:35.514+0530 I
CONTROL [initandlisten] options: {} 2017-06-03T16:32:35.540+0530 I STORAGE [initandlisten] exception in initAndListen: 29 Data directory /data/db not found., terminating
答案1
我重新安装了 mongod-org,因为我的数据仍然是安全的。
问题是当我运行时我的系统找不到 mongod.service sudo service mongod status
。
运行此操作可修复该问题并恢复服务:
sudo systemctl enable mongod
然后我要做的就是复制正确的配置/etc/mongod.conf
并运行
sudo service mongod restart
答案2
这对我有用。
从系统中完全卸载 mongo:
sudo service mongod stop sudo apt-get purge mongodb-org* sudo rm -r /var/log/mongodb sudo rm -r /var/lib/mongodb
现在使用以下命令重新安装 mongodb:
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-get update sudo apt-get install -y mongodb-org
要安装特定版本,您必须单独指定每个组件包以及版本号,如下例所示:
sudo apt-get install -y mongodb-org=3.6.0 mongodb-org-server=3.6.0 mongodb-org-shell=3.6.0 mongodb-org-mongos=3.6.0 mongodb-org-tools=3.6.0
现在你可以看到 mongod 正在运行,但同样的问题仍然困扰着你。问题是当你运行 时,你的系统找不到 mongod.service
sudo service mongod status
。运行此操作可修复该问题并恢复服务:
sudo systemctl enable mongod
现在您已准备好使用 mongo。
sudo service mongod restart
答案3
尽管我使用官方安装教程安装了 Mongodb,但我也遇到了 OP 提到的确切问题(https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/),
注意:在本教程的第 2 步(为 Mongodb 创建列表文件)中,单击特定于您计算机上特定 Ubuntu 版本的选项卡非常重要。默认情况下,它显示 Ubuntu 14.04,这导致了 OP 提到的问题(无法启动 mongod.service:未找到单元 mongod.service)
当我最终注意到在第 2 步中我必须正确选择 Ubuntu 16.04(对我来说)时,安装成功,并且此后 mongod 运行没有任何问题。