注意
MongoDB 8.0 で開始され、9.0 で継続されます。LDAP 認証と承認は非推奨です。LDAP は将来のリリースで削除される予定です。
その他の認証方法について学ぶには、「LDAP認証の代替手段」を参照してください。
Synopsis
MongoDB には、以下を使用して設定できる様々な構成オプションが用意されています。
setParameterコマンド:db.adminCommand( { setParameter: 1, <parameter>: <value> } ) setParameter構成設定。setParameter: <parameter1>: <value1> ...
追加の構成オプションについては、自己管理型構成ファイル オプション、 mongod 、およびmongosを参照してください。
パラメーター
認証パラメータ
allowRolesFromX509Certificatesデフォルト: true
クライアント X.509 証明書からの承認ロールの取得を許可または禁止します。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
authenticationMechanismsデフォルト:
MONGODB-X509,SCRAM-SHA-1,SCRAM-SHA-256MongoDB 8.3 以降では、
mongod --tlsFIPSModeまたはmongos --tlsFIPSModeが有効になっている場合、SCRAM-SHA-1は有効なデフォルト設定から除外されます。サーバーが受け入れる認証メカニズムの一覧を指定します。 これを、次の 1 つ以上の値に設定します。 複数の値を指定する場合は、スペースを入れずにコンマ区切りのリストを使用します。 認証メカニズムの説明については、「自己管理型配置での認証 」を参照してください。
値説明RFC5802 標準の Salted Challenge Response Authentication Mechanism。1
RFC7677 標準の Salted Challenge Response Authentication Mechanism。256
MongoDB TLS/SSL 証明書認証。
GSSAPI(Kerberos)
Kerberos を使用する外部認証。このメカニズムは MongoDB Enterprise でのみ使用できます。
PLAIN(LDAP SASL)
LDAP を使用する外部認証。データベース内のユーザー認証には、
PLAINを使用することもできます。PLAINはパスワードをプレーン テキストで送信します。このメカニズムは MongoDB Enterprise でのみ使用できます。OpenID Connect は、OAuth2 上にビルドされた認証レイヤーです。このメカニズムは MongoDB Enterprise でのみ使用できます。
Starting in MongoDB 8.3, you cannot specify
SCRAM-SHA-1forauthenticationMechanismswhile also specifyingmongod --tlsFIPSModeormongos --tlsFIPSMode.--tlsFIPSModeも指定しているときにauthenticationMechanismsにSCRAM-SHA-1を指定しようとすると、サーバーはエラーをスローし、次のようなメッセージをログに記録します。SCRAM-SHA-1 is not allowed in FIPS mode. このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。たとえば、認証メカニズムとして
PLAINとSCRAM-SHA-256の両方を指定するには、次のコマンドを使用します。mongod --setParameter authenticationMechanisms=PLAIN,SCRAM-SHA-256 --auth
authFailedDelayMsデフォルト: 0
注意
エンタープライズ機能
MongoDB Enterprise でのみ使用できます。
認証が失敗したことをクライアントに通知するまでに待機するミリ秒数。このパラメーターの範囲は
0から5000(両端を含む)です。このパラメーターを設定すると、データベースに対するブルートフォースログイン攻撃にかかる時間が長くなります。ただし、MongoDB サーバーからの応答を待っているクライアントは引き続きサーバーのリソースを消費するため、サーバーが同時に他の多くのクライアントへのアクセスを拒否している場合は、正常なログイン試行に悪影響を与える可能性があります。
awsSTSRetryCountバージョン7.0の変更:(6.0.7および5.0.18以降でも開始)
以前のバージョンでは、AWS IAM 認証は、サーバーが HTTP 500 エラーを返した場合にのみ再試行されていました。
タイプ: 整数
デフォルト: 2
Amazon Web Services IAM 認証情報 または Amazon Web Services IAM 環境変数 を使用してMongoDB を配置する場合。
接続失敗後の AWS IAM 認証の最大再試行回数。
The following example sets
awsSTSRetryCountto15retries:mongod --setParameter awsSTSRetryCount=15 Alternatively, the following examples uses the
setParametercommand withinmongosh:db.adminCommand( { setParameter: 1, awsSTSRetryCount: 15 } )
clusterAuthModeclusterAuthModeにsendX509またはx509を設定します。ローリング アップグレード中にメンバーシップ認証に x509 を使用するとダウンタイムを最小限に抑えるために役立ちます。TLS/SSL と MongoDB の詳細については、「TLS/SSL 暗号化用に MongoDB インスタンスを構成する」および「TLS 対応のレプリカセットに接続する」を参照してください。
このパラメーターは実行時にのみ使用できます。 パラメーターを設定するには、
setParameterコマンドを使用します。db.adminCommand( { setParameter: 1, clusterAuthMode: "sendX509" } )
enableLocalhostAuthBypassデフォルト:
trueローカルホスト認証バイパスを無効にするには、
0またはfalseを指定します。デフォルトでは有効になっています。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。詳細については、「自己管理型配置での Localhost 例外」を参照してください。
enforceUserClusterSeparation構成ファイルで
clusterAuthModeがkeyFileである場合にO/OU/DCチェックを無効にするには、falseに設定します。 これにより、メンバー証明書を持つクライアントは、$externalデータベースに保存されているユーザーとして認証できるようになります。 構成ファイルでclusterAuthModeがkeyFileでない場合、サーバーは起動しません。enforceUserClusterSeparationパラメータをfalseに設定するには、起動時に次のコマンドを実行します。mongod --setParameter enforceUserClusterSeparation=false
JWKSMinimumQuiescePeriodSecsデフォルト : 60 秒(1 分)
特定の IdP の
JWKSetURIエンドポイントの後続の取得の間に渡す必要がある最小時間間隔を指定します。RSA公開キーが休止期間内に複数回変更された場合、休止期間を手動で短縮しない限り、そのキーは最大 1 分間、期待どおりに動作しない可能性があります。このパラメーターをゼロに設定すると、休止期間がなく、キーを繰り返し更新できます。このパラメーターは、スタートアップと実行時に両方で使用できます。パラメーターを設定するには、
setParameter設定を使用します。
KeysRotationIntervalSecデフォルト:7776000 秒(90 日)
HMAC 署名鍵 が次の鍵にローテーションするまで有効な秒数を指定します。このパラメータは主に認証テストを容易にすることを目的としています。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
ldapConnectionPoolHostRefreshIntervalMillisデフォルト: 60000
プールされたLDAP接続のヘルスチェック間隔(ミリ秒単位)。
You can only set
ldapConnectionPoolHostRefreshIntervalMillisduring start-up, and cannot change this setting with thesetParameterdatabase command.
ldapConnectionPoolIdleHostTimeoutSecsデフォルト: 300
LDAPサーバーにプールされた接続がクローズされるまでにアイドル状態を維持できる最大時間(秒)。
You can only set
ldapConnectionPoolIdleHostTimeoutSecsduring start-up, and cannot change this setting with thesetParameterdatabase command.
ldapConnectionPoolMaximumConnectionsInProgressPerHostMongoDB バージョン5.0 9および6.0.0以降で変更デフォルト値を
2に変更しました。以前のバージョンのデフォルトは未設定です。デフォルト: 2
各 LDAP サーバーに対して進行中の接続操作の最大数。
You can only set
ldapConnectionPoolMaximumConnectionsInProgressPerHostduring start-up, and cannot change this setting with thesetParameterdatabase command.
ldapConnectionPoolMaximumConnectionsPerHostMongoDB バージョン5.0 9および6.0.0以降で変更デフォルト値を
2147483647に変更しました。以前のバージョンのデフォルトは未設定です。デフォルト: 2147483647
各 LDAP サーバーに対して開始したままにしておく接続の最大数。
You can only set
ldapConnectionPoolMaximumConnectionsPerHostduring start-up, and cannot change this setting during run time with thesetParameterdatabase command.
ldapConnectionPoolMinimumConnectionsPerHostデフォルト: 1
各 LDAP サーバーに対して開始したままにしておく接続の最小数。
You can only set
ldapConnectionPoolMinimumConnectionsPerHostduring start-up, and cannot change this setting during run time with thesetParameterdatabase command.
ldapConnectionPoolUseLatencyForHostPriorityデフォルト: true
A boolean that determines whether the LDAP connection pool (see
ldapUseConnectionPool) should use latency of the LDAP servers to determine the connection order (from lowest latency to highest).You can only set
ldapConnectionPoolUseLatencyForHostPriorityduring start-up, and cannot change this setting during run time with thesetParameterdatabase command.
ldapForceMultiThreadModeデフォルト: false
同時 LDAP 操作のパフォーマンスを有効にします。
注意
libldapのインスタンスがこのモードで安全に使用できることが確実な場合にのみ、このフラグを有効にしてください。使用しているlibldapバージョンがスレッドセーフでない場合、MongoDB プロセスがクラッシュする可能性があります。You must use
ldapForceMultiThreadModeto use LDAP connection pool. To enable LDAP connection pool, setldapForceMultiThreadModeandldapUseConnectionPooltotrue.Tip
MongoDB のバージョン、OS のバージョン、または libldap のバージョンに関して悱虑がある場合は、MongoDB サポートにお問い合わせください。
ldapQueryPassword型: string
The password used to bind to an LDAP server. You must use
ldapQueryUserwith this parameter.設定されていない場合、mongod または mongos は LDAP サーバーにバインドしません。
ldapQueryUser型: string
The user that binds to an LDAP server. You must use
ldapQueryPasswordwith this parameter.設定されていない場合、mongod または mongos は LDAP サーバーにバインドしません。
ldapRetryCountバージョン6.1の新機能。
タイプ: 整数
デフォルト: 0
自己管理型配置で LDAP 認証を使用する MongoDB 配置の場合。
ネットワーク エラーが発生した場合にサーバー LDAP マネージャーによって再試行される操作の回数。
このパラメーターは実行時にのみ使用できます。 パラメーターを設定するには、
setParameterコマンドを使用します。スタートアップ時に再試行回数を設定するには、
security.ldap.retryCount構成ファイル オプションを使用します。For example, the following sets
ldapRetryCountto3:db.adminCommand( { setParameter: 1, ldapRetryCount: 3 } )
ldapShouldRefreshUserCacheEntriesバージョン5.2の新機能。
タイプ: ブール値
デフォルト: true
自己管理型配置で LDAP 認証を使用する MongoDB 配置の場合。
Starting in MongoDB 5.2, the update interval for cached user information retrieved from an LDAP server depends on
ldapShouldRefreshUserCacheEntries:If true, use
ldapUserCacheRefreshInterval.If false, use
ldapUserCacheInvalidationInterval.
You can only set
ldapShouldRefreshUserCacheEntriesduring startup in theconfiguration fileor with the--setParameteroption on the command line. For example, the following disablesldapShouldRefreshUserCacheEntries:mongod --setParameter ldapShouldRefreshUserCacheEntries=false
ldapUseConnectionPoolMongoDB が認証および承認のために LDAP サーバーに接続するときに接続プーリングを使用するかどうかを指定します。
MongoDB では、次のデフォルト値が使用されます。
Windows では true
MongoDB Enterprise バイナリが
libldap_rにリンクされている Linux では true。MongoDB Enterprise バイナリが
libldapにリンクされている Linux では false。
You can only set
ldapUseConnectionPoolduring start-up, and cannot change this setting with thesetParameterdatabase command.
ldapUserCacheInvalidationIntervalバージョン5.2で変更。
デフォルト: 30 秒
注意
Starting in MongoDB 5.2, the update interval for cached user information retrieved from an LDAP server depends on
ldapShouldRefreshUserCacheEntries:If true, use
ldapUserCacheRefreshInterval.If false, use
ldapUserCacheInvalidationInterval.
自己管理型配置で LDAP 認証を使用する MongoDB 配置で使用します。
mongodインスタンスが外部ユーザー キャッシュのフラッシュ間で待機する間隔(秒単位)。MongoDB が外部ユーザー キャッシュをフラッシュした後、次に LDAP で承認されたユーザーが操作を発行するときに、MongoDB は LDAP サーバーから承認データを再取得する必要があります。指定する値を大きくすると、MongoDB と LDAP サーバーが同期するまでの間隔が長くなりますが、LDAP サーバーの負荷は軽減されます。逆に、指定する値を小さくすると、MongoDB と LDAP サーバーが同期するまでの感覚は短くなりますが、LDAP サーバーの負荷は増加します。
ldapUserCacheRefreshIntervalバージョン5.2の新機能。
タイプ: 整数
デフォルト: 30 秒
注意
Starting in MongoDB 5.2, the update interval for cached user information retrieved from an LDAP server depends on
ldapShouldRefreshUserCacheEntries:If true, use
ldapUserCacheRefreshInterval.If false, use
ldapUserCacheInvalidationInterval.
自己管理型配置で LDAP 認証を使用する MongoDB 配置の場合。
mongodが LDAP サーバーからキャッシュしたユーザー情報を更新するまでの間隔(秒単位)。最大間隔は 86,400 秒(24 時間)です。
For example, the following sets
ldapUserCacheRefreshIntervalto4000seconds:mongod --setParameter ldapUserCacheRefreshInterval=4000 Or, if using the
setParametercommand withinmongosh:db.adminCommand( { setParameter: 1, ldapUserCacheRefreshInterval: 4000 } )
ldapUserCacheStalenessIntervalバージョン5.2の新機能。
タイプ: 整数
デフォルト: 90 秒
自己管理型配置で LDAP 認証を使用する MongoDB 配置の場合。
最後にキャッシュを更新したあとに
mongodがキャッシュされた LDAP ユーザー情報を保持する間隔(秒単位)。If more than
ldapUserCacheStalenessIntervalseconds elapse without a successful refresh of the user information from the LDAP server, thenmongod:キャッシュされた LDAP ユーザー情報を無効にします。
mongodが LDAP サーバーに接続して LDAP ユーザーを承認するまで、LDAP ユーザーの新しいセッションを認証できません。
最大間隔は 86,400 秒(24 時間)です。
For example, the following sets
ldapUserCacheStalenessIntervalto4000seconds:mongod --setParameter ldapUserCacheStalenessInterval=4000 Or, if using the
setParametercommand withinmongosh:db.adminCommand( { setParameter: 1, ldapUserCacheStalenessInterval: 4000 } )
maxValidateMemoryUsageMBバージョン 5.0 の新機能。
デフォルト: 200
validateコマンドのメモリ使用上限(メガバイト)。上限を超えた場合、validateは可能な限り多くの結果を返し、制限によりすべての破損が報告されない可能性があることを警告します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
ocspEnabledLinux および macOS で利用できます。
デフォルト: true
OCSP を有効または無効にするフラグです。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。たとえば、次の例では OCSP が無効になります。
mongod --setParameter ocspEnabled=false ... Starting in MongoDB 6.0, if
ocspEnabledis set totrueduring initial sync, all nodes must be able to reach the OCSP responder.If a member fails in the
STARTUP2state, settlsOCSPVerifyTimeoutSecsto a value that is less than5.
ocspStaplingRefreshPeriodSecsLinuxで利用できます。
ステープリングされた OCSP ステータス応答をリフレッシュする前に待機する時間(秒単位)。1 以上の数値を指定します。
You can only set
ocspStaplingRefreshPeriodSecsduring startup in theconfiguration fileor with the--setParameteroption on the command line. For example, the following sets the parameter to 3600 seconds:mongod --setParameter ocspStaplingRefreshPeriodSecs=3600 ... MongoDB 5.0 以降では、
rotateCertificatesコマンドとdb.rotateCertificates()メソッドによって、ステープリングされた OCSP 応答もリフレッシュされます。
oidcIdentityProvidersバージョン 8.0 での変更: (7.3 および 7.0 でも利用可能)
OpenID Connect 認証 を使用する場合、このパラメータを使用して IdP 構成を指定します。
oidcIdentityProvidersは、0 個以上の IdP 構成の配列を受け入れます。空の配列(デフォルトは)は、OpenID Connect サポートが有効になっていないことを示します。複数の IdP が定義されている場合、
oidcIdentityProvidersはmatchPatternフィールドを使用して IdP を選択します。配列の順序が優先順位を決定するので、常に最初のIDPが選択されます。Starting in MongoDB 8.0, when multiple IdPs are defined, the
oidcIdentityProvidersparameter accepts duplicateissuervalues as long as theaudiencevalue is unique for each issuer. This is also available in versions 7.3 and 7.0.oidcIdentityProviders フィールド
フィールド必要性タイプ説明issuer必須
string
サーバーがトークンを受け入れるべき IdP の発行者 URI。これは、認証に使用されるすべての JWT の
issフィールドと一致する必要があります。Starting in MongoDB 8.0, when multiple IdPs are defined, the
oidcIdentityProvidersparameter accepts duplicateissuervalues as long as theaudiencevalue is unique for each issuer. This is also available in versions 7.3 and 7.0.到達不能な発行者 URI を指定すると、MongoDB は次の処理を実行します。
警告をログに記録します。
サーバーの起動を続行します。これにより、発行者 URI を更新できます。
発行者への接続を再試行します。MongoDB が発行者 URI に到達し、アクセス トークンを検証すると、認証は成功します。発行者 URI に到達できない状態の場合、認証は失敗します。
バージョン8.0での変更:
(7.3 と 7.0 でも利用可能)
authNamePrefix必須
string
生成された
UserNameとRoleNameに適用される承認用の一意のプレフィックス。authNamePrefixには、次の文字のみを含めることができます。英数字(
a~zと0~9の組み合わせ)ハイフン(
-)アンダースコア(
_)
matchPattern条件付き
string
どのIdPを使用するかを決定するために使用する正規表現パターン。
matchPatternがユーザー名と一致します。配列の順序が優先順位を決定するので、常に最初のIDPが選択されます。matchPatternが一部の構成では必須となり、ユーザーがsupportsHumanFlowsをどのように設定するかに応じて決まります。1 つの IdP のみで
supportsHumanFlowsがtrue(デフォルト)に設定されている場合、matchPatternsは任意です。複数の IdP で
supportsHumanFlowsがtrue(デフォルト)に設定されている場合、それぞれに対してmatchPatternsが必要です。matchPatternsは、supportsHumanFlowsがfalseに設定されているすべての IdP で任意です。
これはセキュリティの仕組みではありません。
matchPatternは顧客への助言としてのみ機能します。MongoDBは、このパターンに一致しないプリンシパル名の IdP が発行したトークンを受け入れます。clientId条件付き
string
アクセス トークンを受信するクライアントを識別するために IdP によって提供される ID。
supportsHumanFlowsにtrue(デフォルト)が設定されている場合に必須です。audience必須
string
アクセス トークンの対象となるアプリケーションまたはサービスを指定します。
MongoDB 7.0以降、 OIDC アクセス トークンには、
audienceoidcIdentityProviders フィールドのみを指定できます。 空の配列または複数の文字列の配列を持つaudienceフィールドは無効です。複数の IdP が定義されている場合、これは
issuerを共有する構成ごとに一意の値である必要があります。requestScopes任意
array[ string ]
MongoDB が IdP に要求するパーミッションとアクセスレベル。
IMPORTANT: By default, clients such as Compass and
mongoshrequest theoidcandoffline_accessscopes from the IdP. If the IdP supports neitheroidcnoroffline_access, the client doesn't request them. If the IdP supportsoidcbut notoffline_access, you must re-authenticate frequently.principalName任意
string
MongoDB ユーザー識別子を含むアクセス トークンから抽出されるクレーム。
デフォルト値は
sub(subjectを表す)です。useAuthorizationClaim任意
ブール値
authorizationClaimが必要かどうかを判断します。 デフォルト値はtrueです。useAuthorizationClaimフィールドがtrueに設定されている場合、サーバーはIdP の構成にauthorizationClaimが必要です。これはデフォルトの動作です。useAuthorizationClaimフィールドにfalseが設定されている場合、authorizationClaimフィールドは任意(存在した場合は無視)です。代わりに、サーバーは次の処理を行います。principalNameClaimフィールドに名前が一覧化されているクレームをトークンから検索します。通常、これにはsubという名前がついています。たとえば次のとおりです。sub: "spencer.jackson@example.com"authNamePrefix、フォワードスラッシュ(/)、アクセストークン内のprincipalNameClaimで識別されるクレームの内容を連結して、内部ユーザー名を作成します。たとえば、authNamePrefixフィールドの値が「mdbinc」の場合、内部ユーザー名は次のようになります。mdbinc/spencer.jackson@example.comこのユーザー名を持つユーザーを検索し、クライアントにロールを承認します。
{ user: "mdbinc/spencer.jackson@example.com", db: "$external" }
バージョン 7.2 の新機能:
(7.0.5 でも利用可能)
authorizationClaim条件付き
string
useAuthorizationClaimにfalseが設定されていない場合は必須です。MongoDB ロール名を含むアクセス トークンから抽出されたクレーム。
logClaims任意
array[ string ]
認証完了時にログおよび監査メッセージに含めるアクセス トークン クレームのリスト。
JWKSPollSecs任意
integer
更新された JWKS( JSON Web Key Set)をIdP からリクエスト頻度(秒単位)。0 を設定すると、ポーリングは無効になります。
複数の IdP が定義されている場合、これは
issuerを共有する構成ごとに同じ値である必要があります。supportsHumanFlows任意
ブール
OIDC プロバイダーが人間のワークフローまたは機械のワークフローをサポートするか。これは、
clientIdフィールドとmatchPatternフィールドに影響します。マシンワークロードIdP でこのフィールドに
falseを設定して、不要な場合にclientIdを省略できるようにすると便利な場合があります。デフォルト:
true。バージョン7.2の新機能。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
opensslCipherConfigLinux でのみ利用可能です。
With the use of native TLS/SSL libraries, the parameter
opensslCipherConfigis supported for Linux/BSD and no longer supported in Windows and macOS.TLS/SSL暗号化を使用する場合は、OpenSSL の暗号文字列を指定します。 暗号文字列のリストについては、 https://www.openssl.org/docs/man1.1.1 /man1 /ciphers.html を参照してください。複数の暗号文字列をコロン区切りのリストとして提供できます。
注意
This parameter is only for use with TLS 1.2 or earlier. To specify cipher suites for use with TLS 1.3, use the
opensslCipherSuiteConfigparameter.このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。The use of
TLSoptions is preferred overSSLoptions. The TLS options have the same functionality as theSSLoptions. The following example configures amongodwith aopensslCipherConfigcipher string of'HIGH:!EXPORT:!aNULL@STRENGTH':mongod --setParameter opensslCipherConfig='HIGH:!EXPORT:!aNULL@STRENGTH' --tlsMode requireTLS --tlsCertificateKeyFile Certs/server.pem
opensslCipherSuiteConfigバージョン 5.0 の新機能。
Linux でのみ利用可能です。
TLS 1.3 暗号化を使用するときに OpenSSL が許可する、サポート対象の暗号スイートのリストを指定します。
TLS で使用する暗号スイートのリストについては、1.3 https://www.opensl.org/docs/man1.1.1 /man3 /SSL_CTX_set_cipher_list.html を参照してください。複数の暗号スイートは、コロン区切りのリストとして提供できます。
注意
This parameter is only for use with TLS 1.3. To specify cipher strings for use with TLS 1.2 or earlier, use the
opensslCipherConfigparameter.このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。For example, the following configures a
mongodwith aopensslCipherSuiteConfigcipher suite of'TLS_AES_256_GCM_SHA384'for use with TLS 1.3:mongod --setParameter opensslCipherSuiteConfig='TLS_AES_256_GCM_SHA384' --tlsMode requireTLS --tlsCertificateKeyFile Certs/server.pem
opensslDiffieHellmanParametersLinux でのみ利用可能です。
TLS 1.2 以前を使用する場合は、OpenSSL ディフィー ヘルマン パラメータを含む PEM ファイルに対するパスを指定します。OpenSSL ディフィー ヘルマン パラメータを指定すると、TLS/SSL 暗号化中にエフェメラル ディフィー ヘルマン(DHE)暗号スイートのサポートが有効になります。
TLS 1.3 では、このパラメータの使用はサポートされていません。
エフェメラル ディフィー ヘルマン(DHE)暗号スイート(およびエフェメラル楕円曲線ディフィー ヘルマン(ECDHE)暗号スイート)では、フォワード シークレシーが提供されます。フォワード シークレシー暗号スイートは、サーバーの秘密キーで保護されているが送信されない一時的なセッション鍵を作成します。これにより、サーバーの秘密キーが侵害された場合でも、侵害された鍵で過去のセッションを復号化することはできません。
注意
opensslDiffieHellmanParametersが設定されていないが ECDHE が有効になっている場合、 MongoDBffdhe3072はRFC-7919 #appendix-A.2ffdhe3072で定義されているように、 ディフィー ヘルマン パラメータを使用して DHE1024 を有効にします。 は強力なパラメータです(具体的には、サイズが より大きい場合)。6 7Oracleから延長サポートを購入しない限り、 Java および ではサポートされていません。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。If for performance reasons, you need to disable support for DHE cipher suites, use the
opensslCipherConfigparameter:mongod --setParameter opensslCipherConfig='HIGH:!EXPORT:!aNULL:!DHE:!kDHE@STRENGTH' ...
pessimisticConnectivityCheckForAcceptedConnectionsLinux でのみ利用可能です。
タイプ: ブール値
デフォルト: false
trueに設定すると、サーバーは受け入れた接続を処理する前にその接続の有効性を確認し、クライアント側で終了された接続を即座に破棄するよう指示します。このパラメーターを小さいインスタンス タイプで有効にすることを検討してください。新しい接続確立時のレイテンシをわずかに犠牲にしてでも、すでにクライアント側で閉じられた接続の処理にかかるサーバー負荷を軽減したい場合に使用できます。
saslauthdPath注意
MongoDB Enterprise でのみ利用可能です(MongoDB Enterprise for Windows を除く)。
プロキシ認証に使用する
saslauthdインスタンスの Unix ドメイン ソケットへのパスを指定します。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
saslHostNamesaslHostNameは、SASL および Kerberos 認証を構成するために、MongoDB のデフォルトのホスト名検出を上書きします。saslHostNamedoes not affect the hostname of themongodormongosinstance for any purpose beyond the configuration of SASL and Kerberos.このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
saslServiceNameユーザーがインスタンスごとに、Kerberos プリンシパル名のデフォルトの Kerberos サービス名コンポーネントを上書きできるようにします。指定しない場合、デフォルト値は
mongodbです。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。saslServiceNameは MongoDB Enterprise でのみ利用可能です。重要
ドライバーが代替サービス名をサポートしていることを確認します。
scramIterationCountデフォルト:
10000すべての新しい
SCRAM-SHA-1パスワードに使用されるハッシュ反復回数を変更します。反復回数を増やすと、クライアントが MongoDB への認証に必要な時間は長くなりますが、パスワードはブルートフォース攻撃の影響を受けにくくなります。デフォルト値は、最も一般的なユースケースと要件に最適です。If you modify this value, it does not change the iteration count for existing passwords. The
scramIterationCountvalue must be5000or greater.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
For example, the following sets the
scramIterationCountto12000.mongod --setParameter scramIterationCount=12000 Or, if using the
setParametercommand withinmongosh:db.adminCommand( { setParameter: 1, scramIterationCount: 12000 } )
scramSHA256IterationCountデフォルト:
15000すべての新しい
SCRAM-SHA-256パスワードに使用されるハッシュ反復回数を変更します。反復回数を増やすと、クライアントが MongoDB への認証に必要な時間は長くなりますが、パスワードはブルートフォース攻撃の影響を受けにくくなります。デフォルト値は、最も一般的なユースケースと要件に最適です。If you modify this value, it does not change iteration count for existing passwords. The
scramSHA256IterationCountvalue must be5000or greater.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
For example, the following sets the
scramSHA256IterationCountto20000.mongod --setParameter scramSHA256IterationCount=20000 Or, if using the
setParametercommand withinmongosh:db.adminCommand( { setParameter: 1, scramSHA256IterationCount: 20000 } )
sslModenet.ssl.modeにpreferSSLまたはrequireSSLを設定します。TLS/SSL へのローリング アップグレード中に、ダウンタイムを最小限に抑えるために役立ちます。TLS/SSL と MongoDB の詳細については、「TLS/SSL 暗号化用に MongoDB インスタンスを構成する」および「TLS 対応のレプリカセットに接続する」を参照してください。
このパラメーターは実行時にのみ使用できます。 パラメーターを設定するには、
setParameterコマンドを使用します。db.adminCommand( { setParameter: 1, sslMode: "preferSSL" } ) Tip
tlsClusterAuthX509Overrideバージョン7.0の新機能。
clusterAuthX509構成オプションを上書きします。setParameter: tlsClusterAuthX509Override: "{ attributes: 'O=MongoDB, OU=MongoDB Server' }" このパラメーターは
attributesおよびextensionValueの上書きサポートします。When the server authenticates connections from members, it analyzes the X.509 certificate to determine whether it belongs to a cluster member. If the server uses the
attributessetting or theattributesfield on thetlsClusterAuthX509Overrideparameter, it checks the Distinguished Name (DN) values of the certificate. If theextensionValuesetting or theextensionValuefield of thetlsClusterAuthX509Overrideparameter is set, it checks the extension values of the certificate. If it finds a match, it authorizes the connection as a peer.このパラメーターを使用して、新しい証明書の属性または拡張値が異なる場合に証明書をローテーションします。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
tlsMode次のいずれかに設定します。
preferTLSrequireTLS
Use the
tlsModeparameter during rolling upgrade to TLS/SSL to minimize downtime.このパラメーターは実行時にのみ使用できます。 パラメーターを設定するには、
setParameterコマンドを使用します。db.adminCommand( { setParameter: 1, tlsMode: "preferTLS" } ) TLS/SSL と MongoDB の詳細については、「TLS/SSL 暗号化用に MongoDB インスタンスを構成する」および「TLS 対応のレプリカセットに接続する」を参照してください。
Tip
tlsOCSPStaplingTimeoutSecsLinuxで利用できます。
mongodインスタンスまたはmongosインスタンスが証明書の OCSP ステータス応答を受信するまでに待機する最大秒数。Specify an integer greater than or equal to (
>=) 1. If unset,tlsOCSPStaplingTimeoutSecsuses thetlsOCSPVerifyTimeoutSecsvalue.このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。For example, the following sets the
tlsOCSPStaplingTimeoutSecsto 20 seconds:mongod --setParameter tlsOCSPStaplingTimeoutSecs=20 ...
tlsOCSPVerifyTimeoutSecsLinux および Windows で利用できます。
デフォルト: 5
サーバー証明書を検証するときに、
mongodまたはmongosが OCSP 応答を待機する最大秒数。1 以上(
>=)の整数を指定します。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。For example, the following sets the
tlsOCSPVerifyTimeoutSecsto 20 seconds:mongod --setParameter tlsOCSPVerifyTimeoutSecs=20 ...
tlsUseSystemCAタイプ: ブール値
デフォルト: false
MongoDB がオペレーティング システムの証明機関で既に使用可能な TLS 証明書をロードするかどうかを指定します。
重要
When starting a
mongodinstance with TLS/SSL enabled, you must specify a value for the--tlsCAFileflag, thenet.tls.CAFileconfiguration option, or thetlsUseSystemCAparameter.--tlsCAFile、tls.CAFile、tlsUseSystemCAは、すべて相互に排他的です。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。たとえば、
tlsUseSystemCAをtrueに設定するには、次の操作を実行します。mongod --setParameter tlsUseSystemCA=true TLS/SSL と MongoDB の詳細については、「TLS/SSL 暗号化用に MongoDB インスタンスを構成する」および「TLS 対応のレプリカセットに接続する」を参照してください。
tlsWithholdClientCertificateデフォルト: false
TLS 証明書は、
mongodまたはmongosに対して、--tlsClusterFileオプションによって、または--tlsClusterFileが設定されていない場合は--tlsCertificateKeyFileオプションによって設定されます。TLS 証明書が設定されている場合、デフォルトでは、インスタンスは配置内の他のmongodインスタンスまたはmongosインスタンスとのクラスター内通信を開始するときに証明書を送信します。tlsWithholdClientCertificateに1またはtrueを設定すると、これらの通信中に TLS 証明書の送信を保留するようにインスタンスに指示します。このオプションを、(証明書なしでインバウンド接続を許可する場合に)配置のすべてのノードで--tlsAllowConnectionsWithoutCertificatesとともに使用します。tlsWithholdClientCertificateと--clusterAuthMode x509は排他関係にあります。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
tlsX509ClusterAuthDNOverrideインスタンスが配置のノードを識別するためにも使用できるDN(Distinguished Name、代替識別名)。
clusterAuthModeに X.509 証明書を使用するMongoDBデプロイでは、デプロイメント ノードは、クラスター内通信中に X.509 証明書(指定されている場合はnet.tls.clusterFile、およびnet.tls.certificateKeyFile)を使用して相互を識別します。同じ配置のノードの場合、証明書のDNは、組織属性(O)、組織単位属性(OU)、およびドメインコンポーネント(DCの)。If
tlsX509ClusterAuthDNOverrideis set for a member, the member can also use the override value when comparing theDNcomponents (O's,OU's, andDC's) of the presented certificates. That is the member checks the presented certificates against itsnet.tls.clusterFile/net.tls.certificateKeyFile. If the DN does not match, the member checks the presented certificate against thetlsX509ClusterAuthDNOverridevalue.注意
設定されている場合配置のすべてのノードにこのパラメーターを設定する必要があります。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
このパラメータを使用して、新しい
DN値を含む新しい証明書に、証明書のローリング更新を実行できます。クラスターAuthX のないクラスターでの証明書のローテーションについては、「 クラスターAuthX509 のないクラスターでの証明書のローテーション」を参照してください。メンバーシップ証明書要件の詳細については、「メンバー証明書の要件」を参照してください。
tlsX509ExpirationWarningThresholdDaysデフォルト : 30
mongod/mongoslogs a warning on connection if the presented X.509 certificate expires within30days of themongod/mongossystem clock. Use thetlsX509ExpirationWarningThresholdDaysparameter to control the certificate expiration warning threshold:証明書の有効期限よりもかなり前に警告を発報するには、パラメーターの値を大きくします。
証明書の有効期限が近づくと警告を発報するには、パラメーター値を小さくします。
警告を無効にするには、パラメーターに
0を設定します。
このパラメーターの最小値は
0です。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。X.509 証明書の有効性の詳細については、 RFC52804.1.2.5 を参照してください。
useInternalAuthzForX509デフォルト:
falseバージョン9.0の新機能。
trueに設定すると、X.509 証明書を使用して認証するクライアントは、LDAP 認証が構成されている場合でも、常に内部承認を使用します。falseに設定すると、LDAP が有効な場合、MongoDB は X.509 認証ユーザーに対して LDAP 認証を使用します。LDAP が有効になっていない場合、この設定に関係なく内部承認が使用されます。このパラメータは X.509 認証にのみ影響します。他の認証メカニズムに影響はありません。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
userCacheInvalidationIntervalSecsデフォルト: 30
mongosインスタンスでは、mongosインスタンスがユーザー オブジェクトのメモリ内キャッシュに古いデータがあるかどうかを確認し、古いデータがある場合はキャッシュをクリアする間隔(秒単位)を指定します。ユーザー オブジェクトに変更がない場合、mongosはキャッシュをクリアしません。このパラメーターの最小値は
1秒、最大値は86400秒(24 時間)です。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
一般的なパラメータ
allowDiskUseByDefaultデフォルト: True
実行に 100 MB を超えるメモリを必要とするパイプライン ステージは、デフォルトで一時ファイルをディスクに書き込みます。これらの一時ファイルはパイプラインの実行中ずっと残り、インスタンスのストレージ容量に影響を与える可能性があります。
Individual
findandaggregatecommands can override theallowDiskUseByDefaultparameter by either:allowDiskUseByDefaultがfalseに設定されている場合に{ allowDiskUse: true }を使用して一時ファイルをディスクに書き込むことを許可するallowDiskUseByDefaultがtrueに設定されている場合に{ allowDiskUse: false }を使用して一時ファイルがディスクに書き込むことを禁止する
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
mongod --setParameter allowDiskUseByDefault=false allowDiskUseByDefaultonly works onmongodnotmongos.mongosnever writes temporary files to disk. Use thesetParametercommand in amongoshsession that is connected to a runningmongodto change the value of the parameter while the server is running:db.adminCommand( { setParameter: 1, allowDiskUseByDefault: false } )
capMemoryConsumptionForPreAuthBuffersバージョン 8.3 の新機能: (8.2.4 以降でも使用可能)8.0.18、および 7.0.29)
タイプ: Int
デフォルト: 20
接続の事前認証バッファに割り当てる合計メモリの最大パーセンテージを指定します。パラメータを
100に設定すると、この制限が無効になります。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。次の操作では、
capMemoryConsumptionForPreAuthBuffersに30を設定します。mongod --setParameter capMemoryConsumptionForPreAuthBuffers=30
connPoolMaxConnsPerHostデフォルト: 200
Sets the maximum size of the legacy connection pools for outgoing connections to other
mongodinstances in the global connection pool. The size of a pool does not prevent the creation of additional connections, but does prevent a connection pool from retaining connections in excess of the value ofconnPoolMaxConnsPerHost.注意
The parameter is separate from the connections in TaskExecutor pools. See
ShardingTaskExecutorPoolMaxSize.ドライバーが接続をプールせず、シャーディングされたクラスターのコンテキストで認証を使用している場合にのみ、この設定を調整してください。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。mongod --setParameter connPoolMaxConnsPerHost=250
connPoolMaxInUseConnsPerHostレガシー グローバル接続プール内の他の
mongodインスタンスへの送信接続について、常に使用中の接続の最大数を設定します。デフォルトでは、このパラメータは設定されていません。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。mongod --setParameter connPoolMaxInUseConnsPerHost=100
cursorTimeoutMillisデフォルト:600000(10分)
Sets the expiration threshold in milliseconds for idle cursors before MongoDB removes them; specifically, MongoDB removes cursors that have been idle for the specified
cursorTimeoutMillis.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
For example, the following sets the
cursorTimeoutMillisto300000milliseconds (5 minutes).mongod --setParameter cursorTimeoutMillis=300000 Or, if using the
setParametercommand withinmongosh:db.adminCommand( { setParameter: 1, cursorTimeoutMillis: 300000 } ) Setting
cursorTimeoutMillisto less than or equal to0results in all cursors being immediately eligible for timeout. Generally, the timeout value should be greater than the average amount of time for a query to return results. Use tools like thecursor.explain()cursor modifier to analyze the average query time and select an appropriate timeout period.警告
MongoDB は、孤立したカーソルを
cursorTimeoutMillisのしきい値を超えた後にクリーンアップします(ただし、それらがセッションに関連付けられていない場合のみ)。MongoDB cleans up cursors linked to sessions with the
localLogicalSessionTimeoutMinuteslifecycle, regardless of thecursorTimeoutMillisvalue. To handle long idle periods, useMongo.startSession()and refresh the session using therefreshSessionscommand. For details, see Refresh a Cursor withrefreshSessions.
defaultClientBaseBackoffMillisデフォルト: 100
内部サーバー側接続で使用されるデフォルトの再試行戦略の基本遅延(ミリ秒)(
mongosやmongodなど)。サーバーはこの値を、過負荷により失敗した操作の再試行間の指数バックオフの初期遅延として使用します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
バージョン8.3の新機能。
defaultClientMaxBackoffMillisデフォルト: 10、000
内部サーバー側クライアント接続で使用されるデフォルトの再試行戦略の最大遅延(ミリ秒)(
mongosやmongodなど)。サーバーは、過負荷により失敗した操作の再試行間の最大待機時間としてこの値を使用します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
バージョン8.3の新機能。
defaultClientRetryAttemptsデフォルト: 3
サーバーが内部サーバー側クライアント接続の操作を再試行する最大回数(
mongosやmongodなど)。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
バージョン8.3の新機能。
fassertOnLockTimeoutForStepUpDownバージョン5.3の新機能。
デフォルト: 15 秒
昇格または降格のリクエストを受け取ったサーバーが、タイムアウト内に応答できない場合(サーバーのディスク障害などにより)にサーバーを終了できるようにします。これにより、クラスターは新しいプライマリ ノードを正常に選択でき、引き続き利用ができます。
fassertOnLockTimeoutForStepUpDownのデフォルトは 15 秒です。Fassert が発生したノードを無効にするにはfassertOnLockTimeoutForStepUpDown=0を設定します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例えでは、ノードの fassert を無効にします。
mongod --setParameter fassertOnLockTimeoutForStepUpDown=0
globalConnPoolIdleTimeoutMinutesレガシー グローバル接続プール内の接続が閉じられる前にアイドル状態を維持できる時間制限を設定します。
デフォルトでは、このパラメータは設定されていません。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。mongos --setParameter globalConnPoolIdleTimeoutMinutes=10
httpVerboseLoggingLinux および macOS 上の curl に詳細なトレース機能を追加します。Windows への影響はありません。
デフォルトでは、このパラメータは設定されていません。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
mongos --setParameter httpVerboseLogging=true
indexBuildMinAvailableDiskSpaceMBバージョン7.1の新機能。
Default: 500 MB
インデックス ビルドに必要な最小使用ディスク領域をメガバイト単位で設定します。
0MB 以上、8TB 以下である必要があります。 0 の場合、最小ディスク容量が無効になります。
使用可能なディスク容量が
indexBuildMinAvailableDiskSpaceMB未満の場合、新しいインデックスビルドを開始できず、現在のインデックスビルドがキャンセルされます。警告
indexBuildMinAvailableDiskSpaceMBを増やす場合は、サーバーに使用可能なディスク容量が十分にあることを確認してください。 また、indexBuildMinAvailableDiskSpaceMBを高く設定しすぎると、使用可能なディスク容量が十分にある場合にインデックスのビルドが不必要に妨げられ、indexBuildMinAvailableDiskSpaceMBが低く設定される可能性があります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、
indexBuildMinAvailableDiskSpaceMBを650 MB に設定します。db.adminCommand( { setParameter: 1, indexBuildMinAvailableDiskSpaceMB: 650 } ) スタートアップ時に
indexBuildMinAvailableDiskSpaceMBを設定することもできます。 例:mongod --setParameter indexBuildMinAvailableDiskSpaceMB=650
indexMaxNumGeneratedKeysPerDocumentバージョン5.3の新機能。
デフォルト: 100000
Limits the maximum number of keys generated for a document to prevent out of memory errors. It is possible to raise the limit, but if an operation requires more keys than the
indexMaxNumGeneratedKeysPerDocumentparameter specifies, the operation will fail.このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
ingressAdmissionControllerTicketPoolSizeデフォルト:
1000000イングレスキューで同時に許可される操作の最大数を制御します。デフォルト値の
1000000は、無制限の数値同等値を表し、MongoDB が許可するデフォルトの最大接続数まですべての受信操作を許可します。キューで待機している操作がある間にこの値を増やすと、新しいプールサイズが許容する限りの操作がブロック解除されます。この値を減らしても、現在実行中の操作はブロックされませんが、受信される制御可能な操作は、チケットが空くまでブロックされます。
mongod --setParameter ingressAdmissionControllerTicketPoolSize=100000 警告
Avoid modifying
ingressAdmissionControllerTicketPoolSizeunless directed by MongoDB engineers. This setting has major implications across both WiredTiger and MongoDB.
ingressConnectionEstablishmentRateLimiterEnabledバージョン 8.2 の新機能: (8.1.1 および 8.0.12 でも利用可能)
タイプ: ブール値
デフォルト:
false新規接続の確立に対するレート制限が有効かどうかを決定します。有効にすると、MongoDB はレート制限を適用し、1 秒あたりに確立できる新しい接続の数を制御します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
ingressConnectionEstablishmentRatePerSecバージョン 8.2 の新機能: (8.1.1 および 8.0.12 でも利用可能)
タイプ: int32
デフォルト: disabled
最小: 1
レート制限が有効な場合、1 秒あたりに確立できる新規接続の最大数を指定します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
ingressConnectionEstablishmentBurstCapacitySecsバージョン 8.2 の新機能: (8.1.1 および 8.0.12 でも利用可能)
型: double
デフォルト: disabled
最小: 1
Describes how many seconds worth of connection establishments that the server can admit before rate limiting begins. This allows the server to handle temporary bursts of connection requests that exceed the rate limit specified by
ingressConnectionEstablishmentRatePerSec.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
ingressConnectionEstablishmentMaxQueueDepthバージョン 8.2 の新機能: (8.1.1 および 8.0.12 でも利用可能)
タイプ: int32
デフォルト:
0(無効)接続確立キュー内の最大接続試行回数を指定します。キューがこの接続試行数に達すると、サーバーは新しい接続試行を拒否します。
0のデフォルト値は、サーバーが確立のためにキューに入るすべての接続を拒否することを意味します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
ingressConnectionEstablishmentRateLimiterBypassバージョン 8.2 の新機能: (8.1.1 および 8.0.12 でも利用可能)
型: string 配列
デフォルト:
[]サーバーが接続確立レート制限から除外する必要がある IP アドレスと CIDR 範囲のリストを提供します。これにより、特定の信頼できるクライアントがレート制限の制約を回避できるようになります。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
ingressRequestRateLimiterApplicationExemptionsバージョン8.3の新機能。
タイプ: キー
appNamesによって指定された文字列の配列を含むドキュメントデフォルト:
{ appnames: [] }ingressRequestRateLimiterApplicationExemptionsパラメータを使用すると、Ingressリクエストレート制限から除外するアプリケーションを指定できます。ingressRequestRateLimiterApplicationExemptionsは、Ingressリクエストレート制限から除外するアプリケーション名の配列を含むドキュメントを入力として受け入れます。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次のコマンドは、スタートアップ時にアプリケーション名 "MongoDB internal クライアント" の接続を除外します。
db.adminCommand( { setParameter: 1, ingressRequestRateLimiterApplicationExemptions: { appNames: ["MongoDB Internal Client"], } } ) 次のコマンドは、実行時にアプリケーション名「MongoDB internal クライアント」の接続を除外します。
mongod \ --setParameter "ingressRequestRateLimiterApplicationExemptions={\"appNames\":[\"MongoDB Internal Client\"]}"
internalOperationResponseMaxMSバージョン9.0の新機能。
タイプ: 整数
デフォルト: 0
aggregate変更ストリーム または コマンドが oploggetMoreをスキャンし、これまでに蓄積された結果とともに更新された resume token を返す前に要するおよその時間制限(ミリ秒単位)を設定します。デフォルトでは、
internalOperationResponseMaxMSは0です。つまり、変更ストリームのoplogスキャンは時間制限がなく、コマンドがバッチするまで、または変更ストリームがoplogの末尾に到達するまで、更新された再開トークンを返しません。この設定は、9.0より前のMongoDBバージョンの動作を保持します。この機能は厳密にオプトインです。internalOperationResponseMaxMSを0より大きい値に設定すると、変更ストリーム oplog スキャンは、時間制限が超過しているかどうかを定期的にチェックします。制限を超えると、コマンドは、スキャンがoplogの最後に達していない場合や、バッチを填めていない場合でも、更新された再開トークンとともに累積された結果を返します。更新されたリジューム トークンにより、変更ストリームのコンシューマは長時間のスキャン中に進行状況を監視することができます。エラーが発生した場合、コンシューマはスキャンを最初から再開するのではなく、後の点から再開できます。internalOperationResponseMaxMSを設定するには、機能の互換性バージョン (機能の互換性バージョン)9.0以降が必要です。注意
internalOperationResponseMaxMSパラメータの名前は広範な適用可能性を示唆していますが、このパラメータは現在、変更ストリームのクエリにのみ影響します。このパラメータを設定しても、他のクエリタイプには影響しません。このパラメータを設定する際は、次の動作を考慮してください。
制限時間はクエリがyieldしたときにのみチェックされるため、値は概算として扱ってください。変更ストリームがoplogの末尾に到達し、新しい書き込み (write)を待機している間は、制限は適用されません。
値を変更ストリームの
maxTimeMSまたはmaxAwaitTimeMSの値よりも大幅に高く設定しますが、ネットワークタイムアウト値よりは低く設定します。値が低すぎると、oplog スキャンが頻繁に中断され、各コマンドの進行が制限され、変更ストリームが書き込み (write) ワークロードに遅れをとる可能性があります。
個々の変更ストリームのパラメータをオーバーライドするには、変更ストリームの初期
aggregateコマンドでoperationResponseMaxMSクエリノブを渡します。{ querySettings: { queryKnobs: { operationResponseMaxMS: <value> } } } 次のコマンドは、
internalOperationResponseMaxMSを5000ミリ秒に設定します。db.adminCommand( { setParameter: 1, internalOperationResponseMaxMS: 5000 } ) 次のスタートアップコマンドは、
internalOperationResponseMaxMSを5000ミリ秒に設定します。mongod --setParameter internalOperationResponseMaxMS=5000
internalQueryMaxMemoryUsageBytesPerOperationバージョン9.0の新機能。
タイプ: Int
デフォルト: 1 GB またはサーバープロセスが利用可能なメモリの 20% のいずれか大きい方。
単一の操作のすべてのメモリ追跡ステージが集合的に使用できるメモリの最大量を指定します。このパラメータは、操作ごとのメモリ制限を設定します。MongoDBが追跡するステージと式、および操作が制限を超えた場合に何が起こるかについては、操作ごとのメモリ制限を参照してください。
MongoDB 9.0以降では、クエリ設定でこのパラメータを構成することもできます。クエリ設定を設定するには、
setQuerySettingsを使用します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次のコマンドは、実行時に
internalQueryMaxMemoryUsageBytesPerOperationを1073741824(1 ギガバイト) に設定します。db.adminCommand( { setParameter: 1, internalQueryMaxMemoryUsageBytesPerOperation: 1073741824 } ) 次のコマンドは、スタートアップ時に
internalQueryMaxMemoryUsageBytesPerOperationを1073741824(1ギガバイト)に設定します。mongod --setParameter internalQueryMaxMemoryUsageBytesPerOperation=1073741824
internalQueryMaxSingleExpressionMemoryUsageBytesバージョン9.0の新機能。
タイプ: Int
Default: 104857600 (100 megabytes)
式評価中にメモリ集約型の式のサブセットが使用できる最大メモリ量を指定します。操作ごとのメモリ制限が操作に適用されない場合、MongoDBはこの制限を適用します。操作ごとのメモリ制限を学ぶには、操作ごとのメモリ制限を参照してください。
このパラメーターは、クエリ設定では構成できません。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次のコマンドは、実行時に
internalQueryMaxSingleExpressionMemoryUsageBytesを104857600(100メガバイト)に設定します。db.adminCommand( { setParameter: 1, internalQueryMaxSingleExpressionMemoryUsageBytes: 104857600 } ) 次のコマンドは、スタートアップ時に
internalQueryMaxSingleExpressionMemoryUsageBytesを104857600(100メガバイト)に設定します。mongod --setParameter internalQueryMaxSingleExpressionMemoryUsageBytes=104857600
overloadAwareServerSelectionEnabledバージョン8.3の新機能。
タイプ: ブール値
デフォルト:
falseこのパラメータは、クラスター内の他のサーバーに対する過負荷による再試行が、
SystemOverloadedErrorというラベルの付いたエラーを最近返したサーバーを回避するかどうかを制御します。これは、リモート ターゲティングを実行する操作に影響します。例、mongosがシャード ノードに対してリクエストを再試行する場合や、mongodが集計中にリモート読み取りを実行する場合などです。このパラメータを
trueに設定すると、リモート ターゲティングの再試行ロジックは、SystemOverloadedErrorで失敗する操作に対して過負荷になっていないノードを優先します。例、mongosが読み取りを再試行すると、次のようになります。primaryPreferred読み込み設定 (read preference)を使用すると、プライマリが過負荷を示している場合、プライマリにアクセス可能な状態でも、mongosは再試行された読み取りをセカンダリにルーティングできます。secondaryPreferred読み込み設定 (read preference)を使用すると、セカンダリが過負荷を示している場合、mongosは再試行された読み取りをプライマリにルーティングできます。
このパラメータを
falseに設定すると、再試行によって過負荷を示すノードが回避されなくなります。ノードがSystemOverloadedErrorを返し続けた場合、再試行はそのノードをターゲットに引き続き使用する可能性があります。このパラメータは、シャード ノードで Ingressリクエストレート制限やその他の過負荷メカニズムを有効にする場合に発生する可能性のある
SystemOverloadedErrorエラー後に再試行される操作にのみ影響します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
maxEstimatedScanBytesバージョン9.0の新機能。
タイプ: 整数
デフォルト: -1(無効)
コレクションスキャンが読み取る最大データサイズを指定します。プランニング時に、クエリプランが、非圧縮の論理データサイズがこのしきい値を超えるコレクションに対して無制限のコレクションスキャンを必要とする場合、MongoDBはクエリを拒否します。MongoDBは、しきい値を非圧縮の論理バイト単位で測定します。これは、
collStatsコマンドが返すsizeフィールドと同等であり、ディスク上の圧縮サイズではありません。Use
maxEstimatedScanBytesas a more production-suitable alternative tonotablescan. When MongoDB rejects a query, the server returns aNoQueryExecutionPlanserror. To learn more about this error, see Error Codes.MongoDBでは、コレクションがしきい値を超えた場合でも、以下のクエリは拒否されません。
limitオプションを使用するクエリインデックス付きプランを使用するクエリ
system.*コレクションや内部データベースなど、内部名前空間に対するクエリminとmaxのレコード範囲を指定する範囲指定されたクラスター化されたコレクションスキャン
$lookup操作の場合、MongoDB は、外部コレクションがスレッショルを超える場合、インデックス付きネスト化されたループ結合ではないすべての結合戦略を拒否します。特定のクエリに対する拒否を回避するには、クエリに
$naturalヒントを追加します。To log queries that exceed the threshold without rejecting them, see
maxEstimatedScanBytesDryRun.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例は、スタートアップ時に
maxEstimatedScanBytesを設定するための構文を示しています。mongod --setParameter maxEstimatedScanBytes=<int> 実行時にパラメータを設定するには、
setParameterコマンドを使用します。db.adminCommand( { setParameter: 1, maxEstimatedScanBytes: <int> } )
maxEstimatedScanBytesDryRunバージョン9.0の新機能。
タイプ: ブール値
デフォルト: false
Enables dry-run mode for the
maxEstimatedScanBytesparameter. When set totrue, MongoDB runs queries that the server would otherwise reject and instead logs the queries and increments themetrics.query.maxEstimatedScanBytes.dryRunWouldRejectcounter.ドライランモードを使用して、しきい値を強制する前にその影響を評価します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例は、スタートアップ時に
maxEstimatedScanBytesDryRunを設定するための構文を示しています。mongod --setParameter maxEstimatedScanBytesDryRun=true 実行時にパラメータを設定するには、
setParameterコマンドを使用します。db.adminCommand( { setParameter: 1, maxEstimatedScanBytesDryRun: true } )
maxIndexBuildMemoryUsageMegabytesデフォルト (絶対): 200
最小 (絶対): 50
最大 (パーセント): 0.81つのコレクションに対して同時インデックス構築を行う場合、その期間中に消費されるメモリ量を制限します。指定されたメモリ量は、単一の
createIndexesコマンドまたはそのシェルヘルパーdb.collection.createIndexes()を使用して構築されるすべてのインデックス間で共有されます。制限を増やすと、単一のcreateIndexesコマンドで複数のインデックスを同時に構築する場合や、サイズが500GBを超えるインデックスキーデータセットを扱う場合など、一部の状況でパフォーマンスへの悪影響を回避できる場合があります。インデックス構築で消費されるメモリは、WiredTiger キャッシュメモリとは別です(cacheSizeGBを参照)。この値を 0-0.8 に設定すると、ビルドをメモリの割合に制限できます。
この値を 1.0 以上に設定すると、ビルドを絶対数のメガバイトに制限できます。
この設定で割り当てられる値が 50 MB 未満の場合、
mongodは最小値 50 MB を使用します。パーセンテージの設定が 0.8 より大きい場合、mongodは使用可能なメモリの最大 80% を使用します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
Atlasの配置では、次の表に示すように、変更できないクラスター階層のデフォルト値が使用されます。
インスタンス RAM比較可能な階層maxIndexBuildMemoryUsageMegabytes デフォルト256GB以上
M200 以上
2048 MB
128GB - 256GB
M80-M140
1024 MB
32GB - 128GB
M50-M60
512 MB
16 GB
M40
400 MB
8 GB
M30
250 MB
2GB - 4GB
M10-M20
100 MB
maxNumActiveUserIndexBuildsタイプ: 整数
デフォルト: 3
MongoDB が同時に実行できるインデックス構築リクエストの最大数を設定します。
maxNumActiveUserIndexBuildsは、すべてのコレクションに適用されるグローバルな制限です。createIndexesコマンドはインデックスの構築を行います。createIndexesコマンドが一度に複数のインデックスをビルドする場合でも、コマンドの実行によってmaxNumActiveUserIndexBuildsに追加されるのは1のみです。maxNumActiveUserIndexBuildsの値を増やすと、追加の同時インデックス構築が可能になりますが、WiredTiger キャッシュへの負荷が増大します。システム インデックスは
maxNumActiveUserIndexBuildsに制限されませんが、システム インデックスの構築はユーザー インデックス構築の制限に含まれます。サーバーが
maxNumActiveUserIndexBuildsに達すると、同時インデックス構築の数がmaxNumActiveUserIndexBuilds制限を下回るまで、追加のユーザーインデックス構築をブロックします。インデックス構築がブロックされると、サーバーは次のメッセージをログに記録します。Too many index builds running simultaneously, waiting until the number of active index builds is below the threshold. このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次のコマンドにより、4つの同時インデックス構築の制限が設定されます。
db.adminCommand( { setParameter: 1, maxNumActiveUserIndexBuilds: 4 } ) Atlasの配置では、次の表に示すように、変更できないクラスター階層のデフォルト値が使用されます。
Atlas TiersmaxNumActiveUserIndexBuilds のデフォルト小規模 M 階層(
M10、M20、M30、M40)1中 M 階層(
M50、M60)2大規模な M 階層(
M80以上、NMVe バリアントを含む)3注意
これらのデフォルトは、対応する低 CPU
R階層にも適用されます。以下も参照してください。
messageSizeErrorRateSecバージョン 8.3 の新機能: (8.2.4 以降でも使用可能)8.0.18、および 7.0.29)
タイプ: Int
デフォルト: 5
サーバーが情報レベルでメッセージサイズエラーをログする頻度を秒単位で指定します。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。次の操作では、
messageSizeErrorRateSecに6を設定します。mongod --setParameter messageSizeErrorRateSec=6
notablescanインデックスを使用できる場合に、インデックスが存在するかどうかに関係なく、一部のコレクション スキャンの実行を防止します。
trueの場合、MongoDB はコレクションスキャンを必要とするクエリを実行せず、エラーを返します。除外対象には、フィルターのないクエリや、oplog のような上限付きコレクションに対するクエリが含まれます。Consider the following example which sets
notablescantotrueor true:db.adminCommand( { setParameter: 1, notablescan: true } ) Set
notablescantotrueto test application queries and identify queries that scan an entire collection and cannot use an index.To detect unindexed queries without
notablescan, consider reading the Analyze Query Performance section and using thelogLevelparameter,mongostatand profiling.Don't run production
mongodinstances withnotablescanbecause preventing collection scans can potentially affect queries in all databases, including administrative queries.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
注意
notablescanでは、クラスター化インデックスを使用する限界が設定されていないクエリは許可されません。このクエリではコレクションのフル スキャンが必要なためです。詳細については、コレクションスキャンを参照してください。
preAuthMaximumMessageSizeBytesバージョン 8.3 の新機能: (8.2.4 以降でも使用可能)8.0.18、および 7.0.29)
タイプ: Int
Default: 16384 (16 KiB)
セッションが認証する前に送信可能なメッセージの最大サイズ(バイト単位)です。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
たとえば、以下はメッセージの最大サイズを1700バイトに設定します。
mongod --setParameter preAuthMaximumMessageSizeBytes=1700 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, preAuthMaximumMessageSizeBytes: 1700 } )
reportOpWriteConcernCountersInServerStatusデフォルト: false
A boolean flag that determines whether the
db.serverStatus()method andserverStatuscommand returnopWriteConcernCountersinformation. [1]mongod --setParameter reportOpWriteConcernCountersInServerStatus=true [1] Enabling reportOpWriteConcernCountersInServerStatuscan have a negative performance impact; specifically, when running without TLS.
slowConnectionThresholdMillisバージョン6.3の新機能。
デフォルト: 100
低速のサーバー接続の確立をログに記録する際の時間制限をミリ秒単位で設定します。
If a connection takes longer to establish than the
slowConnectionThresholdMillisparameter, an event is added to the log with the messagemsgfield set to"Slow connection establishment".このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
slowConnectionThresholdMillisto250milliseconds.mongod --setParameter slowConnectionThresholdMillis=250 Or, if using the
setParametercommand withinmongosh:db.adminCommand( { setParameter: 1, slowConnectionThresholdMillis: 250 } )
警告
tcmallocAggressiveMemoryDecommit is deprecated in 8.0. MongoDB 8.0 uses an updated version of tcmalloc that improves memory fragmentation and management. See tcmalloc upgrade for more information. To release memory back to the operating system, consider using tcmallocEnableBackgroundThread instead.
tcmallocEnableBackgroundThreadバージョン8.0の新機能。
タイプ: ブール値
デフォルト: true
If set to
true,tcmallocEnableBackgroundThreadcreates a background thread that periodically releases memory back to the operating system. The value oftcmallocReleaseRatedetermines the rate, in bytes per second, at which the background thread releases memory.注意
tcmallocEnableBackgroundThreadがtrueでtcmallocReleaseRateが0の場合でも、MongoDB はメモリを解放します。メモリ使用量を改善するには、デフォルト値の
trueを使用することをお勧めします。パフォーマンスとメモリ管理の改善の詳細については、「アップグレードされた TCMalloc」を参照してください。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。次の操作では、
tcmallocEnableBackgroundThreadにfalseを設定します。mongod --setParameter "tcmallocEnableBackgroundThread=false"
tcmallocReleaseRateバージョン8.0で変更。
デフォルト: 0
TCMalloc の解放率(1 秒あたりのバイト数)を指定します。解放率とは、 MongoDB が未使用のメモリをシステムに解放する速度を指します。
tcmallocReleaseRateが0に設定されている場合、 MongoDB はメモリを解放してシステムに戻すことはありません。この値を増やすと、メモリの戻りが速くなります。メモリの戻りが遅くするには、それを減らします。tcmallocReleaseRateが小さい非ゼロ値である場合、実際のメモリリリースレートが構成値を超える可能性があります。TCMalloc はページスパン単位でメモリをリリースし、ページスパンは複数の TCMalloc ページで構成できます。注意
tcmallocEnableBackgroundThreadがtrueでtcmallocReleaseRateが0の場合でも、MongoDB はメモリを解放します。MongoDB8.0 以降では、メモリ解放よりも
tcmallocReleaseRate0CPU パフォーマンスを優先する tcmalloc のアップグレードが行われているため、 のデフォルト値は に削減されています。重要
Windows 、PPC、s390x などの
tcmalloc-gperfを使用するプラットフォームでMongoDBを実行すると、tcmallocReleaseRateは以前のMongoDBバージョンと同じ動作をします。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
例として、
tcmallocReleaseRateを 2097152 に設定すると、2 MiB/s が指定されます。tcmalloc.tcmalloc.release_rateとtcmalloc.tcmalloc_derived.total_free_bytesをモニターして、適切なレートを決定します。レートを高くすると空きメモリは早く解放されますが、MongoDBが再利用のために保持するメモリが少なくなるため、パフォーマンスに影響する可能性があります。実行時にリリースレートを変更するには、
setParameterコマンドを使用します。(例: )。db.adminCommand( { setParameter: 1, tcmallocReleaseRate: 2097152 } ) You can also set
tcmallocReleaseRateat startup time; for example:mongod --setParameter "tcmallocReleaseRate=2097152"
tcpFastOpenClientデフォルト:
trueLinux オペレーティング システムのみ。
mongod/mongosからクライアントへのアウトバウンド TCP Fast Open(TFO)接続のサポートを有効にします。TFO では、クライアントとmongod/mongosホスト マシンの両方で TFO がサポートされ、有効である必要があります。Linux カーネル 4.11 以降を実行している Linux オペレーティング システムは、アウトバウンド TFO をサポートできます。
アウトバウンド TFO 接続を有効にするには、次のように
/proc/sys/net/ipv4/tcp_fastopenの値を設定します。1に設定すると、アウトバウンド TFO 接続のみを有効にします。3に設定すると、インバウンドおよびアウトバウンドの TFO 接続を有効にします。
このパラメータは、ホスト オペレーティング システムが TFO 接続をサポートしていないか、またはサポートするように構成されていない場合、影響はありません。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。Tip
tcpFastOpenQueueSizeデフォルト:
1024TCP Fast Open(TFO)接続を確立する一環として、クライアントは標準の TCP 3 ウェイ ハンドシェイクが完了する前に、有効な TFO クッキーを
mongod/mongosに送信します。mongod/mongosは、保留中のすべての TFO 接続に対するキューを 1 つ保持します。tcpFastOpenQueueSizeパラメーターには、保留中の TFO 接続のキューのサイズを設定します。 キューがいっぱいになると、mongod/mongosはクライアントからの受信リクエストに対して通常の 3 ウェイ ハンドシェイクに戻り、TFO クッキーの存在を無視します。キューのサイズが制限値を下回ると、mongod/mongosは新しい TFO クッキーの受け入れを開始します。デフォルトのキュー サイズを増やすと、TFO がネットワーク パフォーマンスに与える影響が改善される可能性があります。ただし、キュー サイズが大きいと、過剰な受信 TFO リクエストによってサーバー リソースが枯渇するリスクも高まります。
デフォルトのキューサイズを小さくすると、過剰な受信 TFO リクエストによるリソース サーバーのリソース枯渇のリスクを軽減できます。ただし、キューのサイズが小さいと、ネットワーク パフォーマンスに与える TFO の効果も小さくなる可能性があります。
キューの最小サイズは
0です。0のキューは、TFO を効果的に無効にします。
このパラメータは、TFO 接続をサポートしていない、または TFO 接続用に構成されていないホスト オペレーティング システムには影響しません。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
tcpFastOpenServerデフォルト:
trueクライアントから
mongod/mongosへのインバウンド TCP Fast Open(TFO)接続を受け入れるためのサポートを有効にします。TFO にはクライアントとmongod/mongosホスト マシンの両方で次のように TFO がサポートされ、有効である必要があります。- Windows
次の Windows オペレーティング システムは TFO をサポートしています。
Microsoft Windows Server 2016 以降。
Microsoft Windows 10 Update 1607 以降。
- MacOS
- macOS 10.11(El Capitan)以降は TFO をサポートしています。
- Linux
Linux カーネル 3.7 以降を実行している Linux オペレーティング システムは、インバウンド TFO をサポートできます。
インバウンド TFO 接続を有効にするには、
/proc/sys/net/ipv4/tcp_fastopenの値を設定します。インバウンド TFO 接続のみを有効にするには、
2を設定します。インバウンド TFO 接続およびアウトバウンド TFO 接続を有効にするには、
3を設定します。
このパラメータは、ホスト オペレーティング システムが TFO 接続をサポートしていないか、またはサポートするように構成されていない場合、影響はありません。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。Tip
ttlMonitorEnabledデフォルト:
trueTTL インデックス をサポートするために、
mongodインスタンスには、TTL インデックスを持つコレクションからドキュメントを削除するバックグラウンド スレッドがあります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
To disable this worker thread for a
mongod, setttlMonitorEnabledtofalse, as in the following operations:db.adminCommand( { setParameter: 1, ttlMonitorEnabled: false } ) あるいは、次のオプションを使用して
mongodインスタンスを開始することにより、スタートアップ時にスレッドを無効にすることもできます。mongod --setParameter ttlMonitorEnabled=false 重要
MongoDB サポートからのガイダンスがない限り、
ttlMonitorEnabledを無効にした状態で本番環境のmongodインスタンスを実行しないでください。TTL ドキュメントの削除を行わない場合、TTL インデックスに依存する MongoDB の内部システム操作に悪影響を与える可能性があります。
watchdogPeriodSecondsタイプ: 整数
デフォルト: -1(無効)
ストレージ ノード ウォッチドッグがモニター対象ファイルシステムのステータスをチェックする頻度を決定します。
--dbpathディレクトリ--dbpathディレクトリ内のjournalディレクトリ--logpathファイルのディレクトリ--auditPathファイルのディレクトリ
Valid values for
watchdogPeriodSecondsare:-1(デフォルト)、Storage Node Watchdog を無効化もしくは一時停止します、または60以上の整数。
注意
If a filesystem on a monitored directory becomes unresponsive, it can take a maximum of nearly twice the value of
watchdogPeriodSecondsto terminate themongod.監視対象ディレクトリの中に他のボリュームへのシンボリック リンクである場合、Storage Node Watchdog はシンボリックリンクのターゲットの監視は行いません。たとえば、
mongodがstorage.directoryPerDB: true(または--directoryperdb)を使用してデータベース ディレクトリを別のボリュームにシンボリック リンクする場合、Storage Node Watchdog はシンボリック リンクに従ってターゲットを監視することはありません。
To enable Storage Node Watchdog,
watchdogPeriodSecondsmust be set during startup.mongod --setParameter watchdogPeriodSeconds=60 You can only enable the Storage Node Watchdog at startup. However, once enabled, you can pause the Storage Node Watchdog or change the
watchdogPeriodSecondsduring run time.有効にすると、停止や変更に次の操作が必要です。
To pause the Storage Node Watchdog during run time, set
watchdogPeriodSecondsto -1.db.adminCommand( { setParameter: 1, watchdogPeriodSeconds: -1 } ) To resume or change the period during run time, set
watchdogPeriodSecondsto a number greater than or equal to 60.db.adminCommand( { setParameter: 1, watchdogPeriodSeconds: 120 } )
注意
It is an error to set
watchdogPeriodSecondsat run time if the Storage Node Watchdog was not enabled at startup time.
ログ パラメータ
enableDetailedConnectionHealthMetricLogLinesバージョン7.0の新機能。
タイプ: ブール値
デフォルト: true
Determines whether to enable specific log messages related to cluster connection health metrics. If
enableDetailedConnectionHealthMetricLogLinesis set tofalse, the following log messages are turned off, but MongoDB still collects data on the cluster connection health metrics:ログ メッセージ説明ピアからの TLS 接続を受け入れました
受け付けた Ingress 接続での TLS ハンドシェイク中に、サーバーがピア証明書を正常に解析したことを示します。
Ingress TLS ハンドシェイクが完了しました
Ingress 接続での TLS ハンドシェイクが完了したことを示します。
Hello 処理が完了しました
受信クライアント接続で初期接続ハンドシェイクが完了したことを示します。
MongoDB は最初の
helloコマンドでのみログ メッセージを表示します。認証メトリクス レポート
認証の交信のステップの完了を指定します。
セッションの開始または認証ハンドシェイク以降、Ingress 接続で最初のコマンドを受信しました
ハンドシェイクの一部ではない最初のコマンドを Ingress 接続が受信したことを示します。
ネットワーク応答の送信時間が遅くなっています
Ingress 接続を介してクライアントに応答を返すのにかかる時間(ミリ秒単位)が、
slowMSサーバー パラメーターで定義された時間よりも長くかかることを示します。OCSP リクエストのクライアント側での検証が完了しました
Egress TLS 接続が確立されたときにピアが TLS ハンドシェイクに対して OCSP 応答を含めない場合、サーバーは認証局に OCSP 要求を送信する必要があります。MongoDB は、認証局が OCSP 応答を受信したときにこのログ メッセージを書き込みます。
接続の確立が遅くなっています
Indicates that the time taken to send a response back to the client over an ingress connection takes longer than the threshold specified with the
slowConnectionThresholdMillisparameter. MongoDB also emits this log message when the connection establishment times out.接続の取得待ちの間に操作がタイムアウトしました
Egress 接続の取得待ちの間に操作がタイムアウトしたことを示します。
リモート操作用の接続を取得し、通信での書き込みを完了しました
接続が確立された瞬間から起算して、サーバーが Egress 接続で送信リクエストを書き込むのに 1 ミリ秒以上かかったことを示します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
logComponentVerbosityデフォルト: 0
Sets the verbosity levels of various components for log messages. The verbosity level determines the amount of Informational and Debug messages MongoDB outputs. [2]
冗長レベルは次のように
0から5までの範囲で指定できます。0は MongoDB のデフォルトのログ冗長レベルであり、情報メッセージが含まれます。1冗長レベルを5まで上げることによって、デバッグ メッセージを含めることができます。
コンポーネントの場合、
-1を指定して親の冗長レベルを継承することもできます。冗長レベルを指定するには、次のようなドキュメントを使用します。
{ verbosity: <int>, <component1>: { verbosity: <int> }, <component2>: { verbosity: <int>, <component3>: { verbosity: <int> } }, ... } コンポーネントについては、親コンポーネントと子コンポーネントの両方の冗長レベルの両方を設定する場合を除き、ドキュメント内の
<component>: <int>だけを指定できます。{ verbosity: <int>, <component1>: <int> , <component2>: { verbosity: <int>, <component3>: <int> } ... } 最上位の
verbosityフィールドは、すべてのコンポーネントに対するデフォルト レベルを設定するsystemLog.verbosityに対応します。systemLog.verbosityのデフォルト値は0です。コンポーネントは、次の設定に対応しています。
明示的に設定されない限り、コンポーネントの冗長レベルは親の冗長レベルになります。たとえば、
storageはstorage.journalの親です。つまり、storageの冗長レベルを指定すると、このレベルは次のコンポーネントにも適用されます。storage.journalに対して冗長レベルを指定しない場合の、storage.journal。storage.recoveryに対して冗長レベルを指定しない場合の、storage.recovery。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
たとえば、次の例では、
default verbosity levelを1に、queryを2に、storageを2に、storage.journalを1に設定します。db.adminCommand( { setParameter: 1, logComponentVerbosity: { verbosity: 1, query: { verbosity: 2 }, storage: { verbosity: 2, journal: { verbosity: 1 } } } } ) You can also set parameter
logComponentVerbosityat startup time, passing the verbosity level document as a string.mongod --setParameter "logComponentVerbosity={command: 3}" mongoshalso provides thedb.setLogLevel()to set the log level for a single component. For various ways to set the log verbosity level, see Configure Log Verbosity Levels.[2] MongoDB バージョン 4.2 以降では、ログ メッセージにデバッグの冗長レベル(1 ~ 5)が含まれるようになりました。たとえば、冗長レベルが 2 の場合、MongoDB は
D2をログに出力します。以前のバージョンでは、MongoDB のログ メッセージではデバッグ レベルにDしか指定されていませんでした。
logLevelデフォルト : 0(情報)
Specify an integer between
0and5signifying the verbosity of the logging, where5is the most verbose. [3]このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets the
logLevelto2:db.adminCommand( { setParameter: 1, logLevel: 2 } ) [3] MongoDB バージョン 4.2 以降では、ログ メッセージにデバッグの冗長レベル(1 ~ 5)が含まれるようになりました。たとえば、冗長レベルが 2 の場合、MongoDB は
D2をログに出力します。以前のバージョンでは、MongoDB のログ メッセージではデバッグ レベルにDしか指定されていませんでした。
maxLogSizeKB型: 非負整数
デフォルト: 10
ログ エントリの個々の属性フィールドの最大サイズをキロバイト単位で指定します。この制限を超える属性は切り捨てられます。
Truncated attribute fields print field content up to the
maxLogSizeKBlimit and excise field content past that limit, retaining valid JSON formatting. Log entries that contain truncated attributes append atruncatedobject to the end of the log entry.詳細については、「ログメッセージの切り捨て」を参照してください。
値が
0の場合は、切り捨てを完全に無効にします。このパラメーターでは負の値は無効です。警告
大きな値を使用するか、
0を指定して切り捨てを無効にすると、システムのパフォーマンスが悪くなり、データベース操作に悪影響を及ぼす可能性があります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、最大ログ行サイズを
20キロバイトに設定します。mongod --setParameter maxLogSizeKB=20
quietquiet ロギング モードを設定します。
1の場合、mongodは quiet ロギング モードになり、次のイベントおよびアクティビティはログに記録されません。接続イベント
dropコマンド、dropIndexesコマンド、validateコマンド、およびレプリケーション同期アクティビティ
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
quietパラメーターに1を設定する次の例えを考えてみます。db.adminCommand( { setParameter: 1, quiet: 1 } )
redactClientLogDataタイプ: ブール値
注意
エンタープライズ機能
MongoDB Enterprise でのみ使用できます。
ロギングする前に、特定のログ イベントに付随するメッセージをリダクションするには、
mongodまたはmongosを構成します。これにより、データベースに格納されている機密性が高い可能性のあるデータをプログラムが診断ログに書き込むことを防止します。エラー コードや操作 コード、行番号、ソース ファイル名などのメタデータは、引き続きログに表示されます。Use
redactClientLogDatain conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements.スタートアップ時にログのリダクションを有効にするには、次のいずれかを実行します。
次のように、
--redactClientLogDataオプションでmongodを開始します。mongod --redactClientLogData 構成ファイルで
security.redactClientLogDataオプションを設定します。security: redactClientLogData: true ...
You can't use the
--setParameteroption to setredactClientLogDataat startup.実行中の
mongodまたはmongosでログ リダクションを有効にするには、次のコマンドを使用します。db.adminCommand( { setParameter: 1, redactClientLogData : true } )
redactEncryptedFieldsバージョン6.1.0の新機能。
タイプ: ブール値
デフォルト:
trueすべてのログ メッセージからの暗号化された
Binaryデータのフィールド値を編集するようにmongodとmongosを構成します。If the
redactClientLogDataparameter or thesecurity.redactClientLogDatasetting is set tofalseandredactEncryptedFieldsis set totrue(the default), encrypted fields are redacted from all log messages.If the
redactClientLogDataparameter orsecurity.redactClientLogDatasetting is set totrue, all fields are redacted, regardless of theredactEncryptedFieldssetting.
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
suppressNoTLSPeerCertificateWarningタイプ: ブール値
デフォルト: false
デフォルトでは、
mongodmongosTLS/SSL が有効 になっている または とnet.ssl.allowConnectionsWithoutCertificates:trueにより、クライアントは警告をログに記録しながら検証のための証明書を提供せずに接続できます。これらの警告を抑制するには、suppressNoTLSPeerCertificateWarningを1またはtrueに設定します。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。次の操作では、
suppressNoTLSPeerCertificateWarningにtrueを設定します。db.adminCommand( { setParameter: 1, suppressNoTLSPeerCertificateWarning: true} )
traceExceptionsデバッグで使用するために、すべてのデータベース例外およびソケット C++ 例外の完全なソースコード スタック トレースをログに記録するように
mongodを構成します。trueの場合、mongodは完全なスタック トレースをログに記録します。このパラメーターは実行時にのみ使用できます。 パラメーターを設定するには、
setParameterコマンドを使用します。traceExceptionsにtrueを設定する次の例を考えてみます。db.adminCommand( { setParameter: 1, traceExceptions: true } )
診断パラメータ
MongoDB エンジニアが MongoDB サーバーの動作を簡単に分析できるように、MongoDB は定期的にサーバーの統計情報を診断ファイルに記録します。
mongod の場合、診断データファイルは mongod インスタンスの --dbpath または storage.dbPath 配下のdiagnostic.data ディレクトリに保存されます
mongos の場合、診断データファイルは、デフォルトで、mongosインスタンスの --logpath または systemLog.path ディレクトリ配下ディレクトリに保存されます。診断データディレクトリは、ログ パスのファイル拡張子を切り捨てて、残りの名前に diagnostic.data を連結することによって命名します。
For example, if mongos has --logpath /var/log/mongodb/mongos.log.201708015, then the diagnostic data directory is /var/log/mongodb/mongos.diagnostic.data/ directory. To specify a different diagnostic data directory for mongos, set the diagnosticDataCollectionDirectoryPath parameter.
次のパラメータは診断データ取得(FTDC)をサポートします。
注意
診断データ取得間隔と最大サイズのデフォルト値は、パフォーマンスとストレージ サイズへの影響を最小限に抑えながら、MongoDB エンジニアにデータを提供するように構成されています。通常、これらの値は、特定の診断目的のために MongoDB エンジニアから要求がある場合にのみ変更する必要があります。
diagnosticDataCollectionDirectoryPathタイプ: string
警告
If Full Time Diagnostic Data Capture (FTDC) is disabled with
diagnosticDataCollectionEnabledor ifsystemLog.destinationis set tosyslog, you must restartmongosafter settingdiagnosticDataCollectionDirectoryPath.mongosの診断ディレクトリを指定します。ディレクトリが存在しない場合は、mongosがディレクトリを作成します。指定されていない場合、診断データディレクトリは、
mongosインスタンスの--logpathファイル拡張子またはsystemLog.pathファイル拡張子を切り捨て、diagnostic.dataを連結することによって命名されます。たとえば、
mongosが--logpath /var/log/mongodb/mongos.log.201708015を保有している場合、診断データディレクトリは/var/log/mongodb/mongos.diagnostic.data/になります。mongosが指定されたディレクトリを作成できない場合、そのインスタンスの診断データ取得は無効になります。パス上に同じ名前のファイルが既に存在する場合、またはプロセスにディレクトリを作成する権限がない場合、mongosは指定されたディレクトリを作成できない可能性があります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
diagnosticDataCollectionDirectorySizeMBタイプ: 整数
デフォルト:
500diagnostic.dataディレクトリの最大サイズをメガバイト単位で指定します。 ディレクトリのサイズがこの数を超えると、ファイル名のタイムスタンプに基づいて、ディレクトリ内の最も古い診断ファイルが自動的に削除されます。The minimum value for
diagnosticDataCollectionDirectorySizeMBis10megabytes.diagnosticDataCollectionDirectorySizeMBmust be greater than maximum diagnostic file sizediagnosticDataCollectionFileSizeMB.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
たとえば、次の例では、ディレクトリの最大サイズを
650メガバイトに設定します。mongod --setParameter diagnosticDataCollectionDirectorySizeMB=650 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, diagnosticDataCollectionDirectorySizeMB: 650 } )
diagnosticDataCollectionEnabledタイプ: ブール値
デフォルト: true
診断目的でデータの収集とログの記録を有効にするかどうかを決定します。診断用ログの記録はデフォルトで有効になっています。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
たとえば、次のようにすると、診断コレクションが無効になります。
mongod --setParameter diagnosticDataCollectionEnabled=false
diagnosticDataCollectionFileSizeMBタイプ: 整数
デフォルト: 10
各診断ファイルの最大サイズをメガバイト単位で指定します。 ファイルの最大ファイル サイズを超える場合、MongoDB は新しいファイルを作成します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
たとえば、次の例では、各診断ファイルの最大サイズを
20メガバイトに設定します。mongod --setParameter diagnosticDataCollectionFileSizeMB=20 The minimum value for
diagnosticDataCollectionFileSizeMBis1megabyte.
diagnosticDataCollectionPeriodMillisタイプ: 整数
デフォルト: 1000
診断データを収集する間隔をミリ秒単位で指定します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
たとえば、次の例では間隔を
5000ミリ秒(5 秒)に設定します。mongod --setParameter diagnosticDataCollectionPeriodMillis=5000 The minimum value for
diagnosticDataCollectionPeriodMillisis100milliseconds.
procFileSizeLimitバージョン8.0.21の新機能。
タイプ: 整数
デフォルト: 1048576
procfsファイル (/proc配下の表形式テキストファイル) のサイズがこの制限を超えた場合、フルタイム診断データキャプチャはファイルの読み取りをスキップします。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。次の例では、スタートアップ時に
procFileSizeLimitを1000000に設定します。mongod --setParameter procFileSizeLimit=1000000
レプリケーションと整合性
abortStreamingHelloWithSmallTimeoutタイプ: ブール値
デフォルト: false
Controls how the server responds when an unauthenticated client sends a streaming
hellocommand with amaxAwaitTimeMSvalue below theminWaitForStreamingHelloMillisfloor:falseの場合、サーバーは有効なタイムアウトをminWaitForStreamingHelloMillisまでクランプします。trueの場合、サーバーはコマンドを拒否し、InvalidOptionsエラーを返します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、スタートアップ時に
abortStreamingHelloWithSmallTimeoutをtrueに設定します。mongod --setParameter abortStreamingHelloWithSmallTimeout=true mongos --setParameter abortStreamingHelloWithSmallTimeout=true 次の例では、
setParameterコマンドを使用してabortStreamingHelloWithSmallTimeoutをtrueに設定します。db.adminCommand( { setParameter: 1, abortStreamingHelloWithSmallTimeout: true } )
allowMultipleArbitersバージョン5.3の新機能。
タイプ: ブール値
デフォルト: false
レプリカセットで複数のアービタの使用を許可するかどうかを指定します。
複数のアービタの使用は推奨されません。
アービタが複数あると、過半数の書込み保証(write concern)を信頼して使用することができません。MongoDB は、メンバーシップの過半数を計算する際にアービタをカウントしますが、アービタはデータを保存しません。複数のアービタを含めると、データを含む大多数のノードに書き込みが複製される前に、過半数の書込み保証(write concern)操作が成功を返すことが可能です。
複数のアービタにより、レプリカセットにデータ レプリケーション用の十分なセカンダリがない場合でも、レプリカセットは書き込みを受け入れることができます。
詳細については、「複数のアービタに関する懸念」を参照してください。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。mongod --setParameter allowMultipleArbiters=true
changeSyncSourceThresholdMillisタイプ: 整数
デフォルト: 5
セカンダリが候補同期ソースへの切り替えを検討する前に、候補同期ソースが現在の同期ソースよりも優れている必要がある最小レイテンシ改善値(ミリ秒単位)。値が小さいほど、セカンダリは小さなレイテンシの違いに対してより敏感になり、同期ソースの変更数が増加します。高い値にすると、同じようなレイテンシを持つ候補間での切り替えが減ります。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
For example, to set
changeSyncSourceThresholdMillisfor amongodinstance to200using thesetParametercommand withinmongosh:db.adminCommand( { setParameter: 1, changeSyncSourceThresholdMillis: 200 } )
connectTimeoutMsタイプ: 整数
デフォルト: 10000
レプリカセットモニターの接続タイムアウトをミリ秒単位で設定します。
このパラメーターは、スタートアップ時にのみ使用できます。このパラメータを設定する場合は、500 以上である必要があります。
次の例では、
mongodインスタンスのconnectTimeoutMsを 700 ミリ秒に設定します。mongod --setParameter connectTimeoutMs=700
createRollbackDataFilesタイプ: ブール値
デフォルト: true
MongoDB がロールバック中に影響を受けたドキュメントを含むロールバック ファイルを作成するかどうかを決定するフラグです。
By default,
createRollbackDataFilesistrueand MongoDB creates the rollback files.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
createRollbackDataFilesto false so that the rollback files are not created:mongod --setParameter createRollbackDataFiles=false 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, createRollbackDataFiles: false } ) 詳細については、「ロールバック データの収集」を参照してください。
disableSplitHorizonIPCheckバージョン5.0.0の新機能。
タイプ: ブール値
デフォルト: false
スプリットホライズンDNS のクラスター ノードを構成するには IP アドレスの代わりにホスト名を使用します。
MongoDB v5.0 以降の
replSetInitiateとreplSetReconfigでは、ホスト名の代わりに IP アドレスを使用する設定は拒否します。Use
disableSplitHorizonIPCheckto modify nodes that cannot be updated to use host names. The parameter only applies to the configuration commands.mongodおよびmongosは、スタートアップ時の検証にdisableSplitHorizonIPCheckに依存しません。ホスト名の代わりに IP アドレスを使用するレガシーmongodおよびmongosインスタンスは、アップグレード後に起動できます。IP アドレスで設定されたインスタンスでは、IP アドレスの代わりにホスト名を使用するように警告がログに記録されます。
IP アドレスを使用した構成の変更を行うには、次のコマンドラインを使用して
disableSplitHorizonIPCheck=trueを設定します。/usr/local/bin/mongod --setParameter disableSplitHorizonIPCheck=true -f /etc/mongod.conf このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。setParameter: disableSplitHorizonIPCheck: true
enableFlowControlタイプ: ブール値
デフォルト: true
セカンダリ ノードの
majority committedラグを構成可能上限以下に保つことを目的として、プライマリが書き込みを行うレートを制御するメカニズムを有効または無効にします。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
enableOverrideClusterChainingSettingバージョン5.0.2の新機能。
タイプ: ブール値
デフォルト: false
If
enableOverrideClusterChainingSettingistrue, replica set secondary members can replicate data from other secondary members even ifsettings.chainingAllowedisfalse.このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。For example, to set the
enableOverrideClusterChainingSettingfor amongodinstance totrue:mongod --setParameter enableOverrideClusterChainingSetting=true
flowControlTargetLagSecondsタイプ: 整数
デフォルト: 10
フロー制御で実行する場合に指標となる最大
majority committedラグです。フロー制御が有効になっている場合、このメカニズムではmajority committedラグを指定された秒数未満に維持しようとします。フロー制御が無効になっている場合、このパラメーターによる影響はありません。0 より大きい値を指定しなければなりません。
一般的には、デフォルト設定のままで十分ですが、デフォルト値を変更する場合、値を増やすのではなく減らした方がより有用な場合があります。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
flowControlWarnThresholdSecondsタイプ: 整数
デフォルト: 10
フロー制御メカニズムが過半数のコミット ポイントが移動していないことを検出してからログに警告を記録するまでの待ち時間。
指定する値は 0 以上である必要があり、0 の場合は警告が無効になります。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
heartBeatFrequencyMsタイプ: 整数
デフォルト: 10000
When
replicaSetMonitorProtocolis set to'sdam',heartBeatFrequencyMsdetermines how long, in milliseconds, to wait betweenhellorequests.When
replicaSetMonitorProtocolis set to'streamable',heartBeatFrequencyMsdetermines how long, in milliseconds, to wait betweenhelloround trip time (RTT) measurements. RTT measurements are used in server selection.このパラメーターは、スタートアップ時にのみ使用できます。このパラメータを設定する場合は、500 以上である必要があります。
次の例では、
mongodインスタンスのheartBeatFrequencyMsを 700 ミリ秒に設定します。mongod --setParameter heartBeatFrequencyMs=700
initialSyncIndexBuildMemoryPercentageバージョン 8.2 の新機能:(および 8.0.13、7.0.26)
型: double
デフォルト: 10.0
The percentage of system memory that MongoDB allocates for index builds during initial sync. The amount of system memory used is bound by the values of
initialSyncIndexBuildMemoryMinMBandinitialSyncIndexBuildMemoryMaxMB.0.0から80.0までの値を指定できます。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
例、
mongodインスタンスのinitialSyncIndexBuildMemoryPercentageを 40% に設定するには、次のようにします。mongod --setParameter initialSyncIndexBuildMemoryPercentage=40
initialSyncIndexBuildMemoryMaxMBバージョン 8.2 の新機能:(および 8.0.13、7.0.26)
タイプ: 整数
デフォルト: 16384
MongoDB が最初の同期中にインデックス構築に使用できるシステムメモリの最大量(メガバイト単位)。
50から10000000までの値を指定できます。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
例、
mongodインスタンスのinitialSyncIndexBuildMemoryMaxMBを 20000 MB に設定するには、次の操作を実行します。mongod --setParameter initialSyncIndexBuildMemoryMaxMB=20000
initialSyncIndexBuildMemoryMinMBバージョン 8.2 の新機能:(および 8.0.13、7.0.26)
タイプ : 整数
デフォルト: 200
MongoDB が最初の同期中にインデックス構築に使用できるシステムメモリの最小量(メガバイト単位)。
50から10000000までの値を指定できます。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
例、
mongodインスタンスのinitialSyncIndexBuildMemoryMinMBを 60 MB に設定するには、次の操作を実行します。mongod --setParameter initialSyncIndexBuildMemoryMinMB=60
initialSyncMethodバージョン5.2の新機能。
タイプ: string
デフォルト:
logicalMongoDB Enterprise でのみ利用可能です。
最初の同期に使用される方法です。
論理的な最初の同期を使用するには、
logicalに設定します。ファイル コピー ベースの最初の同期を使用するには、fileCopyBasedに設定します。このパラメーターは、指定されたノードの同期方法にのみ影響します。このパラメーターを 1 つのレプリカセット ノードに設定しても、他のレプリカセット ノードの同期方法には影響しません。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。If the
initialSyncMethodparameter for the cluster isfileCopyBased, then there is no impact on change stream listeners.initialSyncMethodがlogicalで、新しく同期されたノードで変更ストリームが開かれ、 論理的な最初の同期の完了より前の点でのイベントが読み取られる場合、変更前と変更後のイメージが欠落している可能性があります。
initialSyncSourceReadPreferenceタイプ: string
最初の同期を実行するための推奨ソースです。次のいずれかの読み込み設定 (read preference) モードを指定します。
primaryPreferred(レプリカセットのノードに投票するためのデフォルト値)nearest(新しく追加されたレプリカセット ノードまたは投票権のないレプリカセット ノードのデフォルト)
If the replica set has disabled
chaining, the defaultinitialSyncSourceReadPreferenceread preference mode isprimary.You cannot specify a tag set or
maxStalenessSecondstoinitialSyncSourceReadPreference.mongodが指定された読み込み設定 (read preference) に基づいて同期ソースを見つけられない場合は、エラーをログに記録し、最初の同期プロセスを再開します。10回試行した後に最初の同期プロセスを完了できない場合、mongodはエラーで終了します。同期ソースの選択の詳細については、「最初の同期ソースの選択」を参照してください。initialSyncSourceReadPreferencetakes precedence over the replica set'ssettings.chainingAllowedsetting when selecting an initial sync source. After a replica set member successfully completes initial sync, it defers to the value ofchainingAllowedwhen selecting a replication sync source.このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
initialSyncTransientErrorRetryPeriodSecondsタイプ: 整数
デフォルト: 86400
一時的なネットワークエラーによって中断された場合に、最初の同期を実行するセカンダリがプロセスの再開を試みる時間(秒単位)。デフォルト値は 24 時間に相当します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
localLogicalSessionTimeoutMinutesタイプ: 整数
デフォルト: 30
警告
テスト目的のみ
このパラメーターはテスト目的のみで使用するものであり、本番環境での使用を目的としたものではありません。
セッションが最後に使用されてからアクティブな状態である時間(分単位)。クライアントから新しい読み取りもしくは書き込み操作を受信していないセッション、またはこのしきい値内に
refreshSessionsで更新されていないセッションは、キャッシュからクリアされます。 期限切れのセッションに関連付けられた状態は、サーバーによっていつでもクリーンアップされる可能性があります。このパラメーターは、それが設定されているインスタンスにのみ適用されます。レプリカセットとシャーディングされたクラスターにこのパラメーターを設定するには、すべてのノードに同じ値を指定する必要があります。そうでない場合は、セッションが正しく機能しません。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。For example, to set the
localLogicalSessionTimeoutMinutesfor a testmongodinstance to 20 minutes:mongod --setParameter localLogicalSessionTimeoutMinutes=20
localThresholdMsタイプ: 整数
デフォルト: 15
サーバー選択に使用されるレイテンシ ウィンドウの長さをミリ秒単位で定義します。
このパラメーターは、スタートアップ時にのみ使用できます。このパラメータを設定する場合は、0 以上である必要があります。
次の例では、
mongodインスタンスのlocalThresholdMsを 20 ミリ秒に設定します。mongod --setParameter localThresholdMs=20
logicalSessionRefreshMillisタイプ: 整数
デフォルト: 300000(5 分)
キャッシュがメイン セッション ストアに対して論理セッション レコードをリフレッシュする間隔(ミリ秒単位)。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。For example, to set the
logicalSessionRefreshMillisfor amongodinstance to 10 minutes:mongod --setParameter logicalSessionRefreshMillis=600000
maxAcceptableLogicalClockDriftSecsタイプ: 整数
デフォルト:31536000(1年)
The maximum amount by which the current cluster time can be advanced; specifically,
maxAcceptableLogicalClockDriftSecsis the maximum difference between the new value of the cluster time and the current cluster time. Cluster time is a logical time used for ordering of operations.You cannot advance the cluster time to a new value if the new cluster time differs from the current cluster time by more than
maxAcceptableLogicalClockDriftSecs.このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。For example, to set the
maxAcceptableLogicalClockDriftSecsfor amongodinstance to 15 minutes:mongod --setParameter maxAcceptableLogicalClockDriftSecs=900
maxNumSyncSourceChangesPerHourバージョン 5.0 の新機能。
タイプ: 整数
デフォルト: 3
同期ソースは、同期ソースが更新されるたび、およびノードが oplog エントリのバッチを取得するたびに評価されます。1 時間に
maxNumSyncSourceChangesPerHourを超えるソース変更があった場合、ノードはその同期ソースの再評価を一時的に停止します。このパラメーターに大きい値を設定すると、ノードが不要なソース変更を行う可能性があります。このパラメーターは、ノードが同期ソースを持っていない場合、ノードが別のノードから同期を開始するのを防ぐものではありません。同期ソースが無効になると、ノードは再評価を行います。同様に、プライマリが変更されてチェーニングが無効になっている場合、ノードは新しいプライマリと同期するように更新されます。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
maxSessionsタイプ: 整数
デフォルト: 1000000
キャッシュできるセッションの最大数です。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。For example, to set the
maxSessionsfor amongodinstance to 1000:mongod --setParameter maxSessions=1000
maxSyncSourceLagSecsタイプ: 整数
デフォルト: 30
The maximum lag, in seconds, that a candidate sync source can have relative to the newest oplog entry on the primary and still qualify as an eligible sync source. If a candidate's most recent oplog entry is more than
maxSyncSourceLagSecsseconds behind the primary, MongoDB rejects it as a sync source.このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。For example, to set
maxSyncSourceLagSecsfor amongodinstance to20:mongod --setParameter maxSyncSourceLagSecs=20
minWaitForStreamingHelloMillisタイプ: 整数
デフォルト: 500
Specifies the minimum effective timeout, in milliseconds, that the server enforces for streaming
hellocommands sent by unauthenticated clients. If an unauthenticated client supplies amaxAwaitTimeMSvalue below this floor, the server either clamps the timeout up to this value or rejects the command, depending onabortStreamingHelloWithSmallTimeout.このパラメーターは、非常に小さな
maxAwaitTimeMS値でストリーミングhelloコマンドを送信する認証されていないクライアントによる過度な CPU 使用を軽減します。値は
0以上である必要があります。0の値は適用を無効にします。認証されたクライアントは影響を受けません。また、このパラメータに関係なく、トポロジーの変更によって待機中のクライアントはすぐにウェイクアップされます。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、スタートアップ時に
minWaitForStreamingHelloMillisを1000ミリ秒に設定しています。mongod --setParameter minWaitForStreamingHelloMillis=1000 mongos --setParameter minWaitForStreamingHelloMillis=1000 次の例では、
setParameterコマンドを使用してminWaitForStreamingHelloMillisを1000ミリ秒に設定します。db.adminCommand( { setParameter: 1, minWaitForStreamingHelloMillis: 1000 } )
mirrorReads型: ドキュメント
デフォルト:
{ samplingRate: 0.01, maxTimeMS: 1000 }mongodインスタンスのミラーリングされた読み取り の設定を指定します。設定が有効になるのは、そのノードがプライマリである場合のみです。The parameter
mirrorReadstakes a JSON document with the following fields:フィールド説明samplingRateミラーリングをサポートする操作のサブセットを、選択可能なセカンダリ(具体的には
priority greater than 0)のサブセットへミラーリングするために使用するサンプリング レート。つまり、プライマリは、指定されたサンプリング レートで選択可能な各セカンダリに読み取りをミラーリングします。有効な値は次のとおりです。
0.0- ミラーリングをオフにします。
1.0- プライマリは、ミラーリングをサポートするすべての操作を、選択可能な各セカンダリにミラーリングします。
0.0から1.0までの数字(両端を含まない)- プライマリは、選択可能な各セカンダリを指定されたレートでランダムにサンプリングし、ミラーリングされた読み取りを送信します。
たとえば、プライマリと 2 つの選択可能なセカンダリがあり、サンプリングレートが
0.10のレプリカセットでは、プライマリは選択可能な各セカンダリに対して 10% のサンプリングレートで読み取りをミラーリングします。これにより、ある読み取りは一方のセカンダリにミラーリングされ、もう一方のセカンダリにはミラーリングされない、または両方にミラーリングされる、もしくはどちらにもミラーされない場合があります。つまり、プライマリがミラーリング可能な100の操作を受け取った場合、サンプリングレートが0.10では、一方のセカンダリには8個の読み取りが、もう一方のセカンダリには13個の読み取りがミラーリングされたり、それぞれに10個の読み取りがミラーリングされたりという結果になります。デフォルト値は
0.01です。maxTimeMSミラーリングされた読み取りの最大時間(ミリ秒単位)。デフォルト値は
1000です。ミラーリングされた読み取りの
maxTimeMSは、ミラーリングされる元の読み取りのmaxTimeMSとは異なります。targetedMirroringキャッシュウォーミングの対象となるノードを設定するフィールドが含まれています。ターゲット ミラーリングの詳細については、ターゲットを絞ったミラーリングされた読み取り を参照してください。
次のフィールドが含まれます:
tagデフォルトは空の
BSONObjです。ミラーリングの対象となるノードをターゲットにするために使用できるレプリカセットタグ 。次の構文を使用して、ターゲット ミラーリング用にノードを構成できます。tag: { "<tag1>": "<string1>" } 入力できるタグは 1 つだけです。これらのタグを持つ同じレプリカセット内のすべてのノードが対象となります。
samplingRate型: float
範囲:
0.0から1.0(この値を含む)対象を絞った読み取りが 1 つまたは複数のホストにミラーリングされるレート。レートが
0.0の場合は読み取りはミラーリングされないことを意味し、レートが1.0の場合はすべての読み取りがミラーリングされます。samplingRateのデフォルトは0.01ですが、tagフィールドのデフォルトは空であるため、targetedMirroring機能はデフォルトでオフになっています。maxTimeMSタイプ: int
ミラーリングされた読み取りがタイムアウトするまでの最大時間(ミリ秒単位)。
maxTimeMSの最小値は0です。デフォルトは1000です。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
構成ファイルから、またはコマンドラインで を指定する場合は、
mirrorReadsドキュメントを引用符で囲みます。たとえば、次の例では、コマンドラインからミラーリング読み取りのサンプリングレートを
0.10に設定します。mongod --setParameter mirrorReads='{ samplingRate: 0.10 }' または、構成ファイルに次のように指定します。
setParameter: mirrorReads: '{samplingRate: 0.10}' Or if using the
setParametercommand in amongoshsession that is connected to a runningmongod, do not enclose the document in quotes:db.adminCommand( { setParameter: 1, mirrorReads: { samplingRate: 0.10 } } )
mirrorReadsMaxConnPoolSizeバージョン8.2の新機能。
タイプ: int
デフォルト: 4
ミラーリング プール内の最大接続数を制御します。このパラメータは、一般的な読み取りと対象を絞ったミラーリングされた読み取りの両方に影響します。
mirrorReadsMaxConnPoolSizeの最小値は 1 です。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
oplogBatchDelayMillisバージョン6.0の新機能。
タイプ: 整数
デフォルト: 0
セカンダリ ノードで oplog 操作のバッチの適用を遅延させる時間(ミリ秒数)。デフォルトでは、
oplogBatchDelayMillisは0であり、oplog バッチが遅延なく適用されることを意味します。遅延がない場合、MongoDB は頻繁に小さな oplog バッチをセカンダリに適用することがあります。oplogBatchDelayMillisを増やすと、MongoDB はセカンダリに oplog バッチを適用する頻度が低くなり、各バッチに含まれるデータの量が増えます。これにより、セカンダリの IOPS は削減されますが、書込み保証 (write concern)"majority". による書き込み (write)のレイテンシが増加します。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。たとえば、
mongodインスタンスのoplogBatchDelayMillisを 20 ミリ秒に設定するには、次のコマンドを実行します。mongod --setParameter oplogBatchDelayMillis=20
oplogFetcherUsesExhaustタイプ: ブール値
デフォルト: true
ストリーミングレプリケーションを有効または無効にします。ストリーミングレプリケーションを有効にするには、値を
trueに設定します。ストリーミングレプリケーションを無効にするには、値を
falseに設定します。無効にすると、セカンダリはソースから同期のリクエストを発行して応答を待つことで、oplog エントリのバッチを取得します。これには、oplog エントリのバッチごとにネットワーク上の往復が必要です。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
oplogInitialFindMaxSecondsタイプ: 整数
デフォルト: 60
データ同期中、レプリカセットのノードが
findコマンドの完了まで待機する最長時間(秒)です。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
periodicNoopIntervalSecsタイプ: 整数
デフォルト: 10
各ノードでの noop の書込み (write) 間隔(秒単位)。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。注意
MongoDB Atlas クラスターのこの値を変更するには、Atlas サポートに問い合わせる必要があります。
次の例では、起動時に
periodicNoopIntervalSecsを 1 秒に設定します。mongod --setParameter periodicNoopIntervalSecs=1
replBatchLimitBytesDefault: 104857600 (100MB)
oplog アプリケーションの最大バッチ サイズをバイト単位で設定します。
値の範囲は 16777216(16 MB)から 104857600(100 MB)までです。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
replBatchLimitBytesto 64 MB to limit the oplog application batch size:mongod --setParameter replBatchLimitBytes=67108864 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, replBatchLimitBytes: 64 * 1024 * 1024 } )
replicaSetMonitorProtocol型: string
デフォルト: "ストリーム可能"
使用するレプリカ セット モニター プロトコルを決定します。このパラメータを
"streamable"に設定すると、Server Discovery and Monitoring(SDAM) 仕様に準拠し、helloリクエストを一定に保つことができます。このパラメータを"sdam"に設定することもできます。これは SDAM 仕様に準拠しています。このパラメーターは、スタートアップ時にのみ使用できます。
次の例では、
mongodインスタンスでreplicaSetMonitorProtocolを"sdam"に設定します。mongod --setParameter replicaSetMonitorProtocol='sdam'
replWriterMinThreadCountバージョン 5.0 の新機能。
タイプ: 整数
デフォルト: 0
複製された操作を並列に適用するために使用するスレッドの最小数。値の範囲は 0 から 256 までです。
Parallel application of replication operations uses up to
replWriterThreadCountthreads. IfreplWriterMinThreadCountis configured with a value less thanreplWriterThreadCount, the thread pool will timeout idle threads until the total count of threads in the thread pool is equal toreplWriterMinThreadCount.replWriterMinThreadCountmust be less than or equal toreplWriterThreadCount. MongoDB rejects the update if you setreplWriterMinThreadCountto a value greater thanreplWriterThreadCount.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
replWriterThreadCountタイプ: 整数
デフォルト: 16
複製された操作を並列に適用するために使用するスレッドの最大数。値の範囲は 1 から 256 までです。ただし、使用されるスレッドの最大数は、使用可能なコア数の 4 倍に制限されます。
replWriterThreadCountmust be greater than or equal toreplWriterMinThreadCount. MongoDB rejects the update if you setreplWriterThreadCountto a value less thanreplWriterMinThreadCount.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
rollbackTimeLimitSecs型: 64 ビット整数
デフォルト: 86400(1 日)
ロールバックできるデータの最大経過時間。このパラメーターでは負の値は無効です。
ロールバック対象インスタンスの oplog が終了してから、共通点(ソース ノードとロールバック対象ノードが同じデータを持っていた最後のポイント)の後の最初の操作までの時間がこの値を超えると、ロールバックは失敗します。
実質的に無制限のロールバック期間を設定するには、値を
2147483647に設定します。これは許容される最大値であり、約 68 年に相当します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
sessionCatalogPartitionsバージョン9.0.1の新機能。
タイプ: 整数
デフォルト: 0
セッションカタログ内のパーティション数を指定します。セッションカタログをパーティショニングすると、セッション数が多い場合のロック競合が軽減されます。
0のデフォルト値は、mongodプロセスで使用可能なコア数の 2 倍に設定されます(最大64まで)。0より大きい値を設定した場合、MongoDB はその値をパーティション数として使用します。重要
デフォルト値を変更することは推奨されません。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。For example, to set
sessionCatalogPartitionsfor amongodinstance to16:mongod --setParameter sessionCatalogPartitions=16
TransactionRecordMinimumLifetimeMinutesタイプ: 整数
デフォルト: 30
レコードがクリーンアップの対象となるまでに
transactionsコレクションにトランザクションレコードが存在する最低限の期間です。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。For example, to set the
TransactionRecordMinimumLifetimeMinutesfor amongodinstance to 20 minutes:mongod --setParameter TransactionRecordMinimumLifetimeMinutes=20
waitForSecondaryBeforeNoopWriteMSタイプ: 整数
デフォルト: 10
afterClusterTimeが oplog から最後に適用された時間よりも大きい場合にセカンダリが待機する必要がある時間(ミリ秒単位)。waitForSecondaryBeforeNoopWriteMSが経過した後に、afterClusterTimeが最後に適用された時間よりもまだ大きい場合、セカンダリは最後に適用された時間を進めるためにノーオペレーション(no-op)書き込みを行います。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets the
waitForSecondaryBeforeNoopWriteMSto 20 milliseconds:mongod --setParameter waitForSecondaryBeforeNoopWriteMS=20 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, waitForSecondaryBeforeNoopWriteMS: 20 } )
シャーディング パラメータ
analyzeShardKeyCharacteristicsDefaultSampleSizeバージョン7.0の新機能。
タイプ: 整数
デフォルト: 10000000
analyzeShardKeyを実行するときにsampleRateとsampleSizeが設定されていない場合、シャードキー特性メトリクスを計算するときにサンプリングするドキュメントの数を指定します。0より大きくする必要があります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、スタートアップ時に
analyzeShardKeyCharacteristicsDefaultSampleSizeに10000を設定します。mongod --setParameter analyzeShardKeyCharacteristicsDefaultSampleSize=10000 実行中に、
setParameterコマンドを使用してパラメーターを設定または変更できます。db.adminCommand( { setParameter: 1, analyzeShardKeyCharacteristicsDefaultSampleSize: 10000 } )
analyzeShardKeyMonotonicityCorrelationCoefficientThresholdバージョン7.0の新機能。
型: double
デフォルト: 0.7
シャードキーが挿入順で単調に変化しているかを判断するために使用される
RecordId相関係数のしきい値を指定します。0より大きく、1以下である必要があります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、スタートアップ時に
analyzeShardKeyMonotonicityCorrelationCoefficientThresholdに1を設定します。mongod --setParameter analyzeShardKeyMonotonicityCorrelationCoefficientThreshold=1 実行中に、
setParameterコマンドを使用してパラメーターを設定または変更できます。db.adminCommand( { setParameter: 1, analyzeShardKeyMonotonicityCorrelationCoefficientThreshold: 1 } )
analyzeShardKeyNumMostCommonValuesバージョン7.0の新機能。
タイプ: 整数
デフォルト: 5
返却する最も一般的なシャードキー値の数を指定します。コレクションに含まれる一意のシャードキーの数がこの値より少ない場合、
analyzeShardKeyNumMostCommonValuesはその最も一般的な値の数を返します。0より大きく、1000以下である必要があります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、スタートアップ時に
analyzeShardKeyNumMostCommonValuesに3を設定します。mongod --setParameter analyzeShardKeyNumMostCommonValues=3 実行中に、
setParameterコマンドを使用してパラメーターを設定または変更できます。db.adminCommand( { setParameter: 1, analyzeShardKeyNumMostCommonValues: 3 } )
analyzeShardKeyNumRangesバージョン7.0の新機能。
タイプ: 整数
デフォルト: 100
シャードキー範囲のホットネス(アクセス頻度)を計算するときに、シャードキースペースを分割する範囲の数を指定します。
0より大きく、10000以下である必要があります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、スタートアップ時に
analyzeShardKeyNumRangesに50を設定します。mongod --setParameter analyzeShardKeyNumRanges=50 実行中に、
setParameterコマンドを使用してパラメーターを設定または変更できます。db.adminCommand( { setParameter: 1, analyzeShardKeyNumRanges: 50 } )
analyzeShardKeyNumSamplesPerRangeバージョン7.0の新機能。
タイプ: 非負整数
デフォルト: 10
シャードキーの範囲ごとにサンプルするドキュメントの数。0 より大きく、
10000以下の値である必要があります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、スタートアップ時に
analyzeShardKeyNumSamplesPerRangeに50を設定します。mongod --setParameter analyzeShardKeyNumSamplesPerRange=50 実行中に、
setParameterコマンドを使用してパラメーターを設定または変更できます。db.adminCommand( { setParameter: 1, analyzeShardKeyNumSamplesPerRange: 50 } )
autoMergerIntervalSecsバージョン7.0の新機能。
タイプ: 整数
デフォルト: 3600
AutoMerger が有効な場合、自動マージのラウンド間隔(秒単位)を指定します。デフォルト値は 3600 秒(1 時間)です。
autoMergerIntervalSecsは、コンフィギュレーションサーバーでのみ設定できます。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、起動時に
autoMergerIntervalSecsを 7200 秒(2 時間)に設定します。mongod --setParameter autoMergerIntervalSecs=7200 実行中に、
setParameterコマンドを使用してパラメーターを設定または変更できます。db.adminCommand( { setParameter: 1, autoMergerIntervalSecs: 7200 } )
autoMergerThrottlingMSバージョン7.0の新機能。
タイプ: 整数
デフォルト: 15000
AutoMerger が有効な場合、同じコレクションで AutoMerger によって開始されるマージ間の最小時間(ミリ秒単位)を指定します。
autoMergerThrottlingMSは、コンフィギュレーションサーバーでのみ設定できます。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、起動時に
autoMergerThrottlingMSを 60000 ミリ秒(1 分)に設定します。mongod --setParameter autoMergerThrottlingMS=60000 実行中に、
setParameterコマンドを使用してパラメーターを設定または変更できます。db.adminCommand( { setParameter: 1, autoMergerThrottlingMS: 60000 } )
balancerMigrationsThrottlingMsバージョン 7.0 の新機能: (6.3.1、6.0.6、5.0.18 以降でも利用可能)
タイプ: 整数
デフォルト: 1000
連続する 2 つのバランシング ラウンド間隔の最小時間を指定します。これにより、バランシング レートを調整できます。このパラメーターは、コンフィギュレーションサーバー ノードでのみ有効です。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、起動時に
balancerMigrationsThrottlingMsを 2000 ミリ秒に設定しています。mongod --setParameter balancerMigrationsThrottlingMs=2000 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, balancerMigrationsThrottlingMs: 2000 } )
catalogCacheCollectionMaxEntriesバージョン 8.1 の新機能(8.0.10、7.0.22 以降でも利用可能)
タイプ: 整数
デフォルト: 10000
コレクションのカタログキャッシュで許可されるエントリの最大数。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
catalogCacheDatabaseMaxEntriesバージョン 8.1 の新機能(8.0.10、7.0.22 以降でも利用可能)
タイプ: 整数
デフォルト: 10000
データベースのカタログキャッシュで許可されるエントリの最大数。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
chunkDefragmentationThrottlingMSバージョン5.3の新機能。
タイプ: 整数
デフォルト: 1000
Specifies the minimum time period (in milliseconds) between consecutive split and merge commands run by the balancer when the chunks in a sharded collection are defragmented.
chunkDefragmentationThrottlingMSlimits the rate of split and merge commands.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
chunkDefragmentationThrottlingMSto10milliseconds:mongod --setParameter chunkDefragmentationThrottlingMS=10 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, chunkDefragmentationThrottlingMS: 10 } )
directConnectionChecksWithSingleShardバージョン7.0.12の新機能。
タイプ: ブール値
デフォルト:MongoDB 8.0.10 以降では true です
単一のシャードを持つシャーディングされたクラスターに設定すると、直接接続の警告が有効になります。ユーザーが単一シャード クラスターに直接接続した場合、
mongodは 1 時間ごとに警告をログに記録し、不正な直接シャード操作でshardingStatistics.unauthorizedDirectShardOpsを更新します。これを回避するには、ユーザーは
mongosなどのルーターを介して単一シャード クラスターに接続する必要があります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
disableResumableRangeDeleterタイプ: ブール値
デフォルト: false
シャードのプライマリに設定されている場合、 MongoDB がシャードで範囲の削除を一時停止するかどうかを指定します。
trueに設定すると、 MongoDB は孤立したドキュメント を含む 範囲 のクリーンアップを一時停止します。シャードは引き続き他のシャードにチャンクを提供できますが、このパラメータをfalseに設定するまで、シャードは提供されたドキュメントを削除しません。このシャードは、受信チャンクの範囲と重複するconfig.rangeDeletionsコレクションに保留中の範囲削除タスクがない限り、他のシャードからチャンクを引き続き受け取ることができます。When
disableResumableRangeDeleteristrue, chunk migrations fail if orphaned documents exist on the recipient shard's primary in the same range as the incoming chunks.シャードのプライマリでない場合、このパラメーターは
mongodには影響しません。重要
If you set
disableResumableRangeDeleterparameter totrue, ensure that you apply it consistently for all members in the shard's replica set. In the event of a failover, this setting's value on the new primary dictates the behavior of the range deleter.MongoDB 8.0 以降では、スタートアップと実行時の両方で
disableResumableRangeDeleterを設定できます。スタートアップ時に
disableResumableRangeDeleterを設定するには、次の コマンドを使用します。mongod --setParameter disableResumableRangeDeleter=false 実行時に
disableResumableRangeDeleterを設定するには、次のコマンドを使用します。db.adminCommand( { setParameter: 1, disableResumableRangeDeleter: false } )
enableFinerGrainedCatalogCacheRefresh注意
8.0 で非推奨
MongoDB 8.0 以降では、パラメータは非推奨となり、変更やエラーは発生しません。
タイプ: ブール値
デフォルト: true
このパラメータにより、シャードを更新する必要がある場合にのみカタログ キャッシュを更新可能になります。無効の場合、古いチャンクがあると、コレクションのチャンク配布全体が古いと見なされ、シャードにアクセスするすべてのルーターにシャード カタログ キャッシュの更新が強制されます。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。mongod --setParameter enableFinerGrainedCatalogCacheRefresh=true mongos --setParameter enableFinerGrainedCatalogCacheRefresh=true
enableShardedIndexConsistencyCheckタイプ: ブール値
デフォルト: true
コンフィギュレーションサーバーのプライマリに設定されている場合、シャーディングされたコレクションのインデックス整合性チェックを有効または無効にします。コンフィギュレーションサーバーのプライマリでない場合、このパラメーターは
mongodには影響しません。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
enableShardedIndexConsistencyChecktofalsefor a config server primary:mongod --setParameter enableShardedIndexConsistencyCheck=false 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, enableShardedIndexConsistencyCheck: false } ) Tip
shardedIndexConsistencyCheckIntervalMSparametershardedIndexConsistencyコマンドによって返されたserverStatusメトリクス。
findChunksOnConfigTimeoutMSバージョン 5.0 の新機能。
タイプ: 非負整数
デフォルト: 900000
chunksでの検索操作のタイムアウト時間(ミリ秒)。クラスターに多数のチャンクがあり、チャンクのロードがエラー
ExceededTimeLimitで失敗する場合は、次のようにパラメーターの値を増やしてください。mongod --setParameter findChunksOnConfigTimeoutMS=1000000 このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
findShardsOnConfigTimeoutMSバージョン8.3の新機能。
タイプ: 非負整数
デフォルト : 20000 ミリ秒
config.shards名前空間に対するfind操作のタイムアウト時間(ミリ秒)。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、実行時に
findShardsOnConfigTimeoutMSを30000ミリ秒に設定します。db.adminCommand( { setParameter: 1, findShardsOnConfigTimeoutMS: 30000 } ) 次の例では、スタートアップ時に
findShardsOnConfigTimeoutMSを30000ミリ秒に設定しています。mongos --setParameter findShardsOnConfigTimeoutMS=30000
loadRoutingTableOnStartupタイプ: ブール値
デフォルト: true
シャーディングされたクラスターのルーティングテーブルを起動時にプリロードするように
mongosインスタンスを設定します。この設定を有効にすると、mongosは、クライアント接続の受け入れを開始する前に、起動手順の一部として、各シャーディングされたコレクションのクラスター全体のルーティング テーブルをキャッシュします。この設定が有効になっていない場合、
mongosは受信クライアント接続に必要なルーティング テーブルのみをロードし、与えられたリクエストの名前空間の特定のルーティング テーブルのみをロードします。A
mongosinstance with theloadRoutingTableOnStartupparameter enabled may experience longer startup times, but will result in faster servicing of initial client connections once started.loadRoutingTableOnStartupは、デフォルトで有効になっています。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
maxCatchUpPercentageBeforeBlockingWritesバージョン 5.0 の新機能。
タイプ: 整数
デフォルト: 10
moveChunkおよびmoveRange操作の場合、catchupフェーズからcommitフェーズに移行するために移行プロトコルによって許可される未転送データの最大パーセンテージ(合計チャンク サイズの割合で表す)を指定します。キャッチアップ率を高く設定すると、移行が完了するまでの時間は短縮されますが、
upsertおよびdelete操作の同時実行時のレイテンシが高くなります。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。MongoDB 7.1(および 7.0.1)以降では、実行時にパラメータを設定できます。
たとえば、最大パーセンテージを 20 に設定するには、起動時に以下を発行します。
mongod --setParameter maxCatchUpPercentageBeforeBlockingWrites=20 MongoDB 7.1(および 7.0.1)以降では、次のように
setParameterコマンドを使用して実行時にパラメーターを設定できます。db.adminCommand( { setParameter: 1, maxCatchUpPercentageBeforeBlockingWrites: 20} )
metadataRefreshInTransactionMaxWaitBehindCritSecMS非推奨
注意
MongoDB 8.1 以降では、古い
metadataRefreshInTransactionMaxWaitBehindCritSecMSパラメータの名前がmetadataRefreshInTransactionMaxWaitMSに変更されます。パラメータ名としてmetadataRefreshInTransactionMaxWaitBehindCritSecMSを引き続き使用できますが、これは非推奨であり、今後のMongoDBリリースで削除される予定です。バージョン 5.2 の新機能(5.1.0、5.0.4 以降でも利用可能)
バージョン8.1で変更。
タイプ: 整数
デフォルト: 500
トランザクション内の重要なセクションに対するシャードの待ち時間を制限します。
クエリがシャードにアクセスしたときに、チャンク移行またはDDL 操作によってコレクションのクリティカル セクションがすでに専有されている可能性があります。クエリでクリティカルセクションが専有されていることが検出された場合、シャードはクリティカル セクションが解放されるまで待機します。シャードが制御を
mongosに戻すと、mongosはクエリを再試行します。ただし、マルチシャード トランザクションが、複数のシャードのクリティカル セクションを占有する操作とやりとりする場合、そのやりとりにより分散デッドロックが発生する可能性があります。metadataRefreshInTransactionMaxWaitBehindCritSecMSは、クリティカル セクションが解放されるまで、シャードがトランザクション内で待機する最大時間を制限します。To reduce the maximum wait time for the critical section within a transaction, lower the value of
metadataRefreshInTransactionMaxWaitBehindCritSecMS.警告
If
metadataRefreshInTransactionMaxWaitBehindCritSecMSis too low,mongoscould use all of its retry attempts and return an error.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
For example, to set
metadataRefreshInTransactionMaxWaitBehindCritSecMSto 400 milliseconds:db.adminCommand( { setParameter: 1, metadataRefreshInTransactionMaxWaitBehindCritSecMS: 400 } )
metadataRefreshInTransactionMaxWaitMSバージョン8.1で変更。
タイプ: 整数
デフォルト: 500
トランザクション内の重要なセクションに対するシャードの待ち時間を制限します。
注意
MongoDB 8.1 以降では、古い
metadataRefreshInTransactionMaxWaitBehindCritSecMSパラメータの名前がmetadataRefreshInTransactionMaxWaitMSに変更されます。パラメータ名としてmetadataRefreshInTransactionMaxWaitBehindCritSecMSを引き続き使用できますが、これは非推奨であり、今後のMongoDBリリースで削除される予定です。クエリがシャードにアクセスしたときに、チャンク移行またはDDL 操作によってコレクションのクリティカル セクションがすでに専有されている可能性があります。クエリでクリティカルセクションが専有されていることが検出された場合、シャードはクリティカル セクションが解放されるまで待機します。シャードが制御を
mongosに戻すと、mongosはクエリを再試行します。ただし、マルチシャード トランザクションが、複数のシャードのクリティカル セクションを占有する操作とやりとりする場合、そのやりとりにより分散デッドロックが発生する可能性があります。metadataRefreshInTransactionMaxWaitMSは、クリティカル セクションが解放されるまで、シャードがトランザクション内で待機する最大時間を制限します。To reduce the maximum wait time for the critical section within a transaction, lower the value of
metadataRefreshInTransactionMaxWaitMS.警告
If
metadataRefreshInTransactionMaxWaitMSis too low,mongoscould use all of its retry attempts and return an error.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
For example, to set
metadataRefreshInTransactionMaxWaitMSto 400 milliseconds:db.adminCommand( { setParameter: 1, metadataRefreshInTransactionMaxWaitMS: 400 } )
migrateCloneInsertionBatchDelayMSタイプ: 非負整数
デフォルト: 0
移行プロセスのクローン作成ステップ中に挿入バッチの間で待機する時間(ミリ秒)。この待機時間は、
secondaryThrottleに追加されます。デフォルト値の
0は、追加の待機がないことを示します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following sets the
migrateCloneInsertionBatchDelayMSto 200 milliseconds:mongod --setParameter migrateCloneInsertionBatchDelayMS=200 このパラメーターは次のように
setParameterコマンドを使用して設定することもできます。db.adminCommand( { setParameter: 1, migrateCloneInsertionBatchDelayMS: 200 } )
migrateCloneInsertionBatchSizeタイプ: 非負整数
デフォルト: 0
移行プロセスのクローン作成ステップで、1つのバッチに挿入するドキュメントの最大数。
デフォルト値
0は、バッチあたりのドキュメントの最大数がないことを示します。ただし、実際には、最大 16 MB のドキュメントを含むバッチが生成されます。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following sets the
migrateCloneInsertionBatchSizeto 100 documents:mongod --setParameter migrateCloneInsertionBatchSize=100 このパラメーターは次のように
setParameterコマンドを使用して設定することもできます。db.adminCommand( { setParameter: 1, migrateCloneInsertionBatchSize: 100 } )
mongosShutdownTimeoutMillisForSignaledShutdownバージョン 5.0 の新機能。
タイプ: 整数
デフォルト: 15000
SIGTERMシグナルに応答してmongosのシャットダウンを開始する前に、進行中のデータベース操作が完了するまで待機する時間(ミリ秒単位)を指定します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
たとえば、時間を 250 ミリ秒に設定するには、起動時に次のコマンドを発行します。
mongos --setParameter mongosShutdownTimeoutMillisForSignaledShutdown=250 Or if using the
setParametercommand in amongoshsession that is connected to a runningmongos:db.adminCommand( { setParameter: 1, mongosShutdownTimeoutMillisForSignaledShutdown: 250 } )
orphanCleanupDelaySecsバージョン8.2で変更。
デフォルト: 3600(60 分)
移行されたチャンクがソース シャードから削除されるのを遅延させる最小時間です。
Before deleting a migrated chunk, MongoDB waits for in-progress queries involving the chunk to complete on the shard primary and then waits an additional
orphanCleanupDelaySecsseconds.Starting in 8.2, the behavior of in-progress queries on shard secondaries is determined by
terminateSecondaryReadsOnOrphanCleanup.シャードにストレージの制約がある場合は、この値を一時的に下げることを検討してください。シャード セカンダリで 60 分を超えるクエリを実行中の場合は、この値を増やすことを検討してください。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following sets the
orphanCleanupDelaySecsto 20 minutes:mongod --setParameter orphanCleanupDelaySecs=1200 これは以下のように
setParameterコマンドを使用して設定することもできます。db.adminCommand( { setParameter: 1, orphanCleanupDelaySecs: 1200 } ) Tip
In all versions, the new value of
orphanCleanupDelaySecsis only applied to range deletions created after the value is changed. To apply the new value to existing range deletions, force a step down.
persistedChunkCacheUpdateMaxBatchSizeバージョン 7.2 で追加: (および 7.1.1、7.0.4、6.0.13、5.0.25)
型: 整数
デフォルト: 1000
操作をルーティングして処理するには、シャードがコレクションに関連するルーティング情報と所有者情報を知っている必要があります。この情報は、内部キャッシュコレクション
config.cache.collectionsとconfig.cache.chunks.<collectionName>のレプリケーションを通して、シャードのプライマリノードからセカンダリ ノードに伝わります。以前のバージョンでは、チャンク キャッシュ コレクションのアップデートは個別に実行されていました(つまり、エントリが削除され、新しいエントリが挿入されていた)。 MongoDB 7.2 以降では、これらのアップデートは削除のバッチとそれに続く挿入のバッチの実行として行われます。 アップデートされたロジックにより、多数のチャンクを含むコレクションのパフォーマンスが向上します。
persistedChunkCacheUpdateMaxBatchSizeパラメーターは、永続化したチャンク キャッシュの更新に使用される最大バッチ サイズを指定します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、起動時に
persistedChunkCacheUpdateMaxBatchSizeを 700 に設定します。mongod --setParameter persistedChunkCacheUpdateMaxBatchSize=700 実行時に
persistedChunkCacheUpdateMaxBatchSizeを設定することもできます。db.adminCommand( { setParameter: 1, persistedChunkCacheUpdateMaxBatchSize: 700 } )
queryAnalysisSampleExpirationSecsバージョン7.0の新機能。
タイプ: 整数
デフォルト: 7 * 24 * 3600
サンプリングされたクエリ ドキュメントが TTL モニターによって削除されるまで存在する時間(秒単位)。
0より大きくする必要があります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、
mongodインスタンスの起動時にqueryAnalysisSampleExpirationSecsを691200(8 * 24 * 3600)に設定します。mongod --setParameter queryAnalysisSampleExpirationSecs=691200 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, queryAnalysisSampleExpirationSecs: 691200 } )
queryAnalysisSamplerConfigurationRefreshSecsバージョン7.0の新機能。
バージョン7.0.1で変更。
タイプ: 整数
デフォルト: 10
サンプラー(
mongosまたはmongod)がクエリ アナライザのサンプリング レートをリフレッシュする間隔。configureQueryAnalyzerコマンドで構成されたサンプリング レートは、通過するトラフィックに基づいて、シャーディングされたクラスターのmongosインスタンス、またはレプリカセットのmongodインスタンスに分割されます。mongosまたはmongodのサンプリング レート割り当てを、通過するトラフィックに対してより応答性を高くするには、この値を小さくします。デフォルト値を使用することをお勧めします。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。MongoDB 7.0.1 以降では、実行時に
queryAnalysisSamplerConfigurationRefreshSecsを設定できます。次の例では、
mongodインスタンスの起動時にqueryAnalysisSamplerConfigurationRefreshSecsを 60 秒に設定します。mongod --setParameter queryAnalysisSamplerConfigurationRefreshSecs=60 次の例では、
mongosインスタンスの起動時にqueryAnalysisSamplerConfigurationRefreshSecsを 60 秒に設定します。mongos --setParameter queryAnalysisSamplerConfigurationRefreshSecs=60 値を 30 秒に設定するには、次のコマンドを実行します。
db.adminCommand( { setParameter: 1, queryAnalysisSamplerConfigurationRefreshSecs: 30 } )
queryAnalysisWriterIntervalSecsバージョン7.0の新機能。
バージョン7.0.1で変更。
タイプ: 整数
デフォルト: 90
サンプリングされたクエリがディスクに書き込まれる間隔(秒単位)。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。MongoDB 7.0.1 以降では、実行時に
queryAnalysisWriterIntervalSecsを設定できます。次の例では、
mongodインスタンスの起動時にqueryAnalysisWriterIntervalSecsを 60 秒に設定します。mongod --setParameter queryAnalysisWriterIntervalSecs=60 値を 60 秒に設定するには、次のコマンドを実行します。
db.adminCommand( { setParameter: 1, queryAnalysisWriterIntervalSecs: 60 } )
queryAnalysisWriterMaxBatchSizeバージョン7.0の新機能。
タイプ: 整数
デフォルト: 100000
一度にディスクに書き込むサンプリングされたクエリの最大数。
0より大きく、100000以下にする必要があります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、
mongodスタートアップのインスタンスでqueryAnalysisWriterMaxBatchSizeを1000に設定します。mongod --setParameter queryAnalysisWriterMaxBatchSize=1000 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, queryAnalysisWriterMaxBatchSize: 1000 } )
queryAnalysisWriterMaxMemoryUsageBytesバージョン7.0の新機能。
タイプ: 整数
デフォルト: 100 * 1024 * 1024
クエリ サンプリング ライターが使用できるメモリの最大量(バイト単位)。制限に到達すると、バッファがフラッシュされるまで、新しいクエリと差分はすべてサンプリングから破棄されます。
0より大きくする必要があります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、
mongodスタートアップのインスタンスでqueryAnalysisWriterMaxMemoryUsageBytesを10000000に設定します。mongod --setParameter queryAnalysisWriterMaxMemoryUsageBytes=10000000
rangeDeleterBatchDelayMSタイプ: 非負整数
デフォルト: 20
範囲移行のクリーンアップ段階で、次の削除バッチまでに待機する時間(ミリ秒単位)。
_secondaryThrottle レプリケーションの遅延は、バッチの削除ごとに発生します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following sets the
rangeDeleterBatchDelayMSto 200 milliseconds:mongod --setParameter rangeDeleterBatchDelayMS=200 このパラメーターは次のように
setParameterコマンドを使用して設定することもできます。db.adminCommand( { setParameter: 1, rangeDeleterBatchDelayMS: 200 } ) Tip
In versions prior to 6.0.3, the new value of
rangeDeleterBatchDelayMSis only applied to range deletions created after the value is changed. To apply the new value to existing range deletions, force a step down.6.0.3 以降、パラメーターの新しい値は、範囲削除がいつ作成されたかに関係なく、アップデート後に処理されたすべての範囲削除に適用されます。
rangeDeleterBatchSizeタイプ: 非負整数
デフォルト:2147483647 MongoDB5.1.2 と 以降の5.0.6
範囲移行のクリーンアップ段階で削除する各バッチの最大ドキュメント数。
値が
0の場合、システムがデフォルト値を選択することを示します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
rangeDeleterBatchSizeto 32 documents:mongod --setParameter rangeDeleterBatchSize=32 このパラメーターは次のように
setParameterコマンドを使用して設定することもできます。db.adminCommand( { setParameter: 1, rangeDeleterBatchSize: 32 } ) Tip
In versions prior to 6.0.3, the new value of
rangeDeleterBatchSizeis only applied to range deletions created after the value is changed. To apply the new value to existing range deletions, force a step down.6.0.3 以降、パラメーターの新しい値は、範囲削除がいつ作成されたかに関係なく、アップデート後に処理されたすべての範囲削除に適用されます。
routingTableCacheChunkBucketSizeバージョン7.0.1の新機能。
バージョン7.2で変更。
タイプ: 整数
デフォルト: 500
チャンク グループ最適化の実装に使用されるルーティング テーブル キャッシュのバケットのサイズを指定します。
0より大きくする必要があります。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。たとえば、
mongodのキャッシュ チャンク バケット サイズを250に設定するには、起動時に次のコマンドを実行します。mongod --setParameter routingTableCacheChunkBucketSize=250
shardedIndexConsistencyCheckIntervalMSタイプ: 整数
デフォルト: 600000
コンフィギュレーションサーバーのプライマリに設定されている場合、コンフィギュレーションサーバーのプライマリがシャーディングされたコレクションのインデックスの整合性をチェックする間隔(ミリ秒単位)です。コンフィギュレーションサーバーのプライマリでない場合、このパラメーターは
mongodには影響しません。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。たとえば、次の例では、起動時に間隔を 300000 ミリ秒(5 分)に設定します。
mongod --setParameter shardedIndexConsistencyCheckIntervalMS=300000 Tip
enableShardedIndexConsistencyCheckparametershardedIndexConsistencyコマンドによって返されたserverStatusメトリクス。
ShardingTaskExecutorPoolHostTimeoutMS型: 整数
デフォルト: 300000(5 分)
mongosがホストへのすべての接続を切断するまでに、mongosでホストとの通信が無い最大時間。If set,
ShardingTaskExecutorPoolHostTimeoutMSshould be greater than the sum ofShardingTaskExecutorPoolRefreshRequirementMSandShardingTaskExecutorPoolRefreshTimeoutMS. Otherwise,mongosadjusts the value ofShardingTaskExecutorPoolHostTimeoutMSto be greater than the sum.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
ShardingTaskExecutorPoolHostTimeoutMSto120000during startup:mongos --setParameter ShardingTaskExecutorPoolHostTimeoutMS=120000 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, ShardingTaskExecutorPoolHostTimeoutMS: 120000 } )
ShardingTaskExecutorPoolMaxConnecting型: 整数
デフォルト: 2
各 TaskExecutor 接続プールが
mongodインスタンスに対して持つことができる同時開始接続の最大数(セットアップまたはリフレッシュ状態の保留中の接続を含む)。このパラメーターを設定すると、mongosがmongodインスタンスに接続を追加するレートを制御できます。If set,
ShardingTaskExecutorPoolMaxConnectingshould be less than or equal toShardingTaskExecutorPoolMaxSize. If it is greater,mongosignores theShardingTaskExecutorPoolMaxConnectingvalue.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
ShardingTaskExecutorPoolMaxConnectingto20during startup:mongos --setParameter ShardingTaskExecutorPoolMaxConnecting=20 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, ShardingTaskExecutorPoolMaxConnecting: 20 } )
ShardingTaskExecutorPoolMaxSize型: 整数
デフォルト:
注意
最大構成可能値は 2 64 - 1 ですが、オンプレミスと MongoDB Atlas の両方の配置のデフォルトは、パフォーマンスとリソース使用量を最適化するために大幅に低く設定されています。
各 TaskExecutor 接続プールが任意の
mongodインスタンスに対して開くことができるアウトバウンド接続の最大数。すべての TaskExecutor プールにおいて、任意のホストへの最大接続数は次のとおりです。ShardingTaskExecutorPoolMaxSize * taskExecutorPoolSize このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
ShardingTaskExecutorPoolMaxSizeto20during startup:mongos --setParameter ShardingTaskExecutorPoolMaxSize=20 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, ShardingTaskExecutorPoolMaxSize: 20 } ) mongoscan have up tonTaskExecutor connection pools, wherenis the number of cores. SeetaskExecutorPoolSize.
ShardingTaskExecutorPoolMaxQueueDepthバージョン8.2の新機能。
タイプ: 非負整数
デフォルト: 0
実行プログラムが追加のリクエストの拒否を開始する前にキューに入れる接続リクエストの最大数。
値が
0の場合、キューのサイズに制限がないことを意味します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、スタートアップ中に
ShardingTaskExecutorPoolMaxQueueDepthを10に設定します。mongos --setParameter ShardingTaskExecutorPoolMaxQueueDepth=10 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, ShardingTaskExecutorPoolMaxQueueDepth: 10 } )
ShardingTaskExecutorPoolMaxSizeForConfigServersバージョン6.0の新機能。
型: 整数
デフォルト: -1
Optional override for
ShardingTaskExecutorPoolMaxSizeto set the maximum number of outbound connections each TaskExecutor connection pool can open to a configuration server.設定値:
-1,ShardingTaskExecutorPoolMaxSizeis used. This is the default.-1より大きい整数値の場合、各 TaskExecutor 接続プールが構成サーバーに対し開始できるアウトバウンド接続の最大数を上書きします。
パラメータはシャーディングされた配置にのみ適用されます。
The following example sets
ShardingTaskExecutorPoolMaxSizeto2during startup, which sets the maximum number of outbound connections each TaskExecutor connection pool can open to a configuration server to2:このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
mongos --setParameter ShardingTaskExecutorPoolMaxSizeForConfigServers=2 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, ShardingTaskExecutorPoolMaxSizeForConfigServers: 2 } )
ShardingTaskExecutorPoolMinSize型: 整数
デフォルト: 1
各 TaskExecutor 接続プールが任意の
mongodインスタンスに対して開くことができるアウトバウンド接続の最小数。ShardingTaskExecutorPoolMinSizeconnections are created the first time a connection to a new host is requested from the pool. While the pool is idle, the pool maintains this number of connections untilShardingTaskExecutorPoolHostTimeoutMSmilliseconds pass without any application using that pool.For a
mongosusing thewarmMinConnectionsInShardingTaskExecutorPoolOnStartupparameter, theShardingTaskExecutorPoolMinSizeparameter also controls how many connections to each shard host are established on startup of themongosinstance before it begins accepting incoming client connections.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
ShardingTaskExecutorPoolMinSizeto2during startup:mongos --setParameter ShardingTaskExecutorPoolMinSize=2 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, ShardingTaskExecutorPoolMinSize: 2 } ) mongoscan have up tonTaskExecutor connection pools, wherenis the number of cores. SeetaskExecutorPoolSize.
ShardingTaskExecutorPoolMinSizeForConfigServersバージョン6.0の新機能。
型: 整数
デフォルト: -1
Optional override for
ShardingTaskExecutorPoolMinSizeto set the minimum number of outbound connections each TaskExecutor connection pool can open to a configuration server.設定値:
-1,ShardingTaskExecutorPoolMinSizeis used. This is the default.-1より大きい整数値の場合、各 TaskExecutor 接続プールが構成サーバーに対し開始できるアウトバウンド接続の最小数を上書きします。
パラメータはシャーディングされた配置にのみ適用されます。
The following example sets
ShardingTaskExecutorPoolMinSizeto2during startup, which sets the minimum number of outbound connections each TaskExecutor connection pool can open to a configuration server to2:このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
mongos --setParameter ShardingTaskExecutorPoolMinSizeForConfigServers=2 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, ShardingTaskExecutorPoolMinSizeForConfigServers: 2 } )
ShardingTaskExecutorPoolRefreshRequirementMS型: 整数
デフォルト: 60000(1 分)
プール内のアイドル接続をハートビートするまでに
mongosが待機する最大時間。 プールが最小サイズを超えると、更新中にアイドル接続が破棄される可能性があります。If set,
ShardingTaskExecutorPoolRefreshRequirementMSshould be greater thanShardingTaskExecutorPoolRefreshTimeoutMS. Otherwise,mongosadjusts the value ofShardingTaskExecutorPoolRefreshTimeoutMSto be less thanShardingTaskExecutorPoolRefreshRequirementMS.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
ShardingTaskExecutorPoolRefreshRequirementMSto90000during startup:mongos --setParameter ShardingTaskExecutorPoolRefreshRequirementMS=90000 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, ShardingTaskExecutorPoolRefreshRequirementMS: 90000 } )
ShardingTaskExecutorPoolRefreshTimeoutMS型: 整数
デフォルト: 20000(20 秒)
mongosでハートビートがタイムアウトするまでにハートビートを待つ最大時間。If set,
ShardingTaskExecutorPoolRefreshTimeoutMSshould be less thanShardingTaskExecutorPoolRefreshRequirementMS. Otherwise,mongosadjusts the value ofShardingTaskExecutorPoolRefreshTimeoutMSto be less thanShardingTaskExecutorPoolRefreshRequirementMS.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
ShardingTaskExecutorPoolRefreshTimeoutMSto30000during startup:mongos --setParameter ShardingTaskExecutorPoolRefreshTimeoutMS=30000 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, ShardingTaskExecutorPoolRefreshTimeoutMS: 30000 } )
ShardingTaskExecutorPoolReplicaSetMatchingバージョン5.0で変更。
タイプ: string
デフォルト: "自動"
mongosインスタンスでは、このパラメーターは、レプリカセット内のノードへの接続プールの最小サイズ制限を決定するポリシーを設定します。mongodインスタンスでは、このパラメーターは、他のレプリカセット内のノードへの接続プールの最小サイズ制限を決定するポリシーを設定します。このパラメーターは、ユーザー リクエストおよび CRUD 操作に直接関連する操作に対する接続のみを管理することに注意してください。
使用可能な値は次のとおりです。
マッチング ポリシー説明"automatic"(デフォルト)5.0以降では、
"automatic"が新しいデフォルト値です。mongosに設定すると、インスタンスは"matchPrimaryNode"オプションに指定された動作に従います。mongodに設定すると、インスタンスは"disabled"オプションに指定された動作に従います。WARNING: If the
ShardingTaskExecutorPoolReplicaSetMatchingis set to"automatic", thereplicaSetMatchingStrategystill describes the actual policy being used, not"automatic". To find the value of theShardingTaskExecutorPoolReplicaSetMatching, usegetParameterwhich returns the value of the server parameter."matchPrimaryNode"mongosに設定すると、シャーディングされたクラスター内のレプリカセットの各セカンダリ(具体的には、シャード レプリカセットとコンフィギュレーションサーバー)に対するインスタンスの接続プールの最小サイズ制限は、そのレプリカセットのプライマリへの接続プールのサイズと同じになります。mongodに設定すると、シャーディングされたクラスター内の別のレプリカセットの各セカンダリ(具体的には、シャード レプリカセットとコンフィギュレーションサーバー)に対するインスタンスの接続プールの最小サイズ制限は、そのレプリカセットのプライマリへの接続プールのサイズと同じになります。警告:トポロジー内の複数のシャード サーバーでシャード間の操作が急増する可能性がある場合は、
mongodインスタンスにこのオプションを設定しないでください。プライマリが降格する場合、
matchPrimaryNodeはプライマリになるすべてのセカンダリが現在のレベルのプライマリの読み取りと書き込みを処理できるようにします。"matchBusiestNode"mongosに設定すると、シャーディングされたクラスター内のレプリカセットの各ノード(具体的には、シャード レプリカセットとコンフィギュレーションサーバー)に対するインスタンスの接続プールの最小サイズ制限は、そのレプリカセットのプライマリと各セカンダリへのアクティブな接続数の最大値に等しくなります。mongodに設定すると、シャーディングされたクラスター内の別のレプリカセットの各ノード(具体的には、シャード レプリカセットとコンフィギュレーションサーバー)に対するインスタンスの接続プールの最小サイズ制限は、そのレプリカセットのプライマリと各セカンダリへのアクティブな接続数の最大値に等しくなります。"matchBusiestNode"を使用すると、mongosは各セカンダリへの十分な接続を維持し、プライマリとセカンダリの現在のレベルの読み取りと書き込みを処理します。アクティブな接続の数が減少すると、プール内で維持する接続の数も減少します。"disabled"When set for a
mongos, the instance's minimum number of connections in the instance's connection pool to each node of a replica set in the sharded clusterv (specifically, shard replica set and config servers) is equal to theShardingTaskExecutorPoolMinSize.When set for a
mongod, the instance's minimum number of connections in the instance's connection pool to each node of another replica set in the sharded cluster (specifically, shard replica set and config servers) is equal to theShardingTaskExecutorPoolMinSize.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets the
ShardingTaskExecutorPoolReplicaSetMatchingto"automatic"during startup:mongod --setParameter ShardingTaskExecutorPoolReplicaSetMatching="automatic" 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, ShardingTaskExecutorPoolReplicaSetMatching: "automatic" } )
shardRetryTokenBucketCapacityバージョン8.3の新機能。
タイプ : 整数
デフォルト: 1000
各シャードに割り当てられた過負荷再試行トークンの最大数。過負荷エラーに応答する再試行のたびにトークンが使用され、成功するたびにトークンが解放されます。使用可能なトークンが存在しない場合、操作は失敗します。
For example, if
mongosretries an operation that was previously load shed by the shard, it uses a token in the retry. If the attempt succeeds, it returns the token to the shard plus theshardRetryTokenReturnRate. If the attempt fails, it tries again with a new token. If it finds the bucket empty, it doesn't retry the operation.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、スタートアップ時に
shardRetryTokenBucketCapacityを 5000 に設定します。mongod --setParameter shardRetryTokenBucketCapacity=5000 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, shardRetryTokenBucketCapacity: 5000 } )
shardRetryTokenReturnRateバージョン8.3の新機能。
型: double
デフォルト: 0.1
成功したリクエストでのシャード再試行トークンの戻り値。MongoDB、リクエストを処理するにつれて、使用可能な再試行トークンの数が時間の経過とともに増加します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、スタートアップ時に
shardRetryTokenBucketReturnRateを 0.25 に設定します。mongod --setParameter shardRetryTokenReturnRate=0.25 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, shardRetryTokenReturnRate: 0.25 } )
shutdownTimeoutMillisForSignaledShutdownバージョン 5.0 の新機能。
タイプ: 整数
デフォルト: 15000
SIGTERMシグナルに応答してmongodのシャットダウンを開始する前に、進行中のデータベース操作が完了するまで待機する時間(ミリ秒単位)を指定します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
たとえば、時間を 250 ミリ秒に設定するには、起動時に次のコマンドを発行します。
mongod --setParameter shutdownTimeoutMillisForSignaledShutdown=250 Or if using the
setParametercommand in amongoshsession that is connected to a runningmongod:db.adminCommand( { setParameter: 1, shutdownTimeoutMillisForSignaledShutdown: 250 } )
skipShardingConfigurationChecksタイプ: ブール値
デフォルト: false
trueの場合、シャード ノードまたはコンフィギュレーションサーバー ノードをスタンドアロンとして起動してメンテナンス操作を行うことができます。このパラメーターは、--configsvrまたは--shardsvrオプションと相互に排他的です。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。mongod --setParameter skipShardingConfigurationChecks=true 重要
Once maintenance has completed, remove the
skipShardingConfigurationChecksparameter when restarting themongod.
taskExecutorPoolSize型: 整数
デフォルト: 1
特定の
mongosに使用する Task Executor 接続プールの数。パラメーター値が
0以下の場合、Task Executor 接続プールの数はコアの数になります。ただし、次の例外があります。コア数が 4 未満の場合、Task Executor 接続プールの数は 4 です。
コアの数が 64 より大きい場合、Task Executor 接続プールの数は 64 です。
The default value of
taskExecutorPoolSizeis1:このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
mongos --setParameter taskExecutorPoolSize=6
terminateSecondaryReadsOnOrphanCleanupバージョン8.2の新機能。
タイプ: ブール値
デフォルト: true
セカンダリ ノードで実行されている長時間実行されている読み取り操作を、 チャンク移行後の孤立したドキュメント の削除前に自動的に終了するかどうかを制御します。
In sharded clusters, when a chunk successfully migrates from the source shard to the destination shard, MongoDB does not immediately remove the migrated documents from the source shard. Instead, the primary of the source shard waits for any in-progress reads involving the namespace of the migrated chunk to complete, and after that, waits an additional period controlled by
orphanCleanupDelaySecs(default: 1 hour). This additional delay allows any long-running secondary reads to finish before orphaned documents are deleted from the source shard.孤立したドキュメントがソース シャードから削除された後、
terminateSecondaryReadsOnOrphanCleanupがtrueに設定されていない限り、チャンク移行の前に開始されたセカンダリ ノードで実行中進行中の読み取りでは、エラーが返されることなくドキュメントが自動的に欠落する可能性があります。terminateSecondaryReadsOnOrphanCleanupがtrueに設定されている場合、チャンク移行のコミット前に開始されたセカンダリ ノードでの読み取り操作は、 孤立したドキュメント が セカンダリノードから削除される前に自動的に終了されます。これにより、移行中に移動されたドキュメントが暗黙的に欠落するというセカンダリ読み取りが長時間実行されるのを防ぎます。falseに設定されている場合、孤立したドキュメントが削除された後でも、セカンダリ ノードでの読み取り操作は実行され続けます。操作では、エラーを返さずにドキュメントが暗黙的に欠落することがあります。これは、8.2 より前のバージョンのMongoDB の動作と一致します。注意
この動作は、チャンク移行がコミットする前に開始される読み取り操作にのみ影響します。クエリ、集計、複数の名前空間にまたがる操作など、セカンダリ上のすべての読み取り操作に適用されます。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
エラー応答
terminateSecondaryReadsOnOrphanCleanupによって読み取り操作が終了すると、 MongoDB は次のエラーを返します。{ code: 175, name: QueryPlanKilled, categories: [CursorInvalidatedError], errmsg: "Read has been terminated due to orphan range cleanup" } このエラーは設計上再試行することはできません。これらのエラーの処理の詳細については、シャーディングされたクラスターで実行されているセカンダリ読み取りが長時間実行されている を参照してください。
warmMinConnectionsInShardingTaskExecutorPoolOnStartupタイプ: ブール値
デフォルト: true
Configures a
mongosinstance to prewarm its connection pool on startup. With this parameter enabled, themongosattempts to establishShardingTaskExecutorPoolMinSizenetwork connections to each shard server as part of its startup procedure, before it begins accepting client connections.A timeout for this behavior can be configured with the
warmMinConnectionsInShardingTaskExecutorPoolOnStartupWaitMSparameter. If this timeout is reached, themongoswill begin accepting client connections regardless of the size of its connection pool.このパラメーターが有効になっている
mongosインスタンスでは起動時間が長くなる可能性がありますが、起動後は初期クライアント接続のサービスが高速化されます。warmMinConnectionsInShardingTaskExecutorPoolOnStartupは、デフォルトで有効になっています。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
warmMinConnectionsInShardingTaskExecutorPoolOnStartupWaitMS型: 整数
デフォルト: 2000(2 秒)
Sets the timeout threshold in milliseconds for a
mongosto wait forShardingTaskExecutorPoolMinSizeconnections to be established per shard host when using thewarmMinConnectionsInShardingTaskExecutorPoolOnStartupparameter. If this timeout is reached, themongoswill begin accepting client connections regardless of the size of its connection pool.このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
ヘルスマネージャー パラメータ
activeFaultDurationSecs型: ドキュメント
ヘルスマネージャーの概要に障害が発生してから、mongos がクラスターから排除されるまでの待機時間(秒単位)です。
障害が検出され、ヘルスマネージャーが
criticalに構成されている場合、サーバーは指定された間隔だけ待機してから、クラスターからmongosを削除します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
たとえば、障害からクラッシュまでの期間を 5 分に設定するには、起動時に次のコマンドを発行します。
mongos --setParameter activeFaultDurationSecs=300 Or if using the
setParametercommand in amongoshsession that is connected to a runningmongos:db.adminCommand( { setParameter: 1, activeFaultDurationSecs: 300 } ) setParameterで設定されたパラメーターは再起動後に永続することはありません。詳細については、「setParameter ページ」を参照してください。この設定を永続的にするには、次の例のように
setParameterオプションを使用して mongos コンフィギュレーション ファイルのactiveFaultDurationSecsを設定します。setParameter: activeFaultDurationSecs: 300
healthMonitoringIntensities型: ドキュメントの配列
このパラメータを使用して、ヘルスマネージャーの強度レベルを設定します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
healthMonitoringIntensitiesはドキュメントの配列valuesを受け取ります。valuesの各ドキュメントは 2 個のフィールドを取ります。type、ヘルスマネージャーファセットintensity、強度レベル
ヘルスマネージャー
Facetヘルス オブザーバーがチェックする内容configServerコンフィギュレーションサーバーに対する接続に関連するクラスターの健全性の問題。
dnsDNS の可用性と機能に関連するクラスターの健全性の問題。
ldapLDAP の可用性と機能に関するクラスターの健全性の問題。
強度レベル
強度レベル説明criticalThe Health Manager on this facet is enabled and has the ability to move the failing mongos out of the cluster if an error occurs. The Health Manager waits the amount of time specified by
activeFaultDurationSecsbefore stopping and moving the mongos out of the cluster automatically.non-criticalこのファセットのヘルスマネージャーは有効になっており、エラーをログに記録しますが、エラーが発生した場合、mongos はクラスター内に残ります。
offこのファセットのヘルスマネージャーは無効です。mongos は、このファセットでヘルスチェックを実行しません。これは、デフォルトの強度レベルです。
たとえば、
dnsヘルスマネージャーファセットを強度レベルcriticalに設定するには、スタートアップ時に以下を実行します。mongos --setParameter 'healthMonitoringIntensities={ values:[ { type:"dns", intensity: "critical"} ] }' Or if using the
setParametercommand in amongoshsession that is connected to a runningmongos:db.adminCommand( { setParameter: 1, healthMonitoringIntensities: { values: [ { type: "dns", intensity: "critical" } ] } } ) } ) setParameterで設定されたパラメーターは再起動後に永続することはありません。詳細については、「setParameter ページ」を参照してください。この設定を永続的にするには、次の例のように
setParameterオプションを使用して mongos コンフィギュレーション ファイルのhealthMonitoringIntensitiesを設定します。setParameter: healthMonitoringIntensities: "{ values:[ { type:\"dns\", intensity: \"critical\"} ] }"
healthMonitoringIntervals型: ドキュメントの配列
このヘルスマネージャーの実行頻度(ミリ秒単位)です。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
healthMonitoringIntervalsはドキュメントの配列valuesを受け取ります。valuesの各ドキュメントは 2 個のフィールドを取ります。type、ヘルスマネージャーファセットinterval、実行の間隔(ミリ秒単位)
ヘルスマネージャー
Facetヘルス オブザーバーがチェックする内容configServerコンフィギュレーションサーバーに対する接続に関連するクラスターの健全性の問題。
dnsDNS の可用性と機能に関連するクラスターの健全性の問題。
ldapLDAP の可用性と機能に関するクラスターの健全性の問題。
たとえば、30 秒ごとにヘルスチェックを実行するように
ldapヘルスマネージャーファセットを設定するには、スタートアップ時に次のコマンドを発行します。mongos --setParameter 'healthMonitoringIntervals={ values:[ { type:"ldap", interval: "30000"} ] }' Or if using the
setParametercommand in amongoshsession that is connected to a runningmongos:db.adminCommand( { setParameter: 1, healthMonitoringIntervals: { values: [ { type: "ldap", interval: "30000" } ] } } ) } ) setParameterで設定されたパラメーターは再起動後に永続することはありません。詳細については、「setParameter ページ」を参照してください。この設定を永続的にするには、次の例のように
setParameterオプションを使用して mongos コンフィギュレーション ファイルのhealthMonitoringIntervalsを設定します。setParameter: healthMonitoringIntervals: "{ values: [{type: \"ldap\", interval: 200}] }"
progressMonitor型: ドキュメント
プログレス モニターは、ヘルスマネージャーのチェックが停止したり、応答しなくなったりしないよう確認するためのテストを実行します。プログレス モニターは、
intervalで指定された間隔でこれらのテストを実行します。ヘルスチェックが開始されたが、deadlineで指定されたタイムアウト内に完了しない場合、プログレス モニターは mongos を停止し、クラスターから削除します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
progressMonitorフィールドフィールド説明単位intervalヘルスマネジャーが、停止したり、応答しなくなったりしないよう確認する頻度。
ミリ秒
deadlineヘルスマネージャーのチェックが進行していない場合に、mongos を自動的に失敗させるまでの中断時間。
秒
intervalを 1000 ミリ秒に設定し、deadlineを 300 秒に設定するには、スタートアップ時に次のコマンドを発行します。mongos --setParameter 'progressMonitor={"interval": 1000, "deadline": 300}' Or if using the
setParametercommand in amongoshsession that is connected to a runningmongos:db.adminCommand( { setParameter: 1, progressMonitor: { interval: 1000, deadline: 300 } ) } ) setParameterで設定されたパラメーターは再起動後に永続することはありません。詳細については、「setParameter ページ」を参照してください。この設定を永続的にするには、次の例のように
setParameterオプションを使用して mongos コンフィギュレーション ファイルのprogressMonitorを設定します。setParameter: progressMonitor: "{ interval: 1000, deadline: 300 }"
ストレージ パラメータ
changeStreamPreImagesSamplePointsPerUUIDバージョン9.0の新機能。
タイプ: 整数
デフォルト: 10
変更ストリームのプレイメージが有効になっている各ユーザーコレクションからMongoDBが抽出するサンプルの数を制御します。最小値は
1です。MongoDB uses these samples to build the initial truncation information that governs pre-image removal. Sampling documents in the pre-images collection can be I/O-intensive if the pre-image data is not cached. The total number of document lookups depends on the number of user collections with pre-images enabled: for each collection with pre-images enabled, MongoDB draws up to
changeStreamPreImagesSamplePointsPerUUIDsamples from the pre-images collection.プリイメージのサンプリングが過剰なI/Oリソースを消費する場合は、この値を下げてI/O使用量を削減してください。値を下げると、初期の切り捨て情報の精度も低下します。つまり、期限切れのプリイメージが予想よりも遅く削除される可能性があります。これは、サンプリング時に既に存在するプリイメージにのみ適用されます。サンプリング後に挿入されたプリイメージには、常に正確な有効期限情報が含まれます。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
changeStreamPreImagesSamplePointsPerUUIDto5:db.adminCommand( { setParameter: 1, changeStreamPreImagesSamplePointsPerUUID: 5 } )
enableAutoCompactionバージョン8.1.0の新機能。
タイプ: ブール値
デフォルト: false
インスタンスが自動でバックグラウンド圧縮を実行するかどうかを指定します。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。次の例では、インスタンスで自動バックグラウンド圧縮を有効にします。
mongod --setParameter "enableAutoCompaction=true"
honorSystemUmaskデフォルト:
falseIf
honorSystemUmaskis set totrue, new files created by MongoDB have permissions in accordance with the user'sumasksettings. You cannot setprocessUmaskifhonorSystemUmaskis set totrue.If
honorSystemUmaskis set tofalse, new files created by MongoDB have permissions set to600, which gives read and write permissions only to the owner. New directories have permissions set to700. You can useprocessUmaskto override the default permissions for groups and other users on all new files created by MongoDB.このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。mongod --setParameter honorSystemUmask=true mongos --setParameter honorSystemUmask=true 注意
honorSystemUmaskは、Windows システムでは使用できません。
journalCommitIntervalジャーナル コミット間のミリ秒数(ms)を表す
1から500までの整数を指定します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
Consider the following example which sets the
journalCommitIntervalto200ms:db.adminCommand( { setParameter: 1, journalCommitInterval: 200 } )
minSnapshotHistoryWindowInSecondsバージョン 5.0 の新機能。
デフォルト:
300storage engine がスナップショット履歴を保持する最小時間枠を秒単位で指定します。
"snapshot"の読み取り保証 (read concern) を使用してデータをクエリし、指定されたminSnapshotHistoryWindowInSecondsよりも前の atClusterTime 値を指定すると、mongodは、SnapshotTooOldエラーを返します。警告
シャーディングされたクラスターでは、コンフィギュレーションサーバーノードのデフォルトの
minSnapshotHistoryWindowInSeconds値を変更すると、内部操作が失敗する可能性があります。コンフィギュレーションサーバーノードで
minSnapshotHistoryWindowInSecondsを0に設定しないでください。 このパラメータを0に設定すると、指定されたatClusterTimeを持つコンフィギュレーションサーバーを対象にsnapshot読み取りを実行している内部操作が失敗します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
(
>=)0 以上の整数を指定します。minSnapshotHistoryWindowInSecondsを600秒に設定する以下の例を考えてみます。db.adminCommand( { setParameter: 1, minSnapshotHistoryWindowInSeconds: 600 } ) 注意
Increasing the value of
minSnapshotHistoryWindowInSecondsincreases disk usage. For more information, see Snapshot History Retention.MongoDB Atlas クラスターのこの値を変更するには、Atlas サポートに問い合わせる必要があります。
processUmaskOverrides the default permissions used for groups and other users when
honorSystemUmaskis set tofalse. By default, whenhonorSystemUmaskis set tofalse, new files created by MongoDB have permissions set to600. Use theprocessUmaskparameter to override this default with a customumaskvalue. The file owner inherits permissions from the systemumask.このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。You cannot set this parameter if
honorSystemUmaskis set totrue.グループと他のユーザーの権限を読み取り/書き込みのみに設定し、所有者のシステム
umask設定を保持する次の例を考えてみます。mongod --setParameter processUmask=011 注意
processUmaskは、Windows システムでは使用できません。
spillPathバージョン8.3の新機能。
デフォルト:
dbPath設定の値。型: string
スピルエンジンがディスクに書き込むときに使用するパス。ディスクスピル操作により同時クエリの IOPS が削減されるリスクがある場合は、これが役立つ場合があります。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
storageEngineConcurrentReadTransactionsバージョン7.0で変更。
タイプ: 整数
ストレージエンジンに許可された同時読み取りトランザクション(読み取りチケット)の最大数を指定します。
注意
バージョン 7.0 以降、MongoDB はチケット数を動的に調整して、パフォーマンスを最適化します(最大値は 128)。
Modifying this value can cause performance issues or errors. To determine if disabling the dynamic concurrent storage engine transactions algorithm is optimal for the cluster, contact MongoDB Support.
MongoDB 7.0 以降では、このパラメーターはすべてのストレージ エンジンで使用できます。以前のバージョンでは、このパラメーターは WiredTiger storage engine でのみ使用できます。
storageEngineConcurrentWriteTransactionsバージョン7.0で変更。
タイプ: 整数
WiredTigerストレージエンジンに許可される同時書込みトランザクションの最大数を指定します。
注意
バージョン 7.0 以降、MongoDB はチケット数を動的に調整して、パフォーマンスを最適化します(最大値は 128)。
Modifying this value can cause performance issues or errors. To determine if disabling the dynamic concurrent storage engine transactions algorithm is optimal for the cluster, contact MongoDB Support.
MongoDB 7.0 以降では、このパラメーターはすべてのストレージ エンジンで使用できます。以前のバージョンでは、このパラメーターは WiredTiger storage engine でのみ使用できます。
syncdelayデフォルト: 60
mongodが作業メモリをディスクにフラッシュする間隔を秒単位で指定します。デフォルトでは、mongodは 60 秒ごとにメモリをディスクにフラッシュします。ほとんどの場合、この値を設定せず、デフォルト設定を使用してください。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
syncdelayを60秒に設定する以下の例を考えてみます。db.adminCommand( { setParameter: 1, syncdelay: 60 } ) 永続的なデータを提供するために、 WiredTigerはチェックポイントを使用します。 詳細については、「ジャーナリングと WiredTiger ストレージ エンジン 」を参照してください。
temporarilyUnavailableBackoffBaseMsデフォルト: 1000
キャッシュの負荷によりロールバックされた書き込み操作を再試行するまでの初期遅延を指定します。
まれに、キャッシュの負荷により書込み (write) が失敗する場合があります。このような状況が発生すると、MongoDB では、
TemporarilyUnavailableエラーを発行し、スロー クエリ ログとフルタイム診断データ取得(FTDC)の 2 か所でtemporarilyUnavailableErrorsカウンターの値を増加させます。マルチドキュメントトランザクション内の個々の操作では、
TemporarilyUnavailableエラーは返されません。Adjust the write retry properties by modifying the
temporarilyUnavailableBackoffBaseMsandtemporarilyUnavailableMaxRetriesparameters.Contact support if you experience any cache pressure issues.
このパラメーターは以下を受け入れます。
値説明integer >= 0デフォルトは 1 秒。再試行間の初期遅延。この値は、再試行のたびに最大 55 秒まで増加します。値を大きくすると、次回の再試行までにキャッシュ負荷が軽減される可能性が高くなります。
To configure number of retries, use
temporarilyUnavailableMaxRetries.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
新しい値を設定するには、
db.adminCommand()を使用します。db.adminCommand( { setParameter: 1, temporarilyUnavailableBackoffBaseMs: 3 } ) バージョン6.1.0の新機能。
temporarilyUnavailableMaxRetriesデフォルト: 10
キャッシュの負荷により書き込み操作がロールバックされた場合の最大再試行回数を指定します。
まれに、キャッシュの負荷により書込み (write) が失敗する場合があります。このような状況が発生すると、MongoDB では、
TemporarilyUnavailableエラーを発行し、スロー クエリ ログとフルタイム診断データ取得(FTDC)の 2 か所でtemporarilyUnavailableErrorsカウンターの値を増加させます。マルチドキュメントトランザクション内の個々の操作では、
TemporarilyUnavailableエラーは返されません。Adjust the write retry properties by modifying the
temporarilyUnavailableBackoffBaseMsandtemporarilyUnavailableMaxRetriesparameters.Contact support if you experience any cache pressure issues.
このパラメーターは以下を受け入れます。
値説明integer >= 0最大再試行回数。
There is an increasing delay between retries. To configure the backoff time, use
temporarilyUnavailableBackoffBaseMs.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
新しい値を設定するには、
db.adminCommand()を使用します。db.adminCommand( { setParameter: 1, temporarilyUnavailableMaxRetries: 5 } ) バージョン6.1.0の新機能。
throughputProbingStallEscalationThresholdバージョン9.0の新機能。
タイプ: 整数
デフォルト: 3
スループットがゼロで、かつチケットを待機している操作が少なくとも1つある状態のスループットプローブ間隔が連続して何回経過した後に、MongoDBが強制的に同時実行数を増やしてストールを解消するかを指定します。このしきい値は、一時的な測定ノイズへの反応を防ぐためのものです。
このパラメーターは以下を受け入れます。
値説明integer >= 1同時実行数を増やす前に経過する必要がある、連続するストール間隔の数。
1の値は、最初に検出された間隔で反応します。0ストールブレーキングを完全に無効にします。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
新しい値を設定するには、
db.adminCommand()を使用します。db.adminCommand( { setParameter: 1, throughputProbingStallEscalationThreshold: 3 } )
upsertMaxRetryAttemptsOnDuplicateKeyErrorバージョン8.1.0の新機能。
upsert操作で重複キー エラーが発生した場合の最大再試行回数。タイプ : 整数
デフォルト: 100
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
重要
MongoDB 8.1 以降では、
upsert操作がマルチドキュメントトランザクションで実行される場合、重複キー エラーが発生してもupsertは再試行しません。次の例では、重複キー エラーが発生したときにサーバーが
upsert操作を再試行する最大回数を50に設定します。mongod --setParameter "upsertMaxRetryAttemptsOnDuplicateKeyError=50" 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, upsertMaxRetryAttemptsOnDuplicateKeyError: 50 } )
WiredTiger パラメータ
wiredTigerConcurrentReadTransactionsタイプ: 整数
ストレージエンジンに許可された同時読み取りトランザクション(読み取りチケット)の最大数を指定します。
注意
バージョン 7.0 以降、MongoDB はチケット数を動的に調整して、パフォーマンスを最適化します(最大値は 128)。
Modifying this value can cause performance issues or errors. To determine if disabling the dynamic concurrent storage engine transactions algorithm is optimal for the cluster, contact MongoDB Support.
MongoDB 7.0 以降では、このパラメーターはすべてのストレージ エンジンで使用できます。以前のバージョンでは、このパラメーターは WiredTiger storage engine でのみ使用できます。
バージョン6.0で変更。
The
wiredTigerConcurrentReadTransactionsparameter was renamed tostorageEngineConcurrentReadTransactions.
wiredTigerConcurrentWriteTransactionsタイプ: 整数
WiredTigerストレージエンジンに許可される同時書込みトランザクションの最大数を指定します。
注意
バージョン 7.0 以降、MongoDB はチケット数を動的に調整して、パフォーマンスを最適化します(最大値は 128)。
Modifying this value can cause performance issues or errors. To determine if disabling the dynamic concurrent storage engine transactions algorithm is optimal for the cluster, contact MongoDB Support.
MongoDB 7.0 以降では、このパラメーターはすべてのストレージ エンジンで使用できます。以前のバージョンでは、このパラメーターは WiredTiger storage engine でのみ使用できます。
バージョン6.0で変更。
The
wiredTigerConcurrentWriteTransactionsparameter was renamed tostorageEngineConcurrentWriteTransactions.
wiredTigerEngineRuntimeConfig実行中の
mongodインスタンスのwiredTigerストレージ エンジン構成オプションを指定します。このパラメーターは実行時にのみ使用できます。 パラメーターを設定するには、
setParameterコマンドを使用します。警告
Avoid modifying the
wiredTigerEngineRuntimeConfigunless under the direction from MongoDB engineers as this setting has major implication across both WiredTiger and MongoDB.次の操作プロトタイプを考慮します。
db.adminCommand({ "setParameter": 1, "wiredTigerEngineRuntimeConfig": "<option>=<setting>,<option>=<setting>" })
wiredTigerFileHandleCloseIdleTimeタイプ: 整数
デフォルト: 600
wiredTiger内のファイル ハンドルが閉じられる前のアイドル状態を維持できる時間を秒単位で指定します。wiredTigerFileHandleCloseIdleTimeを0に設定すると、アイドル状態のハンドルは閉じられません。Tip
このパラメーターは大文字と小文字を区別します。
wiredTigerFileHandleCloseIdleTimeでwを大文字にして パラメータを実行すると、操作は次のエラー メッセージを返します。{ "code":2,"codeName":"BadValue","errmsg":"Unknown --setParameter 'WiredTigerFileHandleCloseIdleTime'" } このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。以下に例を挙げます。
mongod --setParameter wiredTigerFileHandleCloseIdleTime=100000
wiredTigerSessionMaxバージョン8.1の新機能。
型 : 32 ビット整数
デフォルト:33000
WiredTigerによって許可されるセッションの最大数。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
利用可能なすべてのWiredTiger構成オプションについては、WiredTiger のドキュメントを参照してください。
監査パラメータ
auditAuthorizationSuccessタイプ: ブール値
デフォルト: false
注意
MongoDB EnterpriseおよびMongoDB Atlasでのみ利用可能です。
authCheck アクションの承認成功の監査を有効にします。
When
auditAuthorizationSuccessisfalse, the audit system only logs the authorization failures forauthCheck.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
承認成功の監査を有効にするには、次のコマンドを発行します。
db.adminCommand( { setParameter: 1, auditAuthorizationSuccess: true } ) Enabling
auditAuthorizationSuccessdegrades performance more than logging only the authorization failures.If runtime audit configuration is enabled, the
auditAuthorizationSuccessparameter should not appear in themongodormongosconfiguration file. The server will fail to start if the parameter is present.Tip
auditConfigPollingFrequencySecsバージョン 5.0 の新機能。
タイプ: 整数
デフォルト: 300
シャーディングされたクラスターには、クラスターの監査構成設定を維持するサーバーが存在する場合があります。構成されていないサーバーが現在の監査生成についてコンフィギュレーションサーバーをポーリングする間隔を秒単位で設定します。返されたこの値が以前の既知の値と異なる場合、開始ノードは現在の構成をリクエストし、その内部状態をアップデートします。
注意
デフォルト値の 300 秒を使用すると、非 config ノードでは
auditConfigクラスター パラメータを設定してから最大 5 分かかることがあります。このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。
auditEncryptionHeaderMetadataFileバージョン6.0の新機能。
型: string
注意
Available only in MongoDB Enterprise. MongoDB Enterprise and Atlas have different configuration requirements.
監査ログ暗号化用のログ メタデータ監査ヘッダーのパスとファイル名です。ヘッダーは各監査ログ ファイルの上部に配置され、監査ログを解読するためのメタデータが含まれています。ヘッダーも監査ログに保存されます。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。For example, the following sets the path and file for
auditEncryptionHeaderMetadataFile:mongod --setParameter auditEncryptionHeaderMetadataFile=/auditFiles/auditHeadersMetadataFile.log
auditEncryptKeyWithKMIPGetバージョン6.0の新機能。
タイプ: ブール値
デフォルト: false
注意
Available only in MongoDB Enterprise. MongoDB Enterprise and Atlas have different configuration requirements.
KMIP プロトコル バージョン 1.0 または 1.1 のみをサポートする KMIP(キー管理相互運用性プロトコル)サーバーの監査ログ暗号化を有効にします。
このパラメーターは、スタートアップ時にのみ使用できます。パラメーターを設定するには、
setParameter設定を使用します。The following example sets
auditEncryptKeyWithKMIPGettotrue:mongod --setParameter auditEncryptKeyWithKMIPGet=true
トランザクション パラメータ
AbortExpiredTransactionsSessionCheckoutTimeoutバージョン 8.1 の新機能: (8.0.13でも利用可能)
タイプ: 整数
デフォルト : 100 ミリ秒
セッションは、データベース操作を実行するためにセッション プールからチェックアウトされます。
AbortExpiredTransactionsSessionCheckoutTimeoutは、期限切れのトランザクションを終了しようとするときにチェックアウトするセッションの最大数(ミリ秒)を設定します。期限切れのトランザクションが正常に終了すると、 MongoDB は
metrics.abortExpiredTransactions.successfulKillsを増やします。セッションのチェックアウト時にタイムアウトしたためトランザクションが正常に終了しなかった場合、 MongoDB はmetrics.abortExpiredTransactions.timedOutKillsを増分します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、
AbortExpiredTransactionsSessionCheckoutTimeoutを120ミリ秒に設定します。db.adminCommand( { setParameter: 1, AbortExpiredTransactionsSessionCheckoutTimeout: 120 } ) このパラメータは、のスタートアップ時に設定することもできます。(例: )。
mongod --setParameter AbortExpiredTransactionsSessionCheckoutTimeout=120
cachePressureQueryPeriodMillisecondsバージョン8.3の新機能。
タイプ: 整数
デフォルト : 1000 ミリ秒
MongoDB がストレージエンジンキャッシュの負荷をチェックする間で待機する時間間隔。ストレージエンジンがキャッシュ負荷に達している場合、 MongoDB は最も古いトランザクションを中止します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
Contact support if you experience any cache pressure issues.
次の例では、実行時に
cachePressureQueryPeriodMillisecondsを3000ミリ秒に設定します。db.adminCommand( { setParameter: 1, cachePressureQueryPeriodMilliseconds: 3000 } ) このパラメータは、スタートアップ時に設定することもできます 。(例: )。
mongod --setParameter cachePressureQueryPeriodMilliseconds=3000
coordinateCommitReturnImmediatelyAfterPersistingDecisionバージョン 5.0 の新機能。
バージョン 6.1 で更新
タイプ: ブール値
デフォルト: false
falseに設定すると、シャードトランザクションの調整役は、結果をクライアントに返す前に、参加しているすべてのシャードがマルチドキュメントトランザクションをコミットまたはキャンセルするかどうかの決定を確認するまで待機します。trueに設定すると、シャード トランザクションの調整役は、要求されたトランザクションの書込み保証( write concern )で 永続 的な決定が行われるとすぐに、 マルチドキュメントトランザクション をコミットする決定をクライアントに返します。クライアントが
"majority"未満の書込み保証 (write concern) をリクエストした場合、決定がクライアントに返された後にコミットがロールバックされる可能性があります。トランザクションには「書込みの読み取り」整合性がない場合があります。 つまり、読み取り操作では、その前の書込み操作の結果が表示されない場合があります。 これは、次の場合に発生する可能性があります。
トランザクションは複数のシャードに書込み (write) しなければなりません。
読み取りと以前の書込み (write) は、異なるセッションで行われます。
因果整合性は、同じセッション内で発生する読み取りと書き込みの因果関係のみを保証します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、
coordinateCommitReturnImmediatelyAfterPersistingDecisionにtrueを設定します。mongod --setParameter coordinateCommitReturnImmediatelyAfterPersistingDecision=true 次のように、実行中に
setParameterコマンドを使用してパラメーターを設定することもできます。db.adminCommand( { setParameter: 1, coordinateCommitReturnImmediatelyAfterPersistingDecision: true } )
internalSessionsReapThresholdバージョン6.0の新機能。
デフォルト: 1000
内部セッション メタデータ削除に関するセッション制限です。メタデータ:
ユーザー操作のセッション トランザクション情報が含まれています。
config.transactionsコレクションに保存されている場合
When the number of internal sessions is greater than
internalSessionsReapThreshold, the metadata is deleted.If you set
internalSessionsReapThresholdto0, the internal session metadata is only deleted when the user session ends.このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following example sets
internalSessionsReapThresholdto500sessions:db.adminCommand( { setParameter: 1, internalSessionsReapThreshold: 500 } ) You can also set
internalSessionsReapThresholdat startup. For example:mongod --setParameter internalSessionsReapThreshold=500
maxConcurrentMultiDocumentTransactionsバージョン 9.0 の新機能: (8.3.7でも利用可能)
タイプ: 整数
デフォルト: 10000
サーバーが外部クライアントに対して一度に許可する、同時に開くことができるマルチドキュメントトランザクションの最大数。この制限に達すると、サーバーは外部クライアントからの新しいマルチドキュメントトランザクションを拒否し、
TooManyOpenTransactionsエラーを返します。開いているトランザクションの数はサーバー全体でカウントされます。プロセス内部のトランザクションは拒否の対象外ですが、サーバーが外部クライアントに対して制限を強制する場合、合計数にはカウントされます。
同時実行されるマルチドキュメントトランザクションの数を制限することで、アイドル状態のトランザクションが多数発生し、システムパフォーマンスが低下するのを防ぐことができます。
制限を無効にするには、このパラメータを
0に設定します。最小値は0です。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の例では、実行時に
maxConcurrentMultiDocumentTransactionsに5000を設定します。db.adminCommand( { setParameter: 1, maxConcurrentMultiDocumentTransactions: 5000 } ) このパラメータは、スタートアップ時に設定することもできます 。(例: )。
mongod --setParameter maxConcurrentMultiDocumentTransactions=5000
transactionLifetimeLimitSecondsデフォルト: 60
Specifies the lifetime of multi-document transactions. Transactions that exceed this limit are considered expired and will be aborted by a periodic cleanup process. The cleanup process runs every
transactionLifetimeLimitSeconds/2 seconds or at least once every 60 seconds.クリーンアップ プロセスは、ストレージ キャッシュの負荷軽減に役立ちます。
transactionLifetimeLimitSeconds の最小値は
1秒です。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following sets the
transactionLifetimeLimitSecondsto30seconds:db.adminCommand( { setParameter: 1, transactionLifetimeLimitSeconds: 30 } ) You can also set parameter
transactionLifetimeLimitSecondsat startup time.mongod --setParameter "transactionLifetimeLimitSeconds=30" シャーディングされたクラスターのパラメーターを設定するには、すべてのシャード レプリカセットのノード パラメーターを変更する必要があります。
Starting in MongoDB 5.0, if you change the
transactionLifetimeLimitSecondsparameter, you must also changetransactionLifetimeLimitSecondsto the same value on all config server replica set members. Keeping this value consistent:ルーティング テーブルの履歴が、少なくともシャード レプリカセット ノードのトランザクション ライフタイム制限と同じ期間保持されるよう確認します。
トランザクションの再試行頻度を減らし、パフォーマンスを向上させます。
transactionTooLargeForCacheThresholdバージョン6.2の新機能。
タイプ: 10 進数
デフォルト: 0.75
キャッシュの負荷により失敗したトランザクションを再試行するためのしきい値。この値は、ダーティ キャッシュ サイズに対する割合。デフォルト値の
0.75は、ダーティ キャッシュの 75% を意味します。ダーティ キャッシュは合計キャッシュ サイズの 20% に制限されます。
transactionTooLargeForCacheThresholdを0.75に設定すると、サーバは、storage engine キャッシュの合計の 15%(0.75 * 20%)未満を使用するトランザクションのみを再試行します。この制限は再試行にのみ適用されます。大規模なトランザクションでは、ダーティ キャッシュの
transactionTooLargeForCacheThreshold% 以上を使用することができます。ただし、キャッシュの負荷により大規模なトランザクションがロールバックされた場合、サーバーはTransactionTooLargeForCacheエラーを発行し、トランザクションを再試行しません。この動作を無効にするには、
transactionTooLargeForCacheThresholdを1.0に設定します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
Contact support if you experience any cache pressure issues.
WiredTiger ストレージの詳細については、「
storage.wiredTigerオプション」を参照してください。
maxTransactionLockRequestTimeoutMillisタイプ: 整数
デフォルト: 5
マルチドキュメントトランザクションがトランザクション内の操作に必要なロックを取得するために待機する最大時間(ミリ秒単位)。
If the transaction cannot acquire the locks after waiting
maxTransactionLockRequestTimeoutMillis, the transaction aborts.By default, multi-document transactions wait
5milliseconds. That is, if the transaction cannot acquire the locks within5milliseconds, the transaction aborts. If an operation provides a greater timeout in a lock request,maxTransactionLockRequestTimeoutMillisoverrides the operation-specific timeout.You can set
maxTransactionLockRequestTimeoutMillisto:0この場合、トランザクションが必要なロックをすぐに取得できないと、トランザクションは中止されます。必要なロックを取得するために指定された時間待機するには、
0より大きい数値を指定します。これにより、高速に実行されているメタデータ操作など、一時的な同時ロック取得でトランザクションが中断されるのを防ぐことができます。ただし、これにより、デッドロックしたトランザクション操作の中止が遅れる可能性があります。-1、操作固有のタイムアウトを使用します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following sets the
maxTransactionLockRequestTimeoutMillisto20milliseconds:db.adminCommand( { setParameter: 1, maxTransactionLockRequestTimeoutMillis: 20 } ) このパラメータは、起動時に設定することもできます。
mongod --setParameter maxTransactionLockRequestTimeoutMillis=20
スロットベースの実行パラメーター
planCacheSizeバージョン6.3の新機能。
型: string
デフォルト: 5%
注意
planCacheSizeパラメーターは MongoDB の以前のバージョンにも存在していましたが、バージョン 6.3 まではプラン キャッシュには影響がありませんでした。プラン キャッシュのサイズをスロットベースのクエリ実行エンジンのみに設定します。
You can set the
planCacheSizevalue to either:プラン キャッシュに割り当てるシステムの合計物理メモリの割合。たとえば、
"8.5%"。MBまたはGBのいずれかのプラン キャッシュに割り当てる正確なデータ量。たとえば、"100MB"や"1GB"など。
プラン キャッシュ サイズを増やすと、 クエリ プランナー にキャッシュされた プラン キャッシュ クエリシェイプ が増えます。これによりクエリのパフォーマンスは向上しますが、メモリ使用量が増加します。
このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
The following startup command sets
planCacheSizeto 80 megabytes:mongod --setParameter planCacheSize="80MB" You can also use the
setParametercommand within the MongoDB Shell:db.adminCommand( { setParameter: 1, planCacheSize: "80MB" } )
Database Profiler Parameters
internalQueryGlobalProfilingLockDeadlineMsタイプ : 整数
デフォルト: 1
profileコレクションへの書込みを実行する前に、ロック取得を待機する最大時間(ミリ秒)。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次の コマンドは、実行時に
internalQueryGlobalProfilingLockDeadlineMsを100ミリ秒に設定します。db.adminCommand( { setParameter: 1, internalQueryGlobalProfilingLockDeadlineMs: 100 } ) 次の コマンドは、スタートアップ時に
internalQueryGlobalProfilingLockDeadlineMsを100ミリ秒に設定します。mongod --setParameter internalQueryGlobalProfilingLockDeadlineMs=100
internalProfilingMaxAbandonedWritesPerSecondPerDbタイプ : 整数
デフォルト: 1000
profileコレクションへの書き込みを試行する際の、1 秒あたりの最大ロックタイムアウト数を指定します。このしきい値に達すると、このデータベースのプロファイリングは無効になります。この設定は、プロファイリングを手動で有効にするまで残ります。値は
0になる可能性があります。これは、1 つのロックタイムアウトによりデータベースのプロファイリングが無効になることを意味します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次のコマンドは、実行時に
internalProfilingMaxAbandonedWritesPerSecondPerDbを2000に設定します。db.adminCommand( { setParameter: 1, internalProfilingMaxAbandonedWritesPerSecondPerDb: 2000 } ) 次のコマンドは、スタートアップ時に
internalProfilingMaxAbandonedWritesPerSecondPerDbを2000に設定します。mongod --setParameter internalProfilingMaxAbandonedWritesPerSecondPerDb=2000
クエリ統計パラメータ
internalQueryStatsSampleRate型: float
デフォルト: 0.01
バージョン9.0で変更。
MongoDB が
$queryStatsのサンプルを取得する読み取り操作の割合。値は0.0から1.0までの範囲でなければなりません。すべての読み取り操作をサンプルするには、値を1.0に設定します。読み取り操作のサンプリングを停止するには、値を0に設定します。MongoDB 9.0 では、デフォルト値が
0から0.01に変更されます。これにより、読み取り操作のクエリ統計のコレクションがデフォルトのサンプリングレート 1% で有効になります。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次のコマンドは、実行時に
internalQueryStatsSampleRateを0.05に設定します。db.adminCommand( { setParameter: 1, internalQueryStatsSampleRate: 0.05 } ) 次のコマンドは、スタートアップ時に
internalQueryStatsSampleRateを0.05に設定します。mongod --setParameter internalQueryStatsSampleRate=0.05
internalQueryStatsWriteCmdSampleRate型: float
デフォルト: 0.01
バージョン9.0の新機能。
MongoDBが
$queryStatsのためにサンプルする書き込み (write)操作の割合。値は0.0から1.0の間である必要があります。すべての書き込み (write)操作をサンプルするには、値を1.0に設定します。書き込み (write)操作のサンプリングを停止するには、値を0に設定します。このパラメーターは、実行時とスタートアップ時に両方で使用できます。
実行時にパラメータを設定するには、
setParameterコマンドを使用します。スタートアップ時に パラメータを設定するには、
setParameter設定を使用します。
次のコマンドは、実行時に
internalQueryStatsWriteCmdSampleRateを0.05に設定します。db.adminCommand( { setParameter: 1, internalQueryStatsWriteCmdSampleRate: 0.05 } ) 次のコマンドは、スタートアップ時に
internalQueryStatsWriteCmdSampleRateを0.05に設定します。mongod --setParameter internalQueryStatsWriteCmdSampleRate=0.05