Mongodb 2dsphere:“$ err”:“找不到特殊索引:2d for

时间:2013-07-05 09:31:57

标签: mongodb indexing geojson

在我的mongodb Collection中,我有一个2dsphere索引

{ "ns" : "PanPanDB.posts", "key" : { "location_2dsphere" : "2dsphere" }, "name" : "location_2dsphere_2dsphere", "background" : true, "safe" : null, "unique" : false }

当我查询它时,我得到以下错误:

> db.posts.find( { "location_2dsphere" :{ $near : {$geometry:    { type : "Point" , coordinates : [ 100 , 5 ] } , $maxDistance : 1000}}}  )
error: {
    "$err" : "can't find special index: 2d for: { location_2dsphere: { $near: { $geometry: { type: \"Point\", coordinates: { 0: 100.0, 1: 5.0 } }, $maxDistance: 1000.0 } } }"
}
你能帮帮我吗?网上没有太多文档!

1 个答案:

答案 0 :(得分:3)

假设您使用的是ubuntu,默认的apt-get install mongodb-server为您提供了2.2版的mongodb,它不支持2dsphere索引。

您可能需要考虑升级到2.4:http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/