MongoDB 在 Ubuntu 16.04 上安装失败

MongoDB 在 Ubuntu 16.04 上安装失败

我按照 MongoDB 官方网站上的说明进行操作(https://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/),尝试安装 MongoDB 时出现此错误。如何修复此问题以及出了什么问题?请记住,我使用的是最新版 Ubuntu 16.04

sudo apt-get install -y mongodb-org

Reading package lists... Done

Building dependency tree

Reading state information... Done

You might want to run 'apt-get -f install' to correct these:

The following packages have unmet dependencies:

mongodb-org : 

Depends: mongodb-org-shell but it is not going to be installed

Depends: mongodb-org-server but it is not going to be installed

Depends: mongodb-org-mongos but it is not going to be installed

Depends: mongodb-org-tools but it is not going to be installed

virtualbox-5.0 : Depends: libqt4-opengl (>= 4:4.7.2) but it is not going to be installed

Depends: libsdl1.2debian (>= 1.2.11) but it is not going to be installed

Recommends: libsdl-ttf2.0-0 but it is not going to be installed

E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

编辑:标题。MongDB -> MongoDB。

答案1

TL;DR;

尝试运行此命令,

sudo apt-get install libcurl3 openssl

进而

sudo apt-get install mongodb-org

日志:

所以我遵循了 Mongo 4.0 上的官方说明这里运行后得到这个sudo apt-get install mongodb-org

The following packages have unmet dependencies:
 mongodb-org : Depends: mongodb-org-server but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

然后我手动将 mongodb-org-server 添加到安装命令中:

sudo apt-get install mongodb-org mongo-db-server

但后来我得到了

mongodb-org-server : Depends: libcurl3 (>= 7.16.2) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

手动安装这些之后:

sudo apt-get install libcurl3 openssl

我让它与单一一起工作:

sudo apt-get install mongodb-org

命令。

答案2

在 Ubuntu 12.04、14.04、16.04 中安装 mongodb

  1. 导入包管理系统使用的公钥

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
    
  2. 为 MongoDB 创建一个列表文件。

    在 Ubuntu 12.04(已弃用)中:

    echo "deb http://repo.mongodb.org/apt/ubuntu precise/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
    

    在 Ubuntu 14.04 中:

    echo "deb [ arch=amd64 ] https://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
    

    在 Ubuntu 16.04 中:

    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
    
  3. 重新加载本地包数据库。

    sudo apt-get update
    

    它会发出警告

    W: http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/Release.gpg: Signature by key 492EAFE8CD016A07919F1D2B9ECBEC467F0CEB10 uses weak digest algorithm (SHA1)
    

    忽略它就行。

  4. 安装 MongoDB 包。

    sudo apt-get install -y mongodb-org
    

安装后,你可以使用以下命令启动 MongoDB

sudo service mongod start

停止 MongoDB 使用

sudo service mongod stop

要重新启动 MongoDB,请使用

sudo service mongod restart

如果这不起作用,请检查此处以查看是否有任何步骤已更新:https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/

答案3

我尝试运行 t9toqwerty / muru 发布的安装说明。但仍然收到消息

the following packages have unmet dependencies:

对我来说,有效的方法是从 tarball 手动安装 MongoDB。原始链接为:https://docs.mongodb.com/manual/tutorial/install-mongodb-on-linux/

1)下载二进制文件

curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.9.tgz

2)提取文件

tar -zxvf mongodb-linux-x86_64-3.4.9.tgz

3)将档案复制到目标目录

mkdir -p mongodb
cp -R -n mongodb-linux-x86_64-3.4.9/ mongodb

4)将位置放在 PATH 变量中。

export PATH=<mongodb-install-directory>/bin:$PATH

(将<mongodb-install-directory> 替换为提取的 MongoDB 档案的路径。对我来说,这是 /home/myusername/mongodb/mongodb-linux-x86_64-3.4.9)

接下来运行它:

1)创建数据目录

mkdir -p /data/db

2)设置权限

这是为了确保用户对该目录具有读写权限。在终端中找到该目录,然后输入

chmod 777 /data/db

3)运行它!

mongod

如果你没有在步骤 4 中设置 PATH 变量,请通过输入 bin 文件的路径来运行 mongo — 如下所示

<path to binary>/mongod

答案4

Xenial(Ubuntu 16.04);MongoDB v. 3.2.11

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-3.2.list
apt-get -qq update   (if you are using docker)
apt-get update
apt-get install mongodb-org

我刚刚做了,效果很好。

字体:https://www.digitalocean.com/community/tutorials/how-to-install-mongodb-on-ubuntu-16-04

相关内容