Невозможно получить списки отсортированных документов на основе _id - PullRequest
0 голосов
/ 23 января 2020

Невозможно выполнить резервное копирование mon go документов с помощью команды ниже.

Ошибка:

Failed: error parsing query as Extended JSON: invalid JSON input. Position: 15. Character: O
mongodump --db test-data --collection foo --out=dump --query '{"_id":{"$lt": ObjectId("5e25b7a5f4c9b92aaa8a4131")}}'

Ответы [ 2 ]

1 голос
/ 23 января 2020

ObjectId метод возвращает новое значение ObjectId, которое не является значением ID, которое вы передали. Новый ObjectId недействителен, поскольку не является частью JSON объекта.

На основе этой документации , вы можете передать значение идентификатора 5e25b7a5f4c9b92aaa8a4131 во вложенный запрос $oid (идентификатор объекта).

Запрос

{
  "_id": {
    "$lt": {
      "$oid": "5e25b7a5f4c9b92aaa8a4131"  
    }
  }
}

Окончательное решение

mongodump --db test-data --collection foo --out=dump --query '{"_id":{"$lt":{"$oid": "5e25b7a5f4c9b92aaa8a4131"}}}'
1 голос
/ 23 января 2020

Вы должны будете использовать MongoDB Extended JSON для этого анализа как json.

Ваш запрос становится {"_id" : {"$lt" : {"$oid" : "5e25b7a5f4c9b92aaa8a4131"}}}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...