Das mongoose-text-search
Plugin arbeitet für mich. Ich musste setzen textSearchEnabled
zu true
. Ich habe es nicht als Parameter beim Start versucht, aber dies funktionierte, als meine Mongod -Instanz bereits ausgeführt wurde:
use admin
db.runCommand({'setParameter':1,"textSearchEnabled":true})
use <my db>
<my db>.<my colleciton>.ensureIndex({"$**":"text"}) //Beware! "$**" indexes the entire document
Außerdem möchten Sie auch in Betracht ziehen, Elasticsearch anstelle von Mongos FTS zu verwenden. Die FTS -Lösung von Mongo ist nicht produktionsbereit (Siehe die Warnung). Ich habe auch nur begrenzte Erfahrung mit Elasticsearch, fand es aber sehr beeindruckend.
Wenn Sie sich für die Elasticsearch -Route entscheiden und immer noch Mongo verwenden möchten, gibt es einige anständige Optionen:
- EIN Fluss, was eingeschaltet werden muss Replikate -SetSo kann der Fluss den OPLlog überwachen (siehe die Wiki)
- Mongoosastik, die gut an Mongoose angeschlossen werden, um abfragen zu können, und hält ESS synchron mit Mongo, indem sie sowohl an Mongo als auch auf ES schreibt.
AktualisierenDa 2.6 mongo standardmäßig die Textsuche aktiviert hat.