Из системной оболочки вы можете использовать lsof
(см. Ответ Дерика ниже) или netstat -an
просмотреть, что на самом деле делает процесс. Однако, если у вас есть доступ только к mongo
оболочке (что подразумевает заголовок вашего вопроса), вы можете запустить serverCmdLineOpts()
команду. Этот вывод даст вам все аргументы, переданные в командной строке (argv) и аргументы из файла конфигурации (проанализированные), и вы сможете сделать вывод, что порты mongod
прослушивают на основе этой информации. Вот пример:
db.serverCmdLineOpts()
{
"argv" : [
"./mongod",
"-replSet",
"test",
"--rest",
"--dbpath",
"/data/test/r1",
"--port",
"30001"
],
"parsed" : {
"dbpath" : "/data/test/r1",
"port" : 30001,
"replSet" : "test",
"rest" : true
},
"ok" : 1
}
Если вы не передали определенные параметры порта, подобные приведенным выше, то по умолчанию mongod
будет прослушиваться 27017 и 28017 ( http-консоль ). Примечание: есть несколько других аргументов, которые могут изменять порты без явного указания, см. Здесь:
https://docs.mongodb.org/manual/reference/configuration-options/#sharding.clusterRole