mongdb 查询地理位置报错:planner returned error: unable to find index for $geoNear query‘ on server 1

193 阅读1分钟

1.问题描述:mongdb存储了地理位置

2.出现问题:进行地理位置查询

{"point": 
  {"type": "Point", 
     "coordinates": [30.443902444762696, -84.27326978424058]}, 
   "created_on": {"$date": 1398016710168}, 
   "radius": 180, 
   "user": {"$oid": "53543188eebc5c0cc416b77c"}, 
   "_id": {"$oid": "53544306eebc5c0ecac6cfba"}, 
   "expires_on": {"$date": 1399831110168}
}

3.解决问题流程:

3.1:网上说要建立索引

db.bar.createIndex({point:"2dsphere"});

3.2:建立索引提示了哪条数据报错,然后将相关数据的储存地理位置的字段  全部改为 {0,0}

3.3改完之后 ,建立了索引,依旧报错

3.4删除之后重新创建索引

db.bar.createIndex({point:"2d"});

3.5最终查询没有报错了

创建索引参考: