在 Debian 上安装 MongoDB 企业版

NOTE

MongoDB Atlas

MongoDB Atlas 是云中托管的 MongoDB 服务选项,无需安装开销,并提供免费套餐以供入门。

概述img

使用本教程使用apt包管理器安装 MongoDB 6.0企业版。

MongoDB 企业版 在选定的平台上可用,并包含对与安全和监视相关的多个功能的支持。

MongoDB 版本img

本教程安装 MongoDB 6.0企业 版。要安装不同版本的 MongoDB Enterprise ,请使用此页面左上角的版本下拉菜单选择该版本的文档。

注意事项img

平台支持img

MongoDB 6.0 企业版在x86_64架构上支持以下 64 位Debian 版本 :

  • Debian 11“Bullseye”
  • Debian 10“Buster”
  • Debian 9“Stretch”

MongoDB 仅支持这些平台的 64 位版本。

有关详细信息,请参阅平台支持

制作说明img

在生产环境中部署 MongoDB 之前,请考虑 生产说明文档,其中提供了生产 MongoDB 部署的性能注意事项和配置建议。

官方 MongoDB 包img

要在您的Debian系统上安装 MongoDB Enterprise ,这些说明将使用由 MongoDB Inc 维护和支持的mongodb-enterprise官方包。mongodb-enterprise官方 包始终包含最新版本的 MongoDB,并且可以从其自己的专用存储库中获得。

IMPORTANT

Debian提供的mongodb包不是 MongoDB Inc.维护的,与mongodb-enterprise官方 冲突。如果您已经在Debian系统 上安装了mongodb软件包,则必须先卸载mongodb软件包,然后才能继续执行这些说明。

MongoDB 企业版包官方软件包的完整列表。

安装 MongoDB 企业版img

按照以下步骤使用apt包管理器安装 MongoDB企业版 。

导入包管理系统使用的公钥。img

从终端发出以下命令以从中导入 MongoDB 公共 GPG 密钥https://www.mongodb.org/static/pgp/server-6.0.asc:

wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -

该操作应返回状态OK.

但是,如果您收到指示gnupg未安装的错误消息,您可以:

  1. 使用以下命令安装gnupg及其所需的库:

    sudo apt-get install gnupg
    
  1. 安装后,重试导入密钥:

    wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -
    

为 MongoDB创建一个/etc/apt/sources.list.d/mongodb-enterprise.list文件。img

使用适合您的 Debian 版本的命令创建列表文件:

Debian 11“Bullseye”。 Debian 10“Buster” Debian 9“Stretch

echo "deb http://repo.mongodb.com/apt/debian bullseye/mongodb-enterprise/6.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-enterprise.list

如果您想安装来自特定版本系列的 MongoDB Enterprise 包,您可以在存储库配置中指定您的 Debian 版本支持的 MongoDB 版本的版本系列。例如,要将您的系统限制为 5.0 版本系列,请添加以下存储库:

echo "deb http://repo.mongodb.com/apt/debian bullseye/mongodb-enterprise/5.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-enterprise-5.0.list

重新加载本地包数据库。img

发出以下命令以重新加载本地包数据库:

sudo apt-get update

安装 MongoDB 企业包。img

安装 MongoDB 企业版。img

发出以下命令:

sudo apt-get install -y mongodb-enterprise

安装特定版本的 MongoDB Enterprise。img

要安装特定版本,您必须单独指定每个组件包以及版本号,如以下示例所示:

sudo apt-get install -y mongodb-enterprise=6.0.3 mongodb-org-database=6.0.3 mongodb-enterprise-server=6.0.3 mongodb-mongosh=6.0.3 mongodb-enterprise-mongos=6.0.3 mongodb-enterprise-tools=6.0.3

如果您只安装mongodb-enterprise=6.0.3而不包含组件包,则无论您指定什么版本,都会安装每个 MongoDB 包的最新版本。

固定特定版本的 MongoDB Enterprise。img

尽管您可以指定任何可用的 MongoDB 版本, apt-get但会在更新版本可用时升级包。为防止意外升级,请固定包。要将 MongoDB 的版本固定在当前安装的版本上,请发出以下命令序列:

echo "mongodb-enterprise hold" | sudo dpkg --set-selections
echo "mongodb-enterprise-server hold" | sudo dpkg --set-selections
echo "mongodb-enterprise-database hold" | sudo dpkg --set-selections
echo "mongodb-mongosh hold" | sudo dpkg --set-selections
echo "mongodb-enterprise-mongos hold" | sudo dpkg --set-selections
echo "mongodb-enterprise-tools hold" | sudo dpkg --set-selections

NOTE

您还可以安装使用系统的 OpenSSL 的 MongoDB Shell。在安装此版本的 MongoDB Shell 之前,您必须已经在系统上安装了 OpenSSL。

您可以安装所有 MongoDB 企业包和使用系统 OpenSSL 的 MongoDB Shell,而无需先删除 MongoDB Shell。例如:

sudo apt-get install -y mongodb-enterprise mongodb-mongosh-shared-openssl11

以下示例移除 MongoDB Shell,然后安装使用系统的 OpenSSL 1.1 的 MongoDB Shell:

sudo apt-get remove -y mongodb-mongosh && sudo apt-get install -y
mongodb-mongosh-shared-openssl11

以下示例删除 MongoDB Shell,然后安装使用系统的 OpenSSL 3 的 MongoDB Shell:

sudo apt-get remove -y mongodb-mongosh && sudo apt-get install -y
mongodb-mongosh-shared-openssl3

您还可以选择要安装的 MongoDB 包。

以下示例安装了 MongoDB Enterprise 和工具,以及使用系统的 OpenSSL 1.1 的 MongoDB Shell:

sudo apt-get install -y mongodb-enterprise-database
mongodb-enterprise-tools mongodb-mongosh-shared-openssl11

以下示例安装 MongoDB Enterprise 和工具,以及使用系统的 OpenSSL 3 的 MongoDB Shell:

sudo apt-get install -y mongodb-enterprise-database
mongodb-enterprise-tools mongodb-mongosh-shared-openssl3

运行 MongoDB 企业版img

默认情况下,MongoDB 实例存储:

  • 它的数据文件在/var/lib/mongodb
  • 它的日志文件在/var/log/mongodb

如果您通过包管理器安装,这些默认目录是在安装过程中创建的。

如果您通过下载 tarball 手动安装,则可以使用mkdir -p <directory>sudo mkdir -p <directory>取决于将运行 MongoDB 的用户来创建目录。mkdir(有关和的信息,请参阅您的 linux 手册页sudo。)

默认情况下,MongoDB 使用mongodb用户帐户运行。如果更改运行 MongoDB 进程的用户,则还必须修改对/var/lib/mongodb/var/log/mongodb 目录的权限,以授予该用户访问这些目录的权限。

要指定不同的日志文件目录和数据文件目录,请编辑systemLog.pathstorage.dbPath中的设置/etc/mongod.conf。确保运行 MongoDB 的用户有权访问这些目录。

大多数类 Unix 操作系统限制进程可能使用的系统资源。这些限制可能会对 MongoDB 操作产生负面影响,应该进行调整。有关为您的平台推荐的设置,请参阅UNIXulimit设置。

NOTE

ulimit从 MongoDB 4.4 开始,如果打开文件数的值小于 ,则会生成启动错误 64000

程序img

按照以下步骤在您的系统上运行 MongoDB企业版。这些说明假定您使用的是官方软件包——而不是Debian提供 mongodb-enterprise 的非官方软件包——并且使用的是默认设置。mongodb

初始化系统

要运行和管理您的mongod进程,您将使用操作系统的内置初始化系统。最新版本的 Linux 倾向于使用systemd(使用systemctl命令),而旧版本的 Linux 倾向于使用System V init(使用service命令)。

如果您不确定您的平台使用哪个 init 系统,请运行以下命令:

ps --no-headers -o comm 1

然后根据结果选择下面适当的选项卡:

  • systemd- 选择下面的systemd (systemctl)选项卡。
  • init- 选择下面的System V Init(服务)选项卡。

系统(系统控制)System V 初始化(服务)

启动 MongoDB。img

mongod您可以通过发出以下命令来启动该过程:

sudo systemctl start mongod

如果您在启动时收到类似以下的错误 mongod

Failed to start mongod.service: Unit mongod.service not found.

首先运行以下命令:

sudo systemctl daemon-reload

然后再次运行上面的启动命令。

验证 MongoDB 是否已成功启动。img

sudo systemctl status mongod

您可以选择通过发出以下命令确保 MongoDB 将在系统重启后启动:

sudo systemctl enable mongod

停止 MongoDB。img

mongod根据需要,您可以通过发出以下命令来停止该过程:

sudo systemctl stop mongod

重新启动 MongoDB。img

您可以mongod通过发出以下命令来重新启动该过程:

sudo systemctl restart mongod

您可以通过查看文件中的输出来跟踪错误或重要消息的过程状态/var/log/mongodb/mongod.log

开始使用 MongoDB。img

开始一个mongoshmongod在同一台主机上的会话 。你可以跑mongosh 没有任何命令行选项来连接到 mongod在默认端口 27017 上运行的本地主机上。

mongosh

有关使用连接的更多信息mongosh,例如连接到mongod在不同主机和/或端口上运行的实例,请参阅 mongosh文档。

为了帮助您开始使用 MongoDB,MongoDB 提供了各种驱动程序版本的入门指南。有关驱动程序文档,请参阅开始使用 MongoDB 进行开发。

卸载 MongoDBimg

要从系统中完全删除 MongoDB,您必须删除 MongoDB 应用程序本身、配置文件以及任何包含数据和日志的目录。以下部分将指导您完成必要的步骤。

WARNING

此过程将完全删除 MongoDB、其配置和所有 数据库。此过程不可逆,因此请确保在继续之前备份所有配置和数据。

停止 MongoDB。img

mongod通过发出以下命令停止进程:

sudo service mongod stop

删除包。img

删除您之前安装的所有 MongoDB 包。

sudo apt-get purge mongodb-enterprise*

删除数据目录。img

删除 MongoDB 数据库和日志文件。

sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb

附加信息img

默认绑定本地主机img

默认情况下,MongoDB 启动时bindIp设置为 127.0.0.1,绑定到本地主机网络接口。这意味着mongod只能接受来自运行在同一台机器上的客户端的连接。远程客户端将无法连接到mongod,并且mongod将无法初始化副本集,除非此值设置为有效的网络接口。

该值可以配置为:

  • 在 MongoDB 配置文件中使用bindIp, 或
  • 通过命令行参数--bind_ip

WARNING

在绑定到非本地主机(例如可公开访问的)IP 地址之前,请确保您已保护集群免受未经授权的访问。有关安全建议的完整列表,请参阅 安全清单。至少,考虑 启用身份验证强化网络基础设施。

有关配置的详细信息bindIp,请参阅 IP 绑定。

MongoDB 企业版包img

MongoDB Enterprise Edition 可从其自己的专用存储库获得,并包含以下官方支持的包:

包裹名字 描述
mongodb-enterprise 一个metapackage自动安装下面列出的组件包的。
mongodb-enterprise-database 一个metapackage自动安装下面列出的组件包的。包裹名字描述mongodb-enterprise-server包含mongod守护程序和关联的配置和初始化脚本。mongodb-enterprise-mongos包含mongos守护进程。mongodb-enterprise-cryptd包含mongocryptd 二进制文件
mongodb-mongosh 包含 MongoDB shell (mongosh).
mongodb-shared-openssl* 包含使用您计算机上已安装的 OpenSSL 版本的 MongoDB Shell (mongosh).
mongodb-enterprise-tools 一个metapackage自动安装下面列出的组件包的:包裹名字描述mongodb-database-tools包含以下 MongoDB 数据库工具:mongodumpmongorestorebsondumpmongoimportmongoexportmongostatmongotopmongofilesmongodb-enterprise-database-tools-extra包含以下 MongoDB 支持工具:mongoldapmongokerberosinstall_compass脚本mongodecrypt二进制

使用 .tgz Tarball 在 Ubuntu 上安装 MongoDB Enterprise使用 .tgz Tarball 在 Debian 上安装 MongoDB Enterprise

原文链接 - https://docs.mongodb.com/manual/tutorial/install-mongodb-enterprise-on-debian/

译者:陆文龙

Copyright © 上海锦木信息技术有限公司 all right reserved,powered by Gitbook文件修订时间: 2023-09-01 17:10:26

results matching ""

    No results matching ""