定義
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オプションを使用して を起動すると、 に対してretryWritesMongo.startSession()がデフォルトで有効になります。セッションを開始した後は、その
retryWrites設定を変更することはできません。writeConcern
ドキュメント。 書込み保証 ( write concern) を指定します。
セッションを開始した後に設定を変更するには、
Session.getOptions().setWriteConcern()を参照してください。
例
次の例では、Mongo() mongoshのグローバルdb 変数に関連付けられている 接続オブジェクトで因果整合性と再試行可能な書き込みが有効になっているセッションを起動します。
db = db.getMongo().startSession({retryWrites: true, causalConsistency: true}).getDatabase(db.getName());