MongoDB

设置本地 MongoDB 数据库

分享

概述

本页介绍如何安装和配置 MongoDB 数据库服务器 以及默认的 mongo shell。本指南将介绍如何在您的计算机上安装和设置这些组件,以便本地访问。

本指南将涵盖以下平台

导航到与您将使用的平台匹配的部分。

在 Windows 上设置 MongoDB

注意:本指南是针对 MongoDB 4 版本编写的,自撰写本文档以来,安装过程已发生变化。要为 Windows 安装更近期的 MongoDB 版本,请查看 MongoDB 的 Windows 安装文档

MongoDB 提供了一个本机 Windows 安装程序来安装和配置您的数据库。

访问 MongoDB Community Server 下载页面,选择适用于 Windows 的最新 msi 软件包。单击**下载**获取安装程序

MongoDB download page

下载完成后,双击该文件运行安装程序(您可能需要确认是否允许该程序更改您的计算机)。

下载完成后,双击该文件运行安装程序(您可能需要确认是否允许该程序更改您的计算机)。

MongoDB installer greeting

在初始页面上单击**下一步**继续。

在下一页,阅读和查看最终用户许可协议,并勾选框确认您同意条款。

MongoDB EULA agreement

单击**下一步**继续。

下一页允许您选择要安装的组件。

MongoDB installation type

选择**完全**安装以安装所有 MongoDB 组件。

下一个屏幕允许您自定义安装位置和其他配置项。

MongoDB service configuration

默认值对于大多数情况都适用。当您对选择满意时,单击**下一步**。

接下来,选择是否要安装 MongoDB Compass,这是一个图形界面,您可以使用它来连接和管理 MongoDB 服务器。此组件是可选的。

MongoDB compass installation

做出决定后,单击**下一步**。

下一个屏幕表明预安装配置已完成,MongoDB 准备安装。

MongoDB ready to install

单击**安装**开始将所有 MongoDB 组件安装到您的计算机上。

安装完成后,MongoDB Compass 可能会自动打开。如果是这样,您可以暂时忽略它。

现在 MongoDB 已经安装,我们可以运行服务器并使用附带的 MongoDB shell 连接到它。这两个组件都是从命令行运行的。

在您的开始菜单中,键入 cmd 并单击 Windows 命令提示符启动终端会话。

在您运行服务器之前,您需要创建 MongoDB 存储其数据的默认目录:\data\db。您可以通过键入以下命令来创建该目录。

md \data\db

MongoDB create data directory

之后,您可以通过键入 mongod.exe 可执行文件的绝对路径来启动 MongoDB 服务器。路径的一部分包含您安装的 MongoDB 版本号,因此您的安装路径可能与下面使用的路径略有不同。

C:\Program Files\MongoDB\Server\4.4\bin\mongod.exe

MongoDB run server

如果一切正常,服务器将启动并向控制台输出诊断信息。要验证启动是否成功,请查找一条消息,表明它现在正在接受来自客户端的连接。

MongoDB waiting for connections

要连接到正在运行的 MongoDB 服务器,请打开另一个命令提示符窗口。与之前类似,我们需要键入可执行文件的绝对路径。

在本例中,我们尝试运行 mongo.exe 可执行文件,因此,考虑到版本号的差异,命令应该类似于以下内容

C:\Program Files\MongoDB\Server\4.4\bin\mongo.exe

MongoDB run shell

shell 连接到服务器后,它将打印有关连接的信息,并将您带到 MongoDB 提示符。

MongoDB connect to database

要验证服务器是否正在响应命令,请运行 show dbs 命令。

MongoDB show_dbs

如果您安装了 MongoDB Compass 组件,您还可以从图形界面连接和管理 MongoDB 服务器。

打开 MongoDB Compass 开始。

初始屏幕将让您有机会通过提供连接字符串来连接到正在运行的 MongoDB 服务器。

MongoDB compass connect

如果您在不输入任何信息的情况下单击**连接**,Compass 将自动尝试连接到使用默认配置运行的本地 MongoDB 服务器。

单击**连接**连接到您正在运行的 MongoDB 服务器。

Compass 连接到您的本地服务器后,它将显示有关其中数据库的信息,并允许您使用友好的图形界面管理您的数据。

MongoDB compass running

完成使用 MongoDB 服务器后,您可以停止每个组件。

在 MongoDB Compass 中,点击**连接**菜单,选择**断开连接**以断开与 MongoDB 服务器的连接。之后,您可以安全地关闭 MongoDB Compass 应用程序。

在 MongoDB shell 中,您可以键入exit以结束您的会话。

要停止 MongoDB 服务器,请键入CTRL-c以开始服务器组件的关闭过程。

在 macOS 上设置 MongoDB

MongoDB 提供了一个原生 macOS 安装程序来安装和配置您的数据库。

访问MongoDB Community Server 下载页面,选择最新的适用于 macOS 的 .tgz 文件。点击**下载**获取安装程序

MongoDB download page

下载完成后,打开一个新的终端窗口,并导航到您下载 MongoDB .tgz 文件的位置。

通过键入以下命令解压缩 .tgz 文件的内容

tar xzvf mongodb-macos*.tgz

MongoDB extract tarball

进入解压缩的目录,然后将可执行文件复制到您的 /usr/local/bin 目录中,这样它们将成为操作系统用于搜索可执行文件的 PATH 的一部分

cd mongodb-macos*
sudo cp bin/* /usr/local/bin

MongoDB copy executables

在您启动 MongoDB 服务器之前,您需要创建一些它需要的目录。

首先,通过键入以下命令创建 MongoDB 服务器数据目录

sudo mkdir -p /usr/local/var/mongodb

MongoDB create data directory

接下来,创建一个 MongoDB 可以用来存储日志的目录

sudo mkdir -p /usr/local/var/log/mongodb

MongoDB create log directory

接下来,让您当前的用户拥有新目录,以便 MongoDB 在您使用您的用户运行服务器时能够写入它们

sudo chown $USER /usr/local/var/mongodb
sudo chown $USER /usr/local/var/log/mongodb

MongoDB reassign ownership

现在,MongoDB 服务器需要的目录已经准备好了,您可以使用我们创建的路径启动 MongoDB 服务器,键入以下命令

mongod --dbpath /usr/local/var/mongodb --logpath /usr/local/var/log/mongodb/mongo.log --fork

MongoDB start server

根据您 macOS 的版本,您可能会看到一个提示,指出 MongoDB 服务器的执行已被阻止

MongoDB execution blocked

这是一个安全策略,只要运行 Apple 未识别的应用程序就会激活。您可以通过进入 **系统偏好设置**,点击 **安全性与隐私**,然后点击 MongoDB 服务器条目旁边的 **允许**,为您的 MongoDB 服务器允许一个例外

MongoDB allow execution

当您再次运行命令时,另一个提示可能会出现。但是,这次,您可以选择通过点击**打开**来允许程序执行

MongoDB confirm execution

现在 MongoDB 服务器正在运行,您可以启动 MongoDB shell 连接到您的服务器并管理它。要运行 MongoDB shell,请键入以下命令

mongo

MongoDB run_shell

根据您 macOS 的版本,您可能会收到一条通知,指出执行再次被阻止。如果是这样,请按照之前的步骤允许一个例外,并确认您想要运行 MongoDB shell。

一切顺利的话,MongoDB shell 将连接到您的本地 MongoDB 服务器,并为您提供一个 MongoDB 提示符

MongoDB shell connected

要验证服务器是否正在响应命令,请运行 show dbs 命令。

show dbs

MongoDB show databases

您也可以选择安装一个名为 MongoDB Compass 的图形化 MongoDB 管理器。要安装 Compass,请使用 MongoDB 安装中包含的 install_compass 命令

install_compass

MongoDB install compass

偶尔,安装程序会遇到错误,如上所示,但这通常不会影响实际安装。

初始屏幕将让您有机会通过提供连接字符串来连接到正在运行的 MongoDB 服务器。

MongoDB compass connect

如果您在不输入任何信息的情况下单击**连接**,Compass 将自动尝试连接到使用默认配置运行的本地 MongoDB 服务器。

单击**连接**连接到您正在运行的 MongoDB 服务器。

Compass 连接到您的本地服务器后,它将显示有关其中数据库的信息,并允许您使用友好的图形界面管理您的数据。

MongoDB compass connect

完成使用 MongoDB 服务器后,您可以停止每个组件。

在 MongoDB Compass 中,点击**连接**菜单,选择**断开连接**以断开与 MongoDB 服务器的连接。之后,您可以安全地关闭 MongoDB Compass 应用程序。

在 MongoDB shell 中,您可以键入exit以结束您的会话。

要停止 MongoDB 服务器,您可以通过键入以下命令找到并终止 MongoDB 服务器进程

pkill mongod

在 Linux 上设置 MongoDB

安装方法因您使用的 Linux 发行版而异。请按照下面与您的 Linux 发行版相符的部分操作。

Debian 和 Ubuntu

在 Ubuntu 或 Debian 上安装 MongoDB 的最佳方式是配置您的系统以使用 MongoDB 维护的存储库。

首先,通过键入以下命令将 MongoDB GPG 密钥下载到您的受信任 apt 签名密钥集合中

curl -L https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -

接下来,通过键入以下命令找到并记录可用于您的操作系统的最新 MongoDB 版本

LATEST_MONGO_VERSION=$(. /etc/os-release && curl -L repo.mongodb.org/apt/${ID}/dists/${VERSION_CODENAME}/mongodb-org | grep -Eo '[0-9]+\.[0-9]+' | sort -V | tail -1)

之后,配置适用于您的操作系统的 apt 存储库。

如果您运行的是**Ubuntu**,请键入以下命令

(. /etc/os-release && echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/${ID} ${VERSION_CODENAME}/mongodb-org/${LATEST_MONGO_VERSION} multiverse") | sudo tee /etc/apt/sources.list.d/mongodb-org-${LATEST_MONGO_VERSION}.list

如果您运行的是**Debian**,请改用以下命令

(. /etc/os-release && echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/${ID} ${VERSION_CODENAME}/mongodb-org/${LATEST_MONGO_VERSION} main") | sudo tee /etc/apt/sources.list.d/mongodb-org-${LATEST_MONGO_VERSION}.list

配置完 MongoDB apt 存储库后,更新本地软件包索引并通过键入以下命令安装 MongoDB

sudo apt update
sudo apt install mongodb-org

软件安装完成后,您可以通过键入以下命令启动 MongoDB 服务器

sudo systemctl start mongod.service

您也可以选择使用 enable 命令在启动时自动启动 MongoDB

sudo systemctl enable mongod.service

现在 MongoDB 服务器正在运行,您可以启动 MongoDB shell 连接到您的服务器并管理它。要运行 MongoDB shell,请键入以下命令

mongo

一切顺利的话,MongoDB shell 将连接到您的本地 MongoDB 服务器,并为您提供一个 MongoDB 提示符。要验证服务器是否正在响应命令,请运行 show dbs 命令

show dbs

完成使用 MongoDB 服务器后,您可以停止每个组件。

在 MongoDB shell 中,您可以键入exit以结束您的会话。

要停止 MongoDB 服务器,请键入以下命令

sudo systemctl stop mongod.service

CentOS

在 CentOS 上下载和安装 MongoDB 的最佳方式是使用 MongoDB 维护的存储库。

首先,通过键入以下命令找到并记录可用于您的操作系统的最新 MongoDB 版本

LATEST_MONGO_VERSION=$(. /etc/os-release && curl -L repo.mongodb.org/yum/redhat/${VERSION_ID}/mongodb-org | grep -Eo '[0-9]+\.[0-9]+' | sort -V | tail -1)

接下来,使用您刚刚查询的版本信息编写存储库定义文件。您可以键入以下命令将存储库文件写入文件系统

sudo tee /etc/yum.repos.d/mongodb-org-${LATEST_MONGO_VERSION}.repo << EOF
[mongodb-org-${LATEST_MONGO_VERSION}]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/\$releasever/mongodb-org/${LATEST_MONGO_VERSION}/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-${LATEST_MONGO_VERSION}.asc
EOF

存储库定义文件到位后,您可以通过键入以下命令安装 MongoDB 服务器软件包

sudo yum install mongodb-org

软件安装完成后,您可以通过键入以下命令启动 MongoDB 服务器

sudo systemctl start mongod.service

您也可以选择使用 enable 命令在启动时自动启动 MongoDB

sudo systemctl enable mongod.service

现在 MongoDB 服务器正在运行,您可以启动 MongoDB shell 连接到您的服务器并管理它。要运行 MongoDB shell,请键入以下命令

mongo

一切顺利的话,MongoDB shell 将连接到您的本地 MongoDB 服务器,并为您提供一个 MongoDB 提示符。要验证服务器是否正在响应命令,请运行 show dbs 命令

show dbs

完成使用 MongoDB 服务器后,您可以停止每个组件。

在 MongoDB shell 中,您可以键入exit以结束您的会话。

要停止 MongoDB 服务器,请键入以下命令

sudo systemctl stop mongod.service
关于作者
Justin Ellingwood

Justin Ellingwood

Justin 自 2013 年以来一直在撰写有关数据库、Linux、基础设施和开发人员工具的文章。他目前与妻子和两只兔子住在柏林。他通常不必以第三人称写作,这对所有相关方来说都是一种解脱。