gpt4 book ai didi

MongoDB从3.6升级到4.0 : How to fix the "collection does not have uuid in kvcatalog" exception?

转载 作者:行者123 更新时间:2023-12-01 21:53:45 28 4
gpt4 key购买 nike

我在 Rancher 编排的容器化环境中运行 MongoDB 副本集。推出最新更新后,MongoDB3.6.x 升级到 4.0.x(最新)。

upgrade path已遵循,因此,当尝试绑定(bind)保存数据库存储的卷时,服务无法启动,并退出并出现以下异常:

STORAGE  [initandlisten] exception in initAndListen: MustDowngrade: Collection does not have UUID in KVCatalog. Collection: admin.system.version, terminating

即使尝试使用 --repair 选项启动 mongod ,我也会得到相同的结果。我还尝试将容器回滚到 MongoDB 3.6.16,但日志版本现在不兼容。

我们没有卷的快照,因此无法恢复数据(这不是生产环境)。唯一solution我发现网上不适用,因为它建议利用 mongodumpmongorestore,需要一个正在运行的数据库并附加数据存储。

我已经没有想法了,关于如何解决这个问题有什么建议吗?

最佳答案

一个bug report在这个问题上,建议遵循完整的升级路径,这对我有用。当我遇到这个错误时,我能够返回到旧版本,然后正确升级。

具体来说:一次仅升级一个主要版本,并仔细检查先决条件和升级步骤。其中最重要的部分是检查您与db.adminCommand( { getParameter: 1, featureCompatibilityVersion: 1 } )的兼容性。并确保它与当前版本匹配,然后再升级到下一个版本。使用 db.adminCommand( { setFeatureCompatibilityVersion: "3.6" } ) 等命令更新它

https://docs.mongodb.com/manual/release-notes/3.6/#upgrade-procedures 等页面阅读完整文档https://docs.mongodb.com/manual/release-notes/4.0/#upgrade-procedures等等

关于MongoDB从3.6升级到4.0 : How to fix the "collection does not have uuid in kvcatalog" exception?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59708612/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com