このバージョンのドキュメントはアーカイブされており、サポートされなくなりました。5.0 配置をアップグレードするには、 MongoDB 6.0 のアップグレード手順 を参照してください。
定義
rs.remove(hostname)現在のレプリカセットから
hostnameパラメータで記述されたノードを削除します。 この関数は、shell を一時的に切断し、レプリカセットがどのノードをプライマリにするかを再ネゴシエートするときに再接続を強制します。 その結果、このコマンドが成功しても、shell はエラーを表示します。rs.remove()メソッドには次のパラメーターがあります。Parameterタイプ説明hostnamestring
レプリカセット内のシステムのホスト名
注意
rs.remove()操作を実行する前に、削除するレプリカセット メンバーをシャットダウンすることをお勧めします。
互換性
このメソッドは、次の環境でホストされている配置で使用できます。
MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン
MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン
動作
デフォルトでは、レプリカセット ノードは 5 分間待機してから、除外されたノードへの接続を削除します。シャーディングされたレプリカセットでは、ShardingTaskExecutorPoolHostTimeoutMS サーバー パラメーターを使用してこのタイムアウトを変更できます。
レプリカセットから削除されたノードへのすべての送信接続をすぐに削除するには、レプリカセット上の残りの各ノードでdropConnections管理コマンドを実行します。
db.adminCommand( { "dropConnections" : 1, "hostAndPort" : [ "<hostname>:<port>" ] } )
<hostname> を削除されたノードのホスト名に置き換え、 <port> を mongod がリスニングしていたポートに置き換えます。