MongoDB

设置本地 MongoDB 数据库

分享到

概述

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

本指南将涵盖以下平台

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

在 Windows 上设置 MongoDB

注意: 本指南是为 MongoDB 4 版本编写的,自编写之时起,安装过程已更改。要安装更新版本的 Windows 版 MongoDB,请查看 MongoDB 的 Windows 安装文档

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

访问 MongoDB Community Server 的下载页面,并选择适用于 Windows 的最新 msi 包。点击Download(下载)获取安装程序

MongoDB download page

下载完成后,双击该文件以运行安装程序(你可能需要确认你希望允许该程序对你的计算机进行更改)

下载完成后,双击该文件以运行安装程序(你可能需要确认你希望允许该程序对你的计算机进行更改)

MongoDB installer greeting

在初始页面上点击 Next(下一步)继续。

在下一页上,阅读并查看最终用户许可协议,并勾选复选框以确认你同意这些条款

MongoDB EULA agreement

点击 Next(下一步)继续。

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

MongoDB installation type

选择 Complete(完整)安装以安装所有 MongoDB 组件。

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

MongoDB service configuration

默认值应该适用于大多数情况。当你对你的选择感到满意时,点击 Next(下一步)。

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

MongoDB compass installation

做出决定后,点击 Next(下一步)。

下一个屏幕指示预安装配置已完成,MongoDB 已准备好安装

MongoDB ready to install

点击 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

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

点击 Connect(连接)以连接到你正在运行的 MongoDB 服务器。

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

MongoDB compass running

当你完成 MongoDB 服务器的工作后,你可以停止每个组件。

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

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

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

在 macOS 上设置 MongoDB

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

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

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 无法识别的应用程序时,该策略就会被激活。你可以通过进入你的 System Preferences(系统偏好设置),点击 Security and Privacy(安全性与隐私),然后点击 MongoDB 服务器条目旁边的 Allow Anyway(仍然允许)来为你的 MongoDB 服务器允许例外

MongoDB allow execution

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

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

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

点击 Connect(连接)以连接到你正在运行的 MongoDB 服务器。

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

MongoDB compass connect

当你完成 MongoDB 服务器的工作后,你可以停止每个组件。

在 MongoDB Compass 中,点击 Connect(连接)菜单,然后选择 Disconnect(断开连接)以断开与 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

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