MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment trouver l'emplacement des données et des fichiers journaux de mongodb via la commande ?

Le moyen le plus simple est probablement avec le getCmdLineOpts commande :

db.getSiblingDB("admin").runCommand({getCmdLineOpts:1})

Cette commande Mongo Shell passera d'abord à admin base de données puis exécutez le getCmdLineOpts commande. Une alternative est le shell wrapper :

db.serverCmdLineOpts()

Celles-ci renverront les options de ligne de commande analysées, qui doivent contenir à la fois le répertoire de données utilisé et le chemin du journal.

{
        "argv" : [
                "C:\\****\\3.4.10\\bin\\mongod.exe",
                "--dbpath",
                "C:\\****\\data",
                "--port",
                "27017",
                "--logpath",
                "C:\\****\\data\\mongod.log",
                "--bind_ip",
                "0.0.0.0"
        ],
        "parsed" : {
                "net" : {
                        "bindIp" : "0.0.0.0",
                        "port" : 27017
                },
                "storage" : {
                        "dbPath" : "C:\\****\\data"
                },
                "systemLog" : {
                        "destination" : "file",
                        "path" : "C:\\****\\data\\mongod.log"
                }
        },
        "ok" : 1
}

Remarque :J'ai obscurci mes chemins, ils ne contiennent normalement pas **** .

Vous pouvez voir qu'il fournit à la fois les valeurs brutes et les valeurs analysées. Si les options de ligne de commande et les options du fichier de configuration sont spécifiées sur la ligne de commande, cela affichera les valeurs effectives utilisées par le processus. Gardez à l'esprit qu'il existe plusieurs options supplémentaires cela peut affecter l'endroit où les données sont stockées, mais cela devrait vous permettre d'avancer assez rapidement.

Si vous souhaitez connaître ces informations sans utiliser Mongo Shell, vous devrez soit grep le fichier de configuration, soit consulter les options de ligne de commande du processus en cours d'exécution, soit les deux.