Подтвердить что ты не робот

Что означает "слишком много позиционных опционов", когда вы делаете mongoexport?

mongoexport -h db.mysite.com -u myUser -p myPass -c myCollection

Но я получаю ответ:

ERROR: too many positional options

Что это?

4b9b3361

Ответ 1

У меня была такая же проблема. В моем случае я использовал mongoexport с опцией --query, которая ожидает документ JSON, например:

mongoexport ... --query {field: 'value'} ...

Мне нужно было окружить документ кавычками:

mongoexport ... --query "{field: 'value'}" ...

Ответ 2

У меня была та же проблема. Найден групповой пост где-то, который сказал, чтобы удалить пробел между "-p" и паролем, который работал у меня.

Ваша команда образца должна быть:

mongoexport -h db.mysite.com -u myUser -pmyPass -c myCollection

Ответ 3

Та же ошибка, с которой я столкнулся при импорте файла csv. Но это справедливо, тот факт, что список полей, который вы передаете для импорта csv файла, может иметь пробелы. Просто очистите пробелы в списке полей.

Его ошибка синтаксического анализа.

Ответ 4

У меня была такая же проблема с mongodump. После некоторого поиска я узнал, что использование параметра --out для указания выходного каталога поможет решить эту проблему. Синтаксис использования параметра out

mongoexport --collection collection --out collection.json

Также, если экземпляр Mongodb не запущен, вы можете использовать --dbpath, чтобы указать точный путь к файлам вашего экземпляра.

Источник: http://docs.mongodb.org/manual/core/import-export/

Ответ 5

У меня была такая же проблема с утилитой mongoexport (с использованием 2.0.2). Мое решение состояло в том, чтобы использовать имя параметра FULL (т.е. Не -d, вместо этого использовать -db).

Ответ 6

Иногда редактор будет его испортить (например, evernote). Я исправил проблему, переименовав команду в терминал.

Ответ 7

Я тоже застрял в той же ситуации и обнаружил, что это вызвало.

  1. Убедитесь, что вы экспортируете в формате CSV, добавив параметр --type csv
  2. Убедитесь, что в имени полей нет пробелов. Пример: --fields _id, desc неверен, но --fields id,desc,price хорошая

Ответ 8

Это также работает, если вы сначала поместите параметр -c. Для меня этот порядок работает:

mongoexport -c collection -h ds111111.mlab.com:11111 -u user -p pass -d mydb

Вы также можете оставить пропуск, и сервер попросит вас ввести пропуск. Это работает только в том случае, если сервер поддерживает аутентификацию SASL (например, mlab).

Ответ 9

У меня была такая же проблема с запуском mongod. Я использовал следующую команду:

./mongod --port 27001 --replSet abc -- dbpath/Users/seanfoley/Downloads/mongodb-osx-x86_64-3.4.3/bin/1 --logpath/Users/seanfoley/Downloads/mongodb-osx-x86_64-3.4.3/log.1 --logappend --oplogSize 5 --smallfiles --fork

Появилось следующее сообщение об ошибке:

Ошибка синтаксического анализа командной строки: слишком много позиционных опций указано в командной строке

Что исправило эту проблему, так это удаление одного пробела между '-' и 'dbpath'

Ответ 10

Имел подобный вопрос

$too many positional arguments
$try 'mongorestore --help' for more information

Просто исправить для меня было обернуть местоположение пути в кавычки ""

Это не удалось:

mongorestore -h MY.mlab.com:MYPORT -d MYDBNAME -u ADMIN -p PASSWORD C:\Here\There\And\Back\Again

Это работает:

mongorestore -h MY.mlab.com:MYPORT -d MYDBNAME -u ADMIN -p PASSWORD "C:\Here\There\And\Back\Again"

Ответ 11

У меня была такая же проблема при использовании команды "mongod --dbpath". То, что я делал, выглядело примерно так:

mongod --dbpath c:/Users/HP/Desktop/Mongo_Data

где синтаксис команды должен был быть:

mongod --dbpath=c:/Users/HP/Desktop/Mongo_Data

Это сработало для меня. Помимо этого можно записать командную функцию и синтаксис с помощью команды mongod --help.

Ответ 12

Создайте json файл в той же папке, где у вас есть файл mongod.exe.

Например: coll.json

и откройте командную строку в этой папке.

введите это ниже в CMD.

mongoexport --db имя_каталога --collection имя коллекции --out coll.json

и вы увидите, как индикатор прогресса очень круто экспортирует все данные.