For the complete documentation index, see llms.txt. This page is also available as Markdown.

33.5 MongoDB

MongoDB 是采用 BSON 格式存储的 NoSQL 文档型数据库,具备动态模式与水平扩展能力。本节说明 FreeBSD 上 MongoDB 8.0 的 pkg 安装、启动配置及基础操作流程。

注意

自 2018 年 10 月 16 日起,MongoDB Community Server 的许可证从 AGPL v3 变更为 SSPL(Server Side Public License,服务器端公共许可证)。SSPL 基于 GPL v3 修改而来,要求以服务形式提供 MongoDB 的第三方必须开源其全部服务栈源代码。SSPL 未被 OSI(Open Source Initiative)批准为开源许可证,MongoDB 于 2019 年 3 月撤回了 OSI 审批申请。严格意义上,MongoDB 属于“源码可用”(source-available)软件,而非 OSI 定义下的开源软件。关于 SSPL 下具体允许与禁止的使用方式,请查阅 MongoDB 官方的 SSPL FAQ:https://www.mongodb.com/legal/licensing/server-side-public-license/faq

安装

使用 pkg 安装 MongoDB:

# pkg install mongodb80

或者使用 Ports 安装:

# cd /usr/ports/databases/mongodb80/
# make install clean

查看 MongoDB 安装后的说明信息:

# pkg info -D mongodb80

服务

安装完成后,启动 MongoDB 服务:

# service mongod enable   # 设置 MongoDB 服务开机自启
# service mongod start    # 启动 MongoDB 服务

mongosh(MongoDB 官方 Shell CLI)

MongoDB 6.0 及更高版本不再包含传统的 mongo 命令行工具,取而代之的是官方的 mongosh。在 FreeBSD Ports 源中已经提供 mongosh,无需额外操作。

安装 mongosh

使用 pkg 安装:

或者使用 Ports 安装:

测试连接 MongoDB

使用 mongosh 连接到本地 MongoDB 服务:

配置文件

相关项目文件结构:

如需进一步配置 MongoDB,可以修改其配置文件。

MongoDB 8.0 的配置文件位于 /usr/local/etc/mongodb.conf,配置模板文件位于 /usr/local/etc/mongodb.conf.sample

创建用户和密码

MongoDB 默认不启用访问控制,任何人均可连接和操作数据库。建议创建用户并设置密码。

使用 mongosh 连接本地 MongoDB 服务:

可将以下文本直接复制至命令行:

创建用户后,启用密码验证:

编辑 /usr/local/etc/mongodb.conf 文件:

去掉 #security: 前的注释符号 #,随后在下一行加入 authorization: enabled,如下所示:

重启 MongoDB 服务使配置生效:

登录方式

启用访问控制后,需使用用户名和密码登录,方式如下:

登录方式 ①

使用 mongosh 连接到本地 MongoDB 服务:

登录方式 ②

使用用户名 admin 和密码 z 登录 MongoDB:

参考文献

最后更新于