Depuis le shell du système, vous pouvez utiliser lsof
(voir la réponse de Derick ci-dessous) ou netstat -an
pour voir ce qu'un processus est en train de faire. Cependant, en supposant que vous n'ayez accès qu'au mongo
(ce que l'intitulé de votre question implique), vous pouvez alors exécuter la commande serverCmdLineOpts()
commandement. Cette sortie vous donnera tous les arguments passés sur la ligne de commande (argv) et ceux du fichier de configuration (parsed) et vous pouvez déduire les ports mongod
est à l'écoute en fonction de ces informations. Voici un exemple :
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
}
Si vous n'avez pas passé d'options de port spécifiques comme celles ci-dessus, alors la fonction mongod
sera à l'écoute le 27017 et 28017 ( console http ) par défaut. Note : il y a quelques autres arguments qui peuvent modifier les ports sans être explicites, voir ici :
https://docs.mongodb.org/manual/reference/configuration-options/#sharding.clusterRole
0 votes
Avez-vous besoin de mongo shell ? Ou bien un shell unix normal fera l'affaire ? :)
0 votes
@SergioTulentsev Je me demande spécifiquement si cela est possible à l'intérieur du shell mongo -- puisque j'ai déjà trouvé des informations qui sont proches.