gpt4 book ai didi

mongodb - mongodb文本搜索错误没有文本索引

转载 作者:数据小太阳 更新时间:2023-10-29 03:20:18 24 4
gpt4 key购买 nike

我正在尝试使用 mongo db 文本搜索,但我收到以下消息错误 - 没有文本索引虽然可以看到db.items中有文本索引。有什么问题? Mongoose 的命令是什么?

> db.items.getIndexes()
[
{
"v" : 1,
"key" : {
"_id" : 1
},
"ns" : "db.items",
"name" : "_id_"
},
{
"v" : 1,
"key" : {
"type" : "text",
"color" : "text",
"category_A" : "text",
"category_B" : "text",
"category_C" : "text"
},
"ns" : "db.items",
"name" : "type_text_color_text_category_A_text_category_B_text_category_C_text",
"sparse" : false,
"background" : false
}
]
> db.items.runCommand( "text",{search:"D"})
{ "ok" : 0, "errmsg" : "no text index for: db.items" }

最佳答案

首先,您是否使用 textSearchEnabled=true 启动了 mongo(参见 Enable text search)?

如果您使用的是配置文件(例如 /etc/mongodb.conf),正确的行应该是:

setParameter = textSearchEnabled=true

其次,您的索引看起来像常规索引而不是文本。请发布您使用的命令。


如果要测试文本索引功能,请尝试以下操作:

删除您当前的索引(它可能会干扰您将创建的新索引)

db.items.dropIndex("type_text_color_text_category_A_text_category_B_text_category_C_text")

创建一个新的

db.items.ensureIndex({type:"text"}, {unique: false, name: "type_index"})

然后再次尝试搜索。

您可能还需要运行 db.items.reIndex()

关于mongodb - mongodb文本搜索错误没有文本索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55072723/

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