MongoDB EnterpriseおよびMongoDB Communityは、Windows上でWindowsサービスとして実行できます。実行には、netコマンドでマネージドするか、mongod.exeコマンドラインインターフェイス、またはサービスコンソールからの手動操作を使用します。
構文
net <command> MongoDB
Services コンソールで MongoDB サービスを右クリックし、実行する操作を選択します。
"C:\Program Files\MongoDB\Server\9.0\bin\mongod.exe" <opts>
互換性
Windows にインストールされた MongoDB Enterprise および MongoDB Community の自己管理型配置では、mongod プロセスを Windows サービスとして管理できます。
サポートされているプラットフォームの詳細については、以下を参照してください。
動作
ユーザー権限
Windows サービスを管理するほとんどのコマンドには、昇格された権限が必要です。これらのコマンドを実行する前に、AdministratorとしてWindowsコマンドプロンプト(cmd.exe)を開きます。
デフォルトでは、サービスはローカルシステムアカウントのコンテキストで実行されます。サービスを特定のユーザーとして実行するには、--serviceUser および --servicePassword オプションを使用してサービスを登録します。そのユーザーには Log on as a service 権限が必要です。
データディレクトリ
MongoDB プロセスを開始する前に、データディレクトリが存在することを確認してください。デフォルトの\data\dbデータディレクトリを作成するには、Command Interpreterから次のコマンドを実行します。
cd C:\ md "\data\db"
デフォルトのデータディレクトリパスは、MongoDBを起動するドライブ上の絶対パス \data\db です。
構成ファイル
MongoDBプロセスは、コマンドラインオプションまたは構成ファイルを使用して構成できます。MongoDBを長期間実行する場合や、常に特定のオプションで実行する必要がある場合は、構成ファイルを使用してください。
Windows インストーラーを使用して MongoDB をインストールした場合、インストーラーは C:\Program Files\MongoDB\Server\9.0\bin\mongod.cfg に構成ファイルを作成します。
ZIPアーカイブからMongoDBをインストールした場合は、自分でファイルを作成してください。例:
storage: dbPath: C:\data\db systemLog: destination: file path: C:\data\log.txt logAppend: true net: port: 27017 bindIp: 127.0.0.1
サービスを実行するユーザーには、構成ファイルへの読み取りアクセス権と、dbPath ディレクトリおよび path ディレクトリへの読み取りおよび書き込み (write) アクセス権が必要です。
重要
ローカルマシンへの接続を制限するには、bindIpを127.0.0.1に設定します。リモート接続を受け入れるには、bindIpをプライベートまたは内部ネットワークインターフェースに設定します。
パブリックにアクセス可能なアドレスにバインドする前に、配置を保護してください。詳細を学ぶには、「自己管理型配置のセキュリティチェックリスト」を参照してください。
サービスの登録
Windows インストーラーは MongoDB サービスを自動的に登録し、インストールが成功するとサービスが開始されます。このサービスは、システムの起動時にも開始されます。
ZIPアーカイブからMongoDBをインストールした場合は、netコマンドで管理できるように、--installオプションを使用して自分でサービスを登録する必要があります。
例
MongoDB サービスの登録
を Windowsmongod.exemongod.exe --installサービスとして登録するには、 オプションを指定して を実行します。スタートアップ時に読み取る構成ファイルでサービスを登録するには、--config オプションを渡します。
"C:\Program Files\MongoDB\Server\9.0\bin\mongod.exe" --config "C:\Program Files\MongoDB\Server\9.0\bin\mongod.cfg" --install
サービスは、登録時に指定したオプションを保存します。後で net start MongoDB を使用してサービスを開始すると、ここで指定した構成ファイルが読み取られます。
サービスを登録する必要があるのは1回だけです。Windowsインストーラーがこの手順を自動的に実行します。
MongoDB を起動する
MongoDBサービスを開始するには、次のいずれかの方法を使用します。
net start MongoDB
[サービス] コンソールで MongoDB サービスを右クリックし、[Start] をクリックします。
"C:\Program Files\MongoDB\Server\9.0\bin\mongod.exe" --dbpath="C:\data\db"
このコマンドは、mongod.exeをフォアグラウンドで実行します。--fork オプションは Windows ではサポートされていません。
MongoDBが実行中であることを確認する
MongoDBをWindowsサービスとして起動した場合は、コマンドプロンプトからサービスにクエリを実行します。
sc query MongoDB
このコマンドはサービスの詳細を返します。サービスが実行中の場合、STATE フィールドは RUNNING と読み取られ、実行中でない場合は STOPPED と読み取られます。
MongoDB を Windows サービスとして開始した場合は、[サービス] コンソールで MongoDB サービスを探します。Status 列に Running としてサービスが一覧表示されます。
MongoDBをフォアグラウンドで手動で起動した場合、データベースサーバーが正しく実行されていると、Command Interpreterに次の行が表示されます。
[initandlisten] waiting for connections
To show runtime information for the running mongod.exe process, use mongosh to run the serverStatus command:
mongosh --quiet --eval "db.runCommand( { serverStatus: 1, none: 1, mem: 1 } )"
{ host: 'example', version: '9.0.0', process: 'mongod', pid: Long('71115'), uptime: 61, uptimeMillis: Long('61213'), uptimeEstimate: Long('61'), localTime: ISODate('2026-10-02T16:57:13.762Z'), ok: 1, '$clusterTime': { clusterTime: Timestamp({ t: 1790960233, i: 1 }), signature: { hash: Binary.createFromBase64('AAAAAAAAAAAAAAAAAAAAAAAAAAA=', 0), keyId: Long('0') } }, operationTime: Timestamp({ t: 1790960233, i: 1 }) }
ログファイルを表示して、mongod.exe プロセスの現在のステータスを確認することもできます。ログファイルは、--logpath オプションで設定したパスです。
MongoDB を停止します。
MongoDB サービスを停止するには、次のいずれかの方法を使用します。
net stop MongoDB
[サービス] コンソールで MongoDB サービスを右クリックし、[Stop] をクリックします。
Connect to the server with mongosh and run the db.shutdownServer() method on the admin database:
mongosh admin --quiet --eval "db.shutdownServer()"
--shutdown オプションは Linux システムでのみ使用できます。mongod.exe をフォアグラウンドで開始した場合は、Command Interpreter で Ctrl + C を押してプロセスを正常にシャットダウンすることもできます。
MongoDB を再起動する
MongoDBサービスを再起動するには、次のいずれかの方法を使用します。
net stop MongoDB net start MongoDB
[サービス] コンソールで MongoDB サービスを右クリックし、[Restart] をクリックします。
Connect to the server with mongosh and run the db.shutdownServer() method on the admin database. Then, use mongod.exe to start the server again:
mongosh admin --quiet --eval "db.shutdownServer()" "C:\Program Files\MongoDB\Server\9.0\bin\mongod.exe" --dbpath="C:\data\db"
MongoDBサービスを除く
To remove the MongoDB service, first stop the service, then run the following command:
sc delete MongoDB