mongoexport: Экспорт данных из MongoDB

Утилита mongoexport позволяет экспортировать данные из MongoDB в различных форматах. Рассмотрим несколько примеров.

Экспорт данных из удаленной базы данных MongoDB

Для подключения к удаленному серверу MongoDB необходимо указать параметры подключения. Пример команды с заполненными параметрами:

  • host: имя хоста сервера
  • username: имя пользователя (admin)
  • password: защищенный пароль
  • authenticationDatabase: база данных для аутентификации (admin)
  • db: база данных для экспорта (myDB)
  • collection: коллекция для экспорта (persons)
  • outfile: имя выходного файла (persons.json)

Команда для экспорта:

mongoexport --host=<hostname> --username=<username> --password=<password> --authenticationDatabase=admin --db=myDB --collection=persons --outfile=persons.json

После выполнения этой команды в файл persons.json будет экспортировано 1000 записей. Результат — список JSON-объектов, каждый на отдельной строке, в формате extended JSON strict mode. ObjectID представлен парой ключ-значение $oid.

Экспорт в формате JSON-массива

Для экспорта данных в формате JSON-массива используйте опцию —jsonArray:

mongoexport --host=<hostname> --username=<username> --password=<password> --authenticationDatabase=admin --db=myDB --collection=persons --outfile=persons.json --jsonArray

Все документы будут объединены в один JSON-массив.

Экспорт данных с использованием запроса (Query)

Для экспорта части коллекции используйте параметр —query. Например, для экспорта документа с индексом 3:

mongoexport --host=<hostname> --username=<username> --password=<password> --authenticationDatabase=admin --db=myDB --collection=persons --outfile=persons.json --query='{ "index": 3 }'

Результат будет содержать только один документ, соответствующий запросу.

Форматирование результата

Для форматирования полученного JSON-файла можно использовать инструменты, например, prettier в Atom.

mongoexport позволяет гибко экспортировать данные из MongoDB в различных форматах и с использованием фильтрующих запросов.

Что будем искать? Например,программа