与this密切相关,但我使用的是mongod版本3.2,这意味着它有一个不同的问题。
我创建了一个文本索引:
> db.mycollection.createIndex({body:'text'})
然后我尝试搜索它:
> db.mycollection.find({$text:{$search:'foo'}})
Error: error: { "$err" : "invalid operator: $search", "code" : 10068 }
should工作。 (对v3.2的$ text运算符的更改不应该影响这一点。)我做错了什么?
答案 0 :(得分:0)
问题是由mongodb卸载/重新安装过程中幸存的旧数据库(由mongod 2.4创建)引起的。 official doumentation没有提及它,但在卸载旧版本时,有必要这样做:
sudo rm -r /data/db/*
(也许是因为安装了2.4?)删除这些文件,并使用mongodump
和mongorestore
命令将旧数据转发。