Mongo.startSession()
定義
Mongo.startSession(<options>)
バージョン 3.6 の新機能。
接続のためにセッションを開始します。
mongosh
は、セッションに関連付けられたコマンドにセッション ID を割り当てます。重要
mongosh メソッド
このページでは、
mongosh
メソッドについて記載しています。ただし、データベースコマンドや Node.js などの言語固有のドライバーのドキュメントには該当しません。データベースコマンドについては、
startSession
コマンドを参照してください。MongoDB API ドライバーについては、各言語の MongoDB ドライバー ドキュメントを参照してください。
セッションは、セッションを作成した
MongoClient
オブジェクトでのみ使用できます。 1 つのセッションを同時に使用することはできません。 1 つのセッションを使用する操作は連続して実行する必要があります。startSession()
メソッドは、セッション オプションを持つドキュメントを取ることができます。 使用可能なオプションは次のとおりです。フィールド説明因果整合性ブール値。 セッションの因果整合性を有効または無効にします。
Mongo.startSession()
はデフォルトでcausalConsistency
を有効にします。セッションを開始した後は、その
causalConsistency
設定を変更することはできません。Mongo()
接続オブジェクトで因果整合性が無効になっている場合でも、セッションでは因果整合性が有効になっている場合や、 接続オブジェクトに因果整合性を設定するには、Mongo.setCausalConsistency()
を参照してください。ReadConcernドキュメント。 読み取り保証 ( read concern) を指定します。
セッションを開始した後に設定を変更するには、
Session.getOptions().setReadConcern()
を参照してください。readPreferenceドキュメント。 読み込み設定 ( read preference) を指定します。
readPreference ドキュメントには、
mode
フィールドと任意のtags
フィールドが含まれています。{ mode: <string>, tags: <array> } セッションを開始した後に設定を変更するには、
Session.getOptions().setReadPreference()
を参照してください。retryWritesブール値。 一時的なネットワークエラーが発生したときに書き込みを再試行する機能を有効または無効にします。
mongosh
--retryWrites
オプションを使用して を起動すると、 に対してretryWrites
Mongo.startSession()
がデフォルトで有効になりますセッションを開始した後は、その
retryWrites
設定を変更することはできません。writeConcernドキュメント。 書込み保証 ( write concern) を指定します。
セッションを開始した後に設定を変更するには、
Session.getOptions().setWriteConcern()
を参照してください。
例
次の例では、Mongo()
mongosh
のグローバルdb
変数に関連付けられている 接続オブジェクトで因果整合性と再試行可能な書き込みが有効になっているセッションを起動します。
db = db.getMongo().startSession({retryWrites: true, causalConsistency: true}).getDatabase(db.getName());