$ apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927 $ echo "deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.2 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list $ apt-get update $ apt-get install -y mongodb-org
nano /etc/mongod.conf
port: 27017 bind_ip: 127.0.0.1,89.2.1.1
Подробнее: https://docs.mongodb.org/v2.2/reference/configuration-options/
nano /etc/mongod.conf
# network interfaces net: port: 27017 bindIp: 127.0.0.1,89.2.1.1
Подробнее: https://docs.mongodb.org/v3.2/reference/configuration-options/
$ mongo MongoDB shell version: 2.4.9 connecting to: test > use admin; switched to db admin
db.runCommand( { usersInfo:"admin", showPrivileges:true } );
Если не задан пароль у юзера admin в БД admin
mongodump --out /tmp/mongodump
Если задан пароль у юзера
mongodump --username admin --password password --out /tmp/mongodump
Если дамп выполняется с учетом пользовательских настроек
mongodump --host localhost --port 3017 --username admin --password pass --out /tmp/mongodump
mongorestore --db some_other_db -c some_or_other_collection tmp/mongodump/some_collection.bson
mongorestore --db some_other_db --username user --password pass ./
db.getCollection('rooms').update( {}, { $set: {'messageCount': 0}}, { upsert: true, multi: true } ); db.getCollection('rooms').find({});
Мне нужно, чтобы изменить существующий геопространственных запросов таким образом, что она включает в себя расстояние в результаты поиска. (Оба документа и существующий запрос с использованием устаревших координатных пар.) Исходный запрос использует $near. Чтение документации MongoDB похоже, geoNear должен возвратить расстояние, как показано на нескольких примерах.
В то время как я был в состоянии изменить запрос, чтобы использовать geoNear, расстояния не включены в результаты поиска. Вот пример нового запроса:
{ geoNear: 'users', near: [ '0', '0' ], maxDistance: '90', query: { userName: { '$regex': '^test' } } }
Единственное, что не понятно, как Mongo связей в месте, указанному в запросе, на расположение документа. В моем случае пользователи документе есть поле с именем lastKnownPosition. Как работает Mongo даже знаю, на запрос к этому полю?
Вот пример результатов поиска:
{ "__v" : 0 , "_id" : { "$oid" : "5413824f8b4d6f7505120a53"} , "lastKnownPosition" : { "lon" : 0 , "lat" : 0} ", "userName" : "test123" }