运行 rs.status() 会抛出 BSONError: Invalid UTF-8 string in BSON document in mongosh

问题描述 投票:0回答:1

我在一台具有 3 个实例的计算机上设置了一个简单的副本集。如果所有 3 个实例都在运行,我可以在 mongosh 中使用 rs.status() 检查状态,但是,如果我停止其中一个实例,我将无法再检查状态,因为我收到错误。即使我通过 Nodejs 服务器中的 mongoose 执行此操作,每当我尝试获取副本集状态时,它都会直接跳转到标题中的异常。

我尝试过:

db.system.profile.find({}, {}, {enableUtf8Validation: false})

但没有成功。

在我的 Nodejs 服务器中,我尝试通过这条线进行连接:

mongoose.connect("mongodb://127.0.0.1:27017,127.0.0.1:27018,127.0.0.1:27019/term_point?replicaSet=rs0", { family: 4, enableUtf8Validation: false});

它连接到数据库,但当我尝试获取状态时,我仍然遇到相同的异常。

如何解决这个问题?非常感谢!

不确定这是否是原因,但我的计算机的区域设置是西班牙语,但是,计算机名称、用户名都是英语(在某处读到他们在不同的地方遇到了相同的错误,因为他们的计算机名称在其中一个有重音)字母)。

node.js mongodb mongo-shell mongodb-replica-set
1个回答
0
投票

长话短说;如果操作系统的语言不是英语,mongodb 会讨厌它。

© www.soinside.com 2019 - 2024. All rights reserved.