MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

MongoDBでサーバーをシャットダウンする方法(認証有効時の手順)

MongoDBのサーバーを安全に停止するには、シェルから shutdownServer() メソッドを使用します。特に認証(アクセス制御)が有効になっている環境では、事前に管理者権限を持つユーザーでログインしておく必要があります。

基本的なシャットダウン手順

MongoDBをシャットダウンするには、まず admin データベースに切り替えます。

use admin;

実行すると、次のように表示されます。

> use admin;
switched to db admin

続いて、以下のコマンドを実行してサーバーを停止します。

> db.shutdownServer();

正常に実行されると、次のような出力が返されます。

server should be down...
2020-01-07T22:40:31.295+0530 I NETWORK [js] trying reconnect to 127.0.0.1:27017 failed
2020-01-07T22:40:32.326+0530 I NETWORK [js] reconnect 127.0.0.1:27017 failed failed

認証が有効な場合の注意点

アクセス制御(認証)が有効化されているMongoDBインスタンスでは、db.shutdownServer() を実行するユーザーに対象権限が必要です。具体的には、hostManager ロールや root ロールなど、shutdown 権限を持つロールが付与されたユーザーで認証を行ってください。

認証が必要な場合は、admin データベースに切り替えた後、以下のように認証します。

> use admin;
switched to db admin
> db.auth("adminUser", "password");
1

認証に成功したら、通常どおり db.shutdownServer() を実行すれば、サーバーは安全にシャットダウンされます。権限が不足している場合は「not authorized on admin to execute command」といったエラーが表示されるため、適切なロールを持つユーザーで再接続してください。

  1. MongoDBの$push演算子を使って配列に要素を追加する方法

    MongoDBの$push演算子とはMongoDBの$push演算子は、ドキュメント内の配列フィールドに対して新しい要素を追加するための更新演算子です。既存の配列の末尾に値を追加できるため、リスト形式のデータを扱う際に非常に便利です。この記事では、実際のコード例を通して、$push演算子の基本的な使い方を解説します。1. コレクションとドキュメントを作成するまず、insertOne()メソッドを使用して、コレクションにドキュメントを挿入します。ここでは「Subjects」という配列フィールドを持つ2つのドキュメントを作成します。> db.demo738.insertOne({Subjec

  2. Node.jsからMongoDBに接続する方法!mongodb.connect()の使い方を徹底解説

    Node.jsとMongoDBを接続するには Node.jsアプリケーションからMongoDBサーバーに接続する際は、公式の「mongodb」ドライバ(モジュール)が提供する connect() メソッドを使用します。このメソッドは非同期で動作し、接続の成否はコールバック関数またはPromiseを通じて受け取ることができます。 mongodb.connect() の構文 mongodb.connect(path[, callback]) パラメータ path – 接続先MongoDBサーバーのパスです。ホスト名とポート番号を含むURI形式で指定します。 callback – 接続処理の