安装 MongoDB 社区版本
配置 yum 包管理系统
创建 /etc/yum.repos.d/mongodb-org-4.2.repo 文件,这样你就可以使用 yum 安装 MongoDB,文件内容如下:
6[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc
You can also download the .rpm files directly from the MongoDB repository. Downloads are organized by Red Hat / CentOS version (e.g. 7), then MongoDB release version (e.g. 4.2), then architecture (e.g. x86_64).
安装 MongoDB
执行下列命令安装最新稳定版本:
1sudo yum install -y mongodb-org
如果要安装特定版本的 MongoDB,请分别指定每个组件软件包,并将版本号附加到软件包名称中,如以下示例所示:
1sudo yum install -y mongodb-org-4.2.3 mongodb-org-server-4.2.3 mongodb-org-shell-4.2.3 mongodb-org-mongos-4.2.3 mongodb-org-tools-4.2.3
你可以指定任何可用的 MongoDB 版本。但是,当有较新版本时,yum会升级软件包。为防止意外升级,请固定包。要固定软件包,请在 /etc/yum.conf 文件中添加以下 exclude 指令:
1exclude=mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools
运行 MongoDB
运行前需要确认数据目录和日志目录是否存在,如果是初次尝试使用 MongoDB,建议使用默认目录。
目录路径
使用默认目录
默认情况下,MongoDB 使用 mongod 用户帐户运行,并使用以下默认目录:
/var/lib/mongo (数据目录)
/var/log/mongodb (日志目录)
如果你是通过软件包管理器安装的,将会自动创建默认目录,并将这些目录的所有者和组设置为 mongod。
如果你是通过下载压缩包进行安装,未创建默认 MongoDB 目录的,需要手动创建 MongoDB 数据和日志目录:
1
2sudo mkdir -p /var/lib/mongo
sudo mkdir -p /var/log/mongodb
创建后,将这些目录的所有者和组设置为 mongod:
1sudo chown -R mongod:mongod
为你创建的目录。
使用非默认目录
要使用默认目录以外的数据目录和/或日志目录:
创建一个或多个新目录。
编辑配置文件 /etc/mongod.conf 并相应地修改以下字段:
storage.dbPath 以指定新的数据目录路径(例如 /some/data/directory)
systemLog.path 以指定新的日志文件路径(例如 /some/log/directory/mongod.log)
确保运行 MongoDB 的用户有权访问这些非默认目录:
1sudo chown -R mongod:mongod
如果更改运行 MongoDB 进程的用户,则必须授予新用户访问这些目录的权限。
配置 SELinux
配置 SELinux
管理 mongod
请按照以下步骤在系统上运行 MongoDB Community Edition。这些说明假定你使用的是默认设置。
要运行和管理 mongod 进程,你将使用操作系统的内置初始化系统。Linux 的最新版本趋向于使用 systemd(使用 systemctl 命令),而 Linux 的较早版本趋向于使用 System V init(使用 service 命令)。
以 systemd(使用 systemctl 命令)为例:
启动 mongod
1sudo systemctl start mongod
如果启动 mongod 时收到与以下类似的错误:
Failed to start mongod.service: Unit mongod.service not found.
首先运行以下命令:
1sudo systemctl daemon-reload
然后再次运行上面的启动命令。
验证 MongoDB 是否已成功启动
1sudo systemctl status mongod
你可以选择执行以下命令来确保 MongoDB 在系统启动时启动:
1sudo systemctl enable mongod
停止 mongod
1sudo systemctl stop mongod
重启 mongod
1sudo systemctl restart mongod
你可以通过查看 /var/log/mongodb/mongod.log 文件中的输出来跟踪错误或重要消息的进程状态。
使用 MongoDB
在与 mongod 相同的主机上启动 mongo shell,你可以在没有任何命令行选项的情况下运行 mongo shell,这将使用默认端口 27017 连接到在本地主机上运行的 mongod:
1mongo
有关使用 mongo shell 连接的更多信息,例如连接到在其他主机和/或端口上运行的 mongod 实例,请参阅 mongo Shell。
卸载 MongoDB 社区版本
要从系统中完全删除 MongoDB,必须删除 MongoDB 应用程序本身,配置文件以及所有包含数据和日志的目录。以下部分将指导你完成必要的步骤:
WARNING
This process will completely remove MongoDB, its configuration, and all databases. This process is not reversible, so ensure that all of your configuration and data is backed up before proceeding.
停止 mongod
1sudo service mongod stop
删除 MongoDB 包
1sudo yum erase $(rpm -qa | grep mongodb-org)
删除数据和日志目录
1
2sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongo
References