Если у меня запущен экземпляр mongo, как я могу проверить, какие номера портов он прослушивает из оболочки? Я думал, что так db.serverStatus()
получится, но не вижу. я вижу это
"connections" : {
"current" : 3,
"available" : 816
Что близко ... но нет. Предложения? Я прочитал документы и, похоже, не могу найти ни одной команды, которая сделает это.
Ответы:
Из системной оболочки вы можете использовать
lsof
(см. Ответ Дерика ниже) илиnetstat -an
просмотреть, что на самом деле делает процесс. Однако, если у вас есть доступ только кmongo
оболочке (что подразумевает заголовок вашего вопроса), вы можете запуститьserverCmdLineOpts()
команду. Этот вывод даст вам все аргументы, переданные в командной строке (argv) и аргументы из файла конфигурации (проанализированные), и вы сможете сделать вывод, что портыmongod
прослушивают на основе этой информации. Вот пример:Если вы не передали определенные параметры порта, подобные приведенным выше, то по умолчанию
mongod
будет прослушиваться 27017 и 28017 ( http-консоль ). Примечание: есть несколько других аргументов, которые могут изменять порты без явного указания, см. Здесь:https://docs.mongodb.org/manual/reference/configuration-options/#sharding.clusterRole
источник
{ "argv" : [ "mongod" ], "parsed" : { }, "ok" : 1 }
это мне мало что говорит. Я думаю, это говорит мне, что я использую порт по умолчанию.Вы можете сделать это из оболочки операционной системы, запустив:
источник
Попробуй это:
Он отобразит как IP-адрес, так и номер порта.
источник
lsof
:> mongod 14942 dmitrii 5u IPv4 0xc36ad5231f84011d 0t0 TCP *: 27017 (СЛУШАТЬ) И отwhatsmyurl
команды: {"you": "127.0.0.1:50294", "ok": 1 } И они не совпадают.По умолчанию MongoDB прослушивает только один порт (27017). Если
--rest
интерфейс активен, порт 28017 (27017 + 1000) также будет открыт для обработки веб-запросов для получения подробной информации.MongoDB поддерживает
getParameter
команду, но она работает только в том случае, если вы уже подключены к базе данных (в этот момент вы уже знаете порт).источник
Попробуйте следующую команду, она работает для меня:
источник