{ "title": "статьи","text": "статьи"}
. Но у вас в качестве критерия для запроса указан пустой объект (это значит, что выберутся все документы из коллекции), а в select указан дополнительный объект, который говорит, что нужно из результатов брать поля _id
, title
и text
.select
в Mongoose, кстати, используется немного не так. Когда вы передаёте в него в качестве параметра объект, нужно значениям указывать либо 1 (поле включено в результат), либо 0 (поле не включается в результат). Если вы передаёте непустую строку в качестве значения, она воспринимается как 1, но это будет искажать ваше понимание того, что происходит. Select — это только указание, какие поля должны быть в результате, этот метод вообще никак не влияет на условие выборки документов из коллекции. Условия выборки указываются в find. MongoClient mongoClient = MongoClient.create("mongodb link");
import com.mongodb.client.MongoClients
— удалите, это не правильно.MongoClient mongoClient = new MongoClient("mongodb link");
/lib/systemd/system/mongod.service
.[Service]
должны идти эти строки:User=mongodb
Group=mongodb
/tmp/mongodb-27017.sock
. Так же, запускать/перезапускать сервис лучше только командой sudo systemctl start mongod.service
systemctl
написано mongod
, а не mongod.service
, вы, возможно используете собственную конфигурацию для запуска, и тогда нужно редактировать другой файл — вы должны быть в курсе, какой именно, потому что наверняка сами его писали. В оригинальном файле с конфигурацией сервиса, который по-умолчанию создаётся после установки MongoDB, целевой пользователь/группа прописываются правильно и проблем не создают. const collection = db.collection('Books');
const changeStream = collection.watch();
changeStream.on('change', event => {
// event — см. типы событий: https://docs.mongodb.com/manual/reference/change-events/
});
cat /etc/mongod.conf | grep "^port"
cat /var/log/mongodb/mongod.log
— там, возможно будет написано, в чём проблема. Может быть вы к правильному порту цепляетесь, но нужно дополнительно вводить имя пользователя и пароль для авторизации.$box: [
[ <нижний левый угол> ],
[ <верхний правый угол> ]
]
[36.362, 55.38691]
, а для верхнего правого — максимальные, [38.573, 56.00606]
. В итоге, этот запрос охватывает точку, которую вы искали:db.places.find({
loc: {
$within: {
$box: [
[36.362, 55.38691],
[38.573, 56.00606]
]
}
}
})