首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将mongodb从4.2升级到4.4失败,错误为"...unsupported WiredTiger file version...“

将 MongoDB 从 4.2 升级到 4.4 失败,错误为 "...unsupported WiredTiger file version..." 是由于 MongoDB 版本升级后,WiredTiger 存储引擎文件版本不兼容导致的。

WiredTiger 是 MongoDB 默认的存储引擎,它负责管理数据的存储和访问。在 MongoDB 升级过程中,WiredTiger 文件版本需要与目标版本兼容,否则会出现不支持的错误。

解决这个问题的方法是执行以下步骤:

  1. 确认当前 MongoDB 版本:使用命令 mongod --version 可以查看当前 MongoDB 的版本号。
  2. 检查 WiredTiger 文件版本:在 MongoDB 数据目录中,可以找到 WiredTiger 存储引擎的文件。升级失败的错误信息中提到了不支持的文件版本,可以通过查看文件名或者文件属性来确认当前的文件版本。
  3. 检查 MongoDB 官方文档:在 MongoDB 官方文档中,可以找到关于版本升级的详细说明和步骤。查找与当前版本和目标版本相应的升级指南,了解是否有特殊的注意事项或者需要执行的额外操作。
  4. 逐步升级:如果当前版本与目标版本之间存在多个中间版本,建议逐步升级。例如,先将 MongoDB 升级到一个中间版本,再从中间版本升级到目标版本。这样可以避免直接跳跃多个版本导致的兼容性问题。
  5. 备份数据:在进行任何升级操作之前,务必备份 MongoDB 数据。升级过程中可能会出现意外情况,备份可以保证数据的安全性。
  6. 执行升级操作:按照 MongoDB 官方文档中的指引,执行升级操作。这可能涉及到停止 MongoDB 服务、替换二进制文件、修改配置文件等步骤。
  7. 检查日志和错误信息:在升级过程中,及时查看日志和错误信息,以便发现并解决任何问题。特别关注与 WiredTiger 存储引擎和文件版本相关的错误。

如果以上步骤仍然无法解决问题,可以考虑以下几点:

  • 检查硬件和操作系统要求:确保硬件和操作系统满足 MongoDB 4.4 的要求,例如最低内存要求、操作系统版本等。
  • 联系 MongoDB 官方支持:如果遇到无法解决的问题,可以联系 MongoDB 官方支持寻求帮助。

需要注意的是,由于要求不能提及特定的云计算品牌商,无法提供腾讯云相关产品和产品介绍链接地址。但是,腾讯云提供了 MongoDB 的云数据库 TencentDB for MongoDB,可以在腾讯云官方网站上查找相关信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Mongodb 细数 4.4 后改变的配置信息

凡是4.4改变的配置信息会加粗加深 systemLog 中在4.4 -- 5.0 变化不大 verbosity是描述日志记录的详细度,如果不做设置,默认为0如果想得到更多debug的信息可以通过值调整...而这些细致的调节的功能是 MONGODB 4.2开始加入的,并且这些选项中的信息下面有更多的信息可以被选择,如 replicaiton.election, replication.rollback...MONGODB 4.2后 storage.engine 不能在使用 MMAPV1的数据库引擎,wirtedTiger是MONGODB默认的引擎。...MONGODB 4.4 后添加了storage.oplogMinRetentionHours参数,这个参数对于oplog保留的时间做了设置,举例如设置1.5 则意味此时产生的OPLOG 保留1.5...directoryForIndexes 默认是false,这里选择true 目的数据和索引分开存储 maxCacheOverflowFileSizeGB: 设置在MONGODB4.4

79410
  • Mongodb Delete与TTL索引删除数据磁盘不释放

    TTL索引删除 TTL索引允许我们文档设置过期时间,MongoDB会定期扫描集合,并自动删除已过期的文档。...查看碎片方法 //无碎片集合 db.tmp0425.stats().wiredTiger["block-manager"]["file bytes available for reuse"] 0 //有碎片集合...18GB db.el_frequent_visitor_tmp0425.stats().wiredTiger["block-manager"]["file bytes available for reuse...如果必须在主节点上运行 compact 命令,可以使用 force 选项来强制执行; 3、不同版本之间节点限制 MongoDB 4.4 之前: 阻塞行为:compact 命令会阻塞节点上的所有读写活动...4、注意事项 MongoDB 4.2 compact 命令只会阻塞正在进行压缩操作的数据库,不会影响同一个 MongoDB 实例中其他数据库的操作。

    12510

    MONGODB 内存使用分析与判断内存是否缺少

    virtual: 这个值是mongodb 使用的虚拟内存的大小, 这里包含了linux 系统中mongodb 程序使用的 SWAP (如果开启了 ),以及使用的 linux file system...内存(包含分配和并未使用的) 问题是为什么mongodb wiredTiger 不和 ORACLE , MYSQL innodb 内存设置整体的内存的 60% -80%, 而是50% 不到....().wiredTiger.cache['pages read into cache'] 我们以 2秒一个取数点, page requested from the cache 的值减去上一个 2秒的值...这里建议MONGODB 升级到 4.2 及以上版本。...同时基于版本的问题,之前的复制集合之间是通过串行来进行导致库在创建索引时会消耗更多的内存用于数据的操作和回放,MOGNODB 4.2 后改用并行的方式提高了回放的效率。

    1.7K30

    MongoDB 初体验:存储引擎 MMAPv1 与高内存消耗及升级迁移

    这其中的主要原因是 2014 年 12 月,MongoDB 收购了 WiredTiger 公司,WiredTiger MongoDB 3.0 开发了一个专用版本的存储引擎,我们不得不钦佩 MongoDB...发现如果直接3.0升级到3.6,会出现错误: about to fork child process, waiting until server is ready for connections. forked...也就是说,3.0 版本,要先升级到3.4,再升级到3.6。...这其中还有几个小步骤,首先从官方网站下载相应的版本,用 3.4 版本启动数据库,然后在 admin下执行必要的命令,兼容性版本设置3.4: [root@enmotech mongodb-rhel-3.4.15...根据以下时间间隔或条件,WiredTiger缓冲的日记记录同步到磁盘: 3.2版新增功能:每50毫秒。 版本3.6中:MongoDB 设置检查点以60秒的间隔执行。

    1.7K70

    MONGODB 内存使用分析与判断内存是否缺少

    virtual: 这个值是mongodb 使用的虚拟内存的大小, 这里包含了linux 系统中mongodb 程序使用的 SWAP (如果开启了 ),以及使用的 linux file system...内存(包含分配和并未使用的) 问题是为什么mongodb wiredTiger 不和 ORACLE , MYSQL innodb 内存设置整体的内存的 60% -80%, 而是50% 不到....().wiredTiger.cache['pages read into cache'] 我们以 2秒一个取数点, page requested from the cache 的值减去上一个 2秒的值...这里建议MONGODB 升级到 4.2 及以上版本。...同时基于版本的问题,之前的复制集合之间是通过串行来进行导致库在创建索引时会消耗更多的内存用于数据的操作和回放,MOGNODB 4.2 后改用并行的方式提高了回放的效率。

    1.9K20

    MongoDB大量集合启动加载优化原理

    这个优化目前已经backport到4.2和4.0最新版本,阿里云MongoDB 4.2也已支持。...鉴于该优化带来的效果和好处明显,有必要对其背后的技术原理和细节进行深入的探究和学习,本文主要基于MongoDB 4.2社区版优化前后的版本进行对比分析,对MongoDB的启动加载过程、具体优化点、优化原理进行阐述...MongoDBWiredTiger数据组织方式介绍 为了能够管理所有的集合、索引,MongoDB集合的Catalog信息(包括对应到WiredTiger中的表名、集合创建选项、集合索引信息等)组织存放在一个...:db2/collection-11–4499452254973778892.wt”,type=file 2)第二次search是通过上一步获取到的表元信息中的数据文件名称,继续WiredTiger.wt...在优化前,这里用的是metadata:create cursor,多了两次file cursor的search调用过程,并且每次都是WiredTiger.wt表对应的btree的root节点开始search

    1.5K10

    MongoDB中的限制与阈值

    提示 另请参考:命名限制 索引 索引键的限制 注意 4.2版本有变更 4.2版本开始,MongoDB对于fCV设置成**"4.2"**及以上的环境去除了此索引键限制。...对于MongoDB 2.6到fCV设置**"4.2"**或更早的MongoDB版本,索引条目的总大小必须小于1024字节,该总大小可能包括结构体开销,具体取决于BSON类型。...索引名称长度 注意 4.2版本有变更 4.2版本开始,MongoDB对于fCV设置成**"4.2"**及以上的环境去除了此索引名称长度限制。...提示 另请参考: 分片操作限制中的唯一索引限制 WiredTiger存储引擎覆盖查询返回的NaN值始终double类型 如果索引覆盖的查询返回的字段的值NaN,则该NaN值的类型始终double...{ h: 10, w: 15.25, uom: "cm" }, ... } MongoDB 4.4开始,以下操作因路径冲突错误失败,因为它尝试同时投射size文档和size.uom字段: db.inventory.find

    14.1K10

    常见问题: MongoDB 存储

    如果备份是以MongoDB快照数据文件的方式,那么备份恢复可能会变得更加复杂:您可能需要维护每个存储引擎的备份。 WiredTiger存储引擎 我可以现有部署升级到WiredTiger吗? 是。...默认情况下,WiredTiger中的集合数据使用Snappy块压缩 ;也可以使用 zlib 压缩。索引数据默认使用前缀压缩。 我应该WiredTiger内部缓存设置多大?...可供WiredTiger重用的空白空间量反映在db.collection.stats()输出的wiredTiger.block-manager.file字段中(单位字节) 要允许WiredTiger存储引擎将此空白空间释放到操作系统...下次MongoDB需要访问这些文档时,MongoDB可能会出现硬缺页(hard page fault)错误获得最佳性能,你的活跃的大多数数据集应该适合内存大小。...磁盘读取请求的页面并将其加载到内存中。 在活跃的系统上,此过程可能需要很长时间,特别是与读取已在内存中的页相比。 有关详细信息,请参阅 缺页错误。 软缺页和硬缺页错误有什么区别?

    2.5K30

    一文读懂MongoDB事务处理

    MongoDB 4.4开始,你可以隐式或显式地在事务中创建集合。但是,必须使用针对4.4更新的MongoDB驱动程序。有关详细信息,请参阅在事务中创建集合和索引。...MongoDB 4.2开始,多文档事务(无论是在分片集群上还是副本集上)也称为分布式事务。...MongoDB 4.2开始,你不能将killCursors定义事务中的第一个操作。 有关事务中不支持的操作列表,请参阅受限操作。...MongoDB 4.4开始,使用功能兼容版本(fcv)"4.4"或更高,可以在事务内创建集合和索引。如果显式地创建集合或索引,事务必须使用读关注"local"。...存储引擎 MongoDB 4.2开始,多文档事务支持副本集和分片集群,其中: 主节点使用WiredTiger存储引擎,同时 节点使用WiredTiger存储引擎或in-memory存储引擎。

    2.6K20

    单机单节点 MongoDB 为什么删除数据后不释放空间?

    MongoDB3.6 以后,默认使用的储存引擎是 WiredTiger。这个引擎有一个特点,就是删除数据不释放空间。例如现在你的一个集合里面有 10000000 条数据,占用 10GB 的硬盘空间。...如果你的 MongoDB 版本小于 4.4,但是大于等于 3.6,那么虽然删除了数据,磁盘空间不会释放,但当你插入新的数据时,MongoDB 会重用之前占有的空间,而不会继续额外占用新的磁盘空间。...在集合上右键,选择 Statistics,返回的统计数据中,展开 wiredTiger-block-manager-file bytes available for reuse。...命令格式: db.runCommand({'compact': '集合名'}) 在 MongoDB 4.4 之前的版本,compact 会阻塞整个库的增删改查操作,所以需要暂停外部读写后才能执行。...在 MongoDB 4.4 或以后的版本,compact 命令几乎可以在除了删除集合、增删索引外的任何时候执行。

    2.4K30

    一日一技:单机单节点 MongoDB 为什么删除数据后不释放空间?

    摄影:产品经理 阳春面 MongoDB 3.6以后,默认使用的储存引擎是 WiredTiger。这个引擎有一个特点,就是删除数据不释放空间。...如果你的 MongoDB 版本小于4.4,但是大于等于3.6,那么虽然删除了数据,磁盘空间不会释放,但当你插入新的数据时,MongoDB 会重用之前占有的空间,而不会继续额外占用新的磁盘空间。...在集合上右键,选择Statistics,返回的统计数据中,展开wiredTiger-block-manager-file bytes available for reuse。...命令格式: db.runCommand({'compact': '集合名'}) 在 MongoDB 4.4之前的版本,compact会阻塞整个库的增删改查操作,所以需要暂停外部读写后才能执行。...在 MongoDB 4.4 或以后的版本,compact命令几乎可以在除了删除集合、增删索引外的任何时候执行。

    2.4K10

    MongoDB生产注意事项

    注意 分布式事务和多文档事务: MongoDB 4.2开始,这两个术语是同义词。分布式事务是指分片集群和副本集上的多文档事务。...MongoDB 4.2开始,多文档事务(无论是在分片集群上还是副本集上)也称为分布式事务。...大小限制Oplog 4.2版本开始, MongoDB会根据需要创建尽可能多的oplog条目来封装事务中的所有写操作,而不是事务中的所有写操作创建一个条目。...//错误// ---- 使用MongoDB 4.0驱动程序 要在MongoDB 4.2(副本集和分片集群)上使用事务,客户端必须使用为MongoDB 4.2更新的MongoDB驱动程序。...在具有多个mongos实例的分片集群上,使用为MongoDB 4.0更新的驱动程序执行事务(而不是 MongoDB 4.2失败并可能导致错误,包括: 注意 你的驱动程序可能会返回不同的错误

    2.7K20

    MongoDB 4.4 复制机制变化 | oplogTruncateAfterPoint 在主库上的应

    背景 在内部针对 MongoDB 4.4 的测试中,我们发现在带写压力的情况下对主库进行 unclean shutdown (kill -9),主库在重启之后少了很多数据,通过分析日志可以看到在加载完...如果备库在 in-memory no hole 的条件下就对 op 1~3 做了复制,那么在主库在重启的时候,不管是继续做主还是降级,都会和副本集其他成员数据不一致(缺失了 op2)。...在分析 4.24.4 是怎么避免上面这个问题之前,我们需要先了解下 in-memory no hole 是怎么维护的,这个在 4.24.4 中的方式是一样的。...和 4.4 正是依靠 WT 查询 all_durable timestamp 来获得 in-memory no hole point,并设置 oplogReadTimestamp,所有需要需要读 opog...既然 WT 拿到的是 in-memory no hole 的时间戳,4.2 是如何避免上面那个 unclean shutdown 导致的问题的?

    84820

    5个要点,带你了解MongoDBWiredTiger存储引擎

    MongoDB Manual (Version 4.2)> Storage > Storage Engines > WiredTiger Storage Engine MongoDB 3.2开始,...在早期版本中,MongoDB检查点设置WiredTiger中以60秒的间隔或在写入2GB日志数据时对用户数据进行检查,以先到者为准。 在写入新检查点期间,先前的检查点仍然有效。...这样,即使MongoDB在写入新检查点时终止或遇到错误,重启后,MongoDB仍可从上一个有效检查点恢复。...MongoDB 4.0开始,您不能指定–nojournal选项或storage.journal.enabled:使用WiredTiger存储引擎的副本集成员false。...对于集合,还提供以下块压缩库: zlib zstd(MongoDB 4.2开始支持) 要指定替代压缩算法或不压缩,请使用storage.wiredTiger.collectionConfig.blockCompressor

    2K20

    MONGODB 存储文件碾压MYSQL 与 配置文件学习

    那我不是标题党,后面我们出了一个解决方案,让外包商文件存储移步到了MONGODB ,然后进行压测,在压测过程中,100G 存储空间最终压测一台MONGODB 服务器压爆了, 压测的MONGODB 的硬件参数...的数据刷入到磁盘的时间,官方强调不要设置,但如果你值设置0 系统将不会同步内存的数据和磁盘数据,并且journaling日志会将磁盘空间快速消耗。...关于MONGODB 4.2中关于 storage.wiredTiger.engineConfig.journalCompressor 中关于压缩的方式不光有我们熟悉的zlib 压缩模式或者 snappy...storage.wiredTiger.collectionConfig.blockCompressor 这个设置是关于MONGODB 中每个collection的压缩的设置,MONGODB4.2中添加的配置...其余的设置与MONGODB4.0 3.6 大同小异,再次强调MONGODB4.2已经不再支持 MMAPV1. ?

    86810
    领券