将 Standalone 更改为 WiredTiger

NOTE

从 4.2 版开始,MongoDB 删除了已弃用的 MMAPv1 存储引擎。如果从使用 MMAPv1 的 MongoDB 4.0 部署升级到 MongoDB 4.2,则必须升级到 WiredTiger。

使用本教程将独立 MongoDB 实例的存储引擎更改为WiredTiger 。

注意事项

mongodumpmongorestore

本教程使用mongodumpmongorestore用于导出和导入数据的实用程序。

  • 确保在您的系统上安装并更新了这些 MongoDB 包组件。
  • 确保您有足够的驱动器空间可用于 mongodumpmongod使用 WiredTiger 运行的新实例的导出文件和数据文件 。

默认绑定到本地主机

MongoDB 二进制文件,mongodmongos,默认绑定到localhost

教程运行mongodumpmongorestoremongod来自与他们连接的同一主机 。如果远程运行, mongodumpmongorestore必须指定 IP 地址或关联的主机名才能连接到 mongod.

MongoDB 3.0 或更高版本

您必须使用 MongoDB 版本 3.0 或更高版本才能使用 WiredTiger 存储引擎。如果使用较早的 MongoDB 版本,您必须在继续更改存储引擎之前升级您的 MongoDB 版本。要升级您的 MongoDB 版本,请参阅相应版本的手册。

XFS 和 WiredTiger

使用 WiredTiger 存储引擎,在 Linux 上建议使用 XFS 作为数据承载节点。有关详细信息,请参阅 内核和文件系统。

仅限 MMAPv1 限制

升级到 WiredTiger 后,您的 WiredTiger 部署将不受 以下仅限 MMAPv1 的限制:

MMAPv1 限制 简短的介绍
命名空间数量 对于 MMAPv1,命名空间的数量限制为命名空间文件的大小除以 628。
命名空间文件的大小 对于 MMAPv1,命名空间文件不能大于 2047 兆字节。
数据库大小 MMAPv1 存储引擎限制每个数据库不超过 16000 个数据文件。
数据大小 对于 MMAPv1,单个mongod实例无法管理超过底层操作系统提供的最大虚拟内存地址空间的数据集。
数据库中的集合数 对于 MMAPv1 存储引擎,数据库中集合的最大数量是命名空间文件大小和数据库中集合索引数量的函数。

程序

启动mongod您要更改的 WiredTiger。

如果mongod已经在运行,则可以跳过此步骤。

使用mongodump导出数据。

mongodump --out=<exportDataDestination>

如果在启用授权的情况下运行,请根据需要指定其他选项,例如用户名和密码。看 mongodump可用选项。

使用 WiredTiger为新mongod运行创建一个数据目录。

mongod为将使用 WiredTiger 存储引擎运行的新实例创建一个数据目录。mongod必须对该目录具有读写权限。

mongodWiredTiger 不会从使用不同存储引擎创建的数据文件开始。

更新 WiredTiger 的配置。

mongod实例配置中删除所有MMAPv1 特定配置选项。

用WiredTiger启动mongod

启动,将WiredTiger 的新创建数据目录指定wiredTiger

启动 mongod,将 wiredTiger 指定为 .--storageEngine,并将为 WiredTiger 新创建的数据目录指定为 --dbpath

根据需要指定其他选项,例如--bind_ip

WARNING

在绑定到非本地主机(例如可公开访问的)IP 地址之前,请确保您已保护集群免受未经授权的访问。有关安全建议的完整列表,请参阅 安全清单。至少,考虑 启用身份验证强化网络基础设施。

mongod --storageEngine wiredTiger --dbpath <newWiredTigerDBPath> --bind_ip localhost,<hostname(s)|ip address(es)>

您还可以在配置文件中指定选项。要指定存储引擎,请使用storage.engine设置。

使用 上传导出的数据mongorestore

mongorestore <exportDataDestination>

根据需要指定其他选项。看 mongorestore可用选项。

WiredTiger 存储引擎将副本集更改为 WiredTiger

原文链接 - https://docs.mongodb.com/manual/tutorial/change-standalone-wiredtiger/

译者:陆文龙

Copyright © 上海锦木信息技术有限公司 all right reserved,powered by Gitbook文件修订时间: 2023-09-01 17:10:26

results matching ""

    No results matching ""