mongodb的官方生动包是2.x,而MongoDB在http://repo.mongodb.org/apt/ubuntu/dists/trusty/上提供的包仅可用于LTS版本。
另一种选择是,我可以切换回14.04 LTS,但是我需要安装openjdk-8-jdk,该版本仅用于生动。
mongodb的官方生动包是2.x,而MongoDB在http://repo.mongodb.org/apt/ubuntu/dists/trusty/上提供的包仅可用于LTS版本。
另一种选择是,我可以切换回14.04 LTS,但是我需要安装openjdk-8-jdk,该版本仅用于生动。
Answers:
如果使用Trusty软件包,则MongoDB可能无法启动:
Failed to start mongod.service: Unit mongod.service failed to load: No such file or directory.
在这种情况下,请按照最后所述安装Debian Wheezy软件包。
下载DEB文件
cd
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org-mongos_3.0.3_amd64.deb
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org-server_3.0.3_amd64.deb
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org-shell_3.0.3_amd64.deb
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org-tools_3.0.3_amd64.deb
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org_3.0.3_amd64.deb
并安装(按此顺序)
sudo dpkg -i mongodb-org-server_3.0.3_amd64.deb
sudo dpkg -i mongodb-org-tools_3.0.3_amd64.deb
sudo dpkg -i mongodb-org-shell_3.0.3_amd64.deb
sudo dpkg -i mongodb-org-mongos_3.0.3_amd64.deb
sudo dpkg -i mongodb-org_3.0.3_amd64.deb
他们可能彼此依赖。这就是为什么安装软件包一一出现错误的原因。我建议
sudo dpkg -i mongodb*.deb
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org
如果使用Trusty软件包,则MongoDB可能无法启动:
Failed to start mongod.service: Unit mongod.service failed to load: No such file or directory.
在这种情况下,请按照以下说明安装Debian Wheezy软件包
sudo apt-get remove mongodb-org
sudo apt-get autoremove
sudo rm /etc/apt/sources.list.d/mongodb-org-3.0.list
sudo echo "deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org
sudo dpkg -i mongodb*.deb
sudo dpkg -i mongodb-org_3.0.3_amd64.deb
作为最后一条命令
service mongod start
?
使用debian wheezy储存库在我的Ubuntu 15.04中成功安装了mongo版本3.0.6,请参见以下步骤
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo "deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org
但是,在完成上述所有步骤并在计算机中安装了mongodb之后,现在当我尝试使用sudo service mongod start
它启动mongodb服务时将失败。引发以下错误信息
Failed to start mongod.service: Unit mongod.service failed to load: No such file or directory.
所以这是我解析并正常启动mongodb的方法
将MongoDB的默认数据存储文件从/ var / lib / mongodb更改为/ data / db
sudo mkdir -p /data/db
sudo gedit /etc/mongod.conf
并如下更改“ dbpath”行
更换DBPATH =在/ var / lib中/ MongoDB的 TO DBPATH = /数据/ DB,然后保存文件。
然后删除旧的默认/ var / lib / mongodb
现在,我们必须使mongod用户拥有的所有目录/文件
跑 sudo chown -R mongodb:mongodb /data/db
现在终于可以开始使用mongo sudo service mongod start
和运行该服务的地方sudo systemctl status mongod
-它应该显示类似以下的消息
Loaded: loaded (/etc/init.d/mongod)
Active: active (running) since Thu 2015-09-03 04:57:49 IST; 7s ago
在我的博客文章中详细介绍了我的步骤。
正如我之前说过的:Debian / Ubuntu软件包已使用systemd服务单元进行了修补,以填补直接从mongodb.org发布的内容留下的空白。但是mongodb.service
在WWW上并不缺少单位文件。同样,写一个也不难。(我有。)
具体来说:您会在适用于Ubuntu版本15的mongodb-server版本2.6软件包中找到这样的服务单元。确实,还有一个由mongodb.org发布的服务单元。只是这种情况,mongodb.org人们错误地将RPM的使用与特定于发行版的东西中的systemd的使用混为一谈。
请注意,具有讽刺意味的是,由mongodb.org提供的服务单元未应用mongodb.org本身建议的systemd服务单元指令。Debian / Ubuntu提供的工具也没有。但是,再次:具有这些指令的手写服务单元并不难编写。或确实进行修改以添加诸如numactl之类的东西。☺