在 Amazon Linux 上安装 MongoDB 社区版
概述
使用本教程安装 MongoDB 8.0社区版在 Amazon Linux 上使用 yum
软件包管理器安装。
验证 Linux 发行版
您可以通过在命令行运行以下命令来验证正在运行的 Linux 发行版
grep ^NAME /etc/*release
结果应该是 Amazon Linux 或 Amazon Linux AMI。如果您使用的是不同的 Linux 发行版,请参阅您平台上的安装说明。.
MongoDB 版本
本教程安装 MongoDB 8.0社区版版。要安装 MongoDB 的不同版本,请使用页面左上角的版本下拉菜单选择该版本的文档社区版。
考虑因素
平台支持
MongoDB 8.0 社区版支持以下内容64位 Amazon Linux 发行版,在 x86_64 架构上
Amazon Linux 2023
MongoDB 仅支持该平台的64位版本。
MongoDB 8.0 社区版在 Amazon Linux 上还支持部分平台上的 ARM64 架构。
有关更多信息,请参阅平台支持。
生产注意事项
在生产环境中部署 MongoDB 之前,请考虑自管理部署的生产注意事项文档,该文档提供了生产 MongoDB 部署的性能考虑因素和配置建议。
安装 MongoDB 社区版
按照以下步骤安装 MongoDB社区版使用 yum
软件包管理器进行安装。选择适用于您的 Amazon Linux 版本的选项卡
配置软件包管理系统(yum
)。
创建一个 /etc/yum.repos.d/mongodb-org-8.0.repo
文件,以便您可以直接使用 yum
安装 MongoDB
[mongodb-org-8.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/amazon/2023/mongodb-org/8.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://pgp.mongodb.com/server-8.0.asc
您还可以直接从MongoDB仓库. 下载根据Amazon Linux 2023版本(例如 2023
)组织,然后是MongoDB 版本(例如,8.0
),然后是架构(例如,x86_64
)。
在MongoDB 5.0之前,奇数版本的MongoDB发布版本,如4.3
,是开发版本。从MongoDB 5.1开始,MongoDB有季度快速发布。有关快速发布和长期支持发布之间的差异,请参阅MongoDB版本。
要安装MongoDB的最新稳定版本,请输入以下命令
sudo yum install -y mongodb-org
或者,要安装特定版本的MongoDB,请分别指定每个组件包,并将版本号追加到包名之后,如下例所示
sudo yum install -y mongodb-org-8.0.0 mongodb-org-database-8.0.0 mongodb-org-server-8.0.0 mongodb-mongosh mongodb-org-mongos-8.0.0 mongodb-org-tools-8.0.0
注意
yum
在可用新版本时自动升级包。如果您想阻止MongoDB升级,请通过将以下exclude
指令添加到您的/etc/yum.conf
文件来锁定包
exclude=mongodb-org,mongodb-org-database,mongodb-org-server,mongodb-mongosh,mongodb-org-mongos,mongodb-org-tools
运行MongoDB社区版
ulimit注意事项
大多数类Unix操作系统中,都会限制进程可能使用的系统资源。这些限制可能会对MongoDB的运行产生负面影响,因此需要进行调整。请参阅针对自托管部署的UNIX ulimit
设置以获取您平台推荐的设置。
注意
如果ulimit
中打开文件的数量小于64000
,MongoDB将生成启动警告。
目录
默认情况下,MongoDB实例存储
其数据文件在
/var/lib/mongo
其日志文件在
/var/log/mongodb
如果您通过包管理器安装,这些默认目录将在安装过程中创建。
如果您通过手动下载tar包进行安装,可以使用mkdir -p <directory>
或sudo mkdir -p <directory>
来创建这些目录,具体取决于运行MongoDB的用户。(有关mkdir
和sudo
的信息,请参阅您的linux man页面。)
默认情况下,MongoDB使用mongod
用户账户运行。如果您更改运行MongoDB进程的用户,您必须修改/var/lib/mongo
和/var/log/mongodb
目录的权限,以授予此用户对这些目录的访问权限。
要指定不同的日志文件目录和数据文件目录,请编辑/etc/mongod.conf
中的systemLog.path
和storage.dbPath
设置。请确保运行MongoDB的用户对这些目录有访问权限。
操作步骤
按照以下步骤运行MongoDB社区版版本。以下说明假定您正在使用默认设置。
初始化系统
要运行和管理您的 mongod
进程,您将使用操作系统的内置 初始化系统。Linux的较新版本通常使用 systemd(使用 systemctl
命令),而较旧版本通常使用 System V init(使用 service
命令)。
如果您不确定您的平台使用哪种初始化系统,请运行以下命令
ps --no-headers -o comm 1
然后根据结果选择下面的相应选项卡
systemd
- 选择下面的 systemd (systemctl) 选项卡。init
- 选择下面的 System V Init (service) 选项卡。
验证MongoDB是否已成功启动。
您可以通过执行以下命令来验证 mongod
进程是否已成功启动
sudo systemctl status mongod
您可以选择通过以下命令确保系统重启后MongoDB将自动启动
sudo systemctl enable mongod
停止MongoDB。
如有需要,您可以通过以下命令停止 mongod
进程
sudo systemctl stop mongod
重启MongoDB。
您可以通过以下命令重启 mongod
进程
sudo systemctl restart mongod
您可以通过查看 /var/log/mongodb/mongod.log
文件中的输出,来跟踪进程的状态,以获取错误或重要消息。
开始使用 MongoDB。
在与 mongod
相同的主机机器上启动一个 mongosh
会话。您可以在没有任何命令行选项的情况下运行 mongosh
,以连接到在本地主机上默认端口 27017 运行的 mongod
。
mongosh
有关使用 mongosh
连接的更多信息,例如连接到运行在不同主机和/或端口的 mongod
实例,请参阅 mongosh 文档。
为了帮助您开始使用 MongoDB,MongoDB 为各种驱动版本提供了 入门指南。有关驱动文档,请参阅 开始使用 MongoDB 开发。
启动 MongoDB。
您可以通过以下命令启动 mongod
进程
sudo service mongod start
验证MongoDB是否成功启动
您可以通过检查位于 /var/log/mongodb/mongod.log
的日志文件内容来验证 mongod
进程是否已成功启动。
[initandlisten] waiting for connections on port <port>
其中 <port>
是在 /etc/mongod.conf
中配置的端口号,默认为 27017
。
您可以选择通过以下命令确保系统重启后MongoDB将自动启动
sudo chkconfig mongod on
停止MongoDB。
如有需要,您可以通过以下命令停止 mongod
进程
sudo service mongod stop
重新启动MongoDB。
您可以通过以下命令重启 mongod
进程
sudo service mongod restart
您可以通过查看 /var/log/mongodb/mongod.log
文件中的输出,来跟踪进程的状态,以获取错误或重要消息。
开始使用MongoDB.
在与 mongod
相同的主机机器上启动一个 mongosh
会话。您可以在没有任何命令行选项的情况下运行 mongosh
,以连接到在本地主机上默认端口 27017 运行的 mongod
。
mongosh
有关使用 mongosh
连接的更多信息,例如连接到运行在不同主机和/或端口的 mongod
实例,请参阅 mongosh 文档。
为了帮助您开始使用 MongoDB,MongoDB 为各种驱动版本提供了 入门指南。有关驱动文档,请参阅 开始使用 MongoDB 开发。
卸载MongoDB社区版
要从系统中完全删除MongoDB,您必须删除MongoDB应用程序本身、配置文件以及包含数据和日志的任何目录。以下部分将指导您完成必要的步骤。
警告
此过程将完全删除MongoDB、其配置和所有数据库。此过程不可逆,因此在继续之前请确保所有配置和数据都已备份。
附加信息
默认绑定到本机
默认情况下,MongoDB启动时将 bindIp
设置为 127.0.0.1
,这会绑定到本机网络接口。这意味着 mongod
只能接受运行在同一台机器上的客户端的连接。远程客户端将无法连接到 mongod
,并且如果此值未设置为有效的网络接口,mongod
将无法初始化一个 副本集。
此值可以配置为以下方式之一
警告
在将实例绑定到公开可访问的IP地址之前,您必须确保您的集群不受未经授权的访问。有关安全建议的完整列表,请参阅自托管部署的安全清单。至少,请考虑启用身份验证和加强网络基础设施。
有关配置bindIp
的更多信息,请参阅自托管部署中的IP绑定。
MongoDB社区版软件包
MongoDB社区版可以从其专用的仓库中获取,并包含以下官方支持的软件包
软件包名称 | 描述 | ||||||
---|---|---|---|---|---|---|---|
mongodb-org | 一个 metapackage ,会自动安装以下列出的组件软件包。 | ||||||
mongodb-org-database | |||||||
mongodb-mongosh | 包含MongoDB Shell ( mongosh )。 | ||||||
mongodb-org-tools | 一个
|