文档

MongoDB 4.2版本开放参数一览表

更新时间:

您可以在这里了解到截止到文档更新时间云数据库MongoDB 4.2所有已开放的参数信息。

副本集

参数名称

是否需要重启生效

默认值

取值范围

小版本范围

说明

官方文档

net.compression.compressors

snappy,zstd,zlib

[snappy|zlib|zstd|snappy,zstd,zlib|disabled]

无限制

设置mongod或mongos的网络压缩算法。选择多个压缩算法时,表示按优先级降序。

net.compression.compressors

net.serviceExecutor

synchronous

[synchronous|adaptive]

无限制

决定mongod或mongos使用的线程和执行模型。

net.serviceExecutor

operationProfiling.mode

off

[off|slowOp|all]

无限制

指定查询分析器的级别。

operationProfiling.mode

operationProfiling.slowOpThresholdMs

100

[0-65536]

无限制

慢操作时间阈值,运行时间超过此阈值的操作被认为是慢操作,单位为毫秒。

operationProfiling.slowOpThresholdMs

replication.enableMajorityReadConcern

true

[true|false]

无限制

是否开启majority read concern支持。

replication.enableMajorityReadConcern

replication.oplogGlobalIdEnabled

false

[true|false]

无限制

是否开启GID来支持DTS或mongoShake的双向同步。

自研参数

replication.oplogSizeMB

10%

[1024-1073741824]

无限制

oplog表的最大值,单位为MB。默认为磁盘规格大小的10%。

replication.oplogSizeMB

rsconf.writeConcernMajorityJournalDefault

true

[true|false]

无限制

write concern为majority时是否要求journal已持久化。

replSetGetConfig

setParameter.cursorTimeoutMillis

600000

[1-2147483647]

无限制

空闲游标的到期阈值,单位为毫秒。

如果游标的空闲时间超过该阈值,MongoDB将会删除该游标,再次尝试访问该游标会报错“cursor not found”。

cursorTimeoutMillis

setParameter.flowControlTargetLagSeconds

10

[1-600]

无限制

flowControl机制触发的阈值,单位为秒。flowControl的目的是确保大多数提交点不会落后太多。

flowControlTargetLagSeconds

setParameter.internalQueryExecMaxBlockingSortBytes

33554432

[33554432-268435456]

无限制

排序阶段可能使用的最大内存,单位为字节。默认值折合为32 MB。

未公开

setParameter.maxTransactionLockRequestTimeoutMillis

5

[0-60]

无限制

事务加锁的超时时间,单位为毫秒。

maxTransactionLockRequestTimeoutMillis

setParameter.replWriterThreadCount

16

[1-256]

无限制

主从同步中并行复制的最大线程数。实际生效的最大线程数为规格CPU核数的2倍。

replWriterThreadCount

setParameter.tcmallocAggressiveMemoryDecommit

0

[0|1]

无限制

是否开启tcmalloc激进内存回收,默认0代表关闭。

tcmallocAggressiveMemoryDecommit

setParameter.tcmallocReleaseRate

1

[1-10]

无限制

设置tcmalloc释放内存给OS的速率(越高越快)。

tcmallocReleaseRate

setParameter.transactionLifetimeLimitSeconds

60

[1-300]

无限制

事务总超时时间,表示事务的生命周期,单位为秒。执行时长超过此限制的事务会被abort掉来缓解wt cache的压力。

transactionLifetimeLimitSeconds

storage.wiredTiger.collectionConfig.blockCompressor

snappy

[snappy|zlib|zstd|none]

无限制

设置集合数据的存储压缩算法(修改后仅对所有的新建表生效)。如果想针对不同的表使用不同的压缩算法,需要使用带相关选项的显式createCollection命令。

storage.wiredTiger.collectionConfig.blockCompressor

分片集群(Shard)

参数名称

是否需要重启生效

默认值

取值范围

小版本范围

说明

官方文档

net.compression.compressors

snappy,zstd,zlib

[snappy|zlib|zstd|snappy,zstd,zlib|disabled]

无限制

设置mongod或mongos的网络压缩算法。选择多个压缩算法时,表示按优先级降序。

net.compression.compressors

net.serviceExecutor

synchronous

[synchronous|adaptive]

无限制

决定mongod或mongos使用的线程和执行模型。

net.serviceExecutor

operationProfiling.mode

off

[off|slowOp|all]

无限制

指定查询分析器的级别。

operationProfiling.mode

operationProfiling.slowOpThresholdMs

100

[0-65536]

无限制

慢操作时间阈值,运行时间超过此阈值的操作被认为是慢操作,单位为毫秒。

operationProfiling.slowOpThresholdMs

replication.enableMajorityReadConcern

true

[true|false]

无限制

是否开启majority read concern支持。

replication.enableMajorityReadConcern

replication.oplogGlobalIdEnabled

false

[true|false]

无限制

是否开启GID来支持DTS或mongoShake的双向同步。

自研参数

replication.oplogSizeMB

10%

[1024-1073741824]

无限制

oplog表的最大值,单位为MB。默认为磁盘规格大小的10%。

replication.oplogSizeMB

rsconf.writeConcernMajorityJournalDefault

true

[true|false]

无限制

write concern为majority时是否要求journal已持久化。

replSetGetConfig

setParameter.cursorTimeoutMillis

600000

[1-2147483647]

无限制

空闲游标的到期阈值,单位为毫秒。

如果游标的空闲时间超过该阈值,MongoDB将会删除该游标,再次尝试访问该游标会报错“cursor not found”。

cursorTimeoutMillis

setParameter.flowControlTargetLagSeconds

10

[1-600]

无限制

flowControl机制触发的阈值,单位为秒。flowControl的目的是确保大多数提交点不会落后太多。

flowControlTargetLagSeconds

setParameter.internalQueryExecMaxBlockingSortBytes

33554432

[33554432-268435456]

无限制

排序阶段可能使用的最大内存,单位为字节。默认值折合为32 MB。

未公开

setParameter.maxTransactionLockRequestTimeoutMillis

5

[0-60]

无限制

事务加锁的超时时间,单位为毫秒。

maxTransactionLockRequestTimeoutMillis

setParameter.replWriterThreadCount

16

[1-256]

无限制

主从同步中并行复制的最大线程数。实际生效的最大线程数为规格CPU核数的2倍。

replWriterThreadCount

setParameter.tcmallocAggressiveMemoryDecommit

0

[0|1]

无限制

是否开启tcmalloc激进内存回收,默认0代表关闭。

tcmallocAggressiveMemoryDecommit

setParameter.tcmallocReleaseRate

1

[1-10]

无限制

设置tcmalloc释放内存给OS的速率(越高越快)。

tcmallocReleaseRate

setParameter.transactionLifetimeLimitSeconds

60

[1-300]

无限制

事务总超时时间,代表了事务的生命周期,单位为秒。执行时长超过此限制的事务会被abort掉来缓解wt cache的压力。

transactionLifetimeLimitSeconds

storage.wiredTiger.collectionConfig.blockCompressor

snappy

[snappy|zlib|zstd|none]

无限制

设置集合数据的存储压缩算法(修改后仅对所有的新建表生效)。如果想针对不同的表使用不同的压缩算法,需要使用带相关选项的显式createCollection命令。

storage.wiredTiger.collectionConfig.blockCompressor

setParameter.migrateCloneInsertionBatchSize

0

[0-1000]

无限制

chunk迁移时克隆步骤中单个批次的最大文档数量,默认0代表仅受到16MB文档大小限制。

migrateCloneInsertionBatchSize

setParameter.rangeDeleterBatchDelayMS

20

[0-600000]

无限制

chunk迁移时清理步骤中批量删除的间隔时间,单位为毫秒(也影响清理孤立文档的cleanupOrphaned命令)。

rangeDeleterBatchDelayMS

setParameter.rangeDeleterBatchSize

0

[0-1000]

无限制

chunk迁移时清理步骤中批量异步删除单个批次的最大文档数量,默认0代表自动选择合理的批次大小,一般为128。

rangeDeleterBatchSize

分片集群(Mongos)

参数名称

是否需要重启生效

默认值

取值范围

小版本范围

说明

官方文档

net.compression.compressors

snappy,zstd,zlib

[snappy|zlib|zstd|snappy,zstd,zlib|disabled]

无限制

设置mongod或mongos的网络压缩算法。选择多个压缩算法时,表示按优先级降序。

net.compression.compressors

net.serviceExecutor

synchronous

[synchronous|adaptive]

无限制

决定mongod或mongos使用的线程和执行模型。

net.serviceExecutor

operationProfiling.slowOpThresholdMs

100

[0-65536]

无限制

慢操作时间阈值,运行时间超过此阈值的操作被认为是慢操作,单位为毫秒。

operationProfiling.slowOpThresholdMs

setParameter.cursorTimeoutMillis

600000

[1-2147483647]

无限制

空闲游标的到期阈值,单位为毫秒。如果游标的空闲时间超过该阈值,MongoDB将会删除该游标,再次尝试访问该游标会报错“cursor not found”。

cursorTimeoutMillis

setParameter.ShardingTaskExecutorPoolHostTimeoutMS

300000

[60000-3600000]

无限制

mongos放弃与主机TaskExecutor连接池所有连接的超时时间。

ShardingTaskExecutorPoolHostTimeoutMS

setParameter.ShardingTaskExecutorPoolMaxConnecting

2

[1-32]

无限制

分片实例TaskExecutor连接池初始化连接时的最大并发度。用来控制mongos到mongod的连接建立速度。

ShardingTaskExecutorPoolMaxConnecting

setParameter.ShardingTaskExecutorPoolMaxSize

32767

[1-32767]

无限制

分片实例每个TaskExecutor连接池的最大连接数。

ShardingTaskExecutorPoolMaxSize

setParameter.ShardingTaskExecutorPoolMinSize

1

[1-256]

无限制

分片实例每个TaskExecutor连接池的最小连接数。

ShardingTaskExecutorPoolMinSize

setParameter.ShardingTaskExecutorPoolRefreshRequirementMS

60000

[30000-3600000]

无限制

mongos对TaskExecutor连接池中休眠连接进行心跳检测的间隔时间。

ShardingTaskExecutorPoolRefreshRequirementMS

setParameter.ShardingTaskExecutorPoolRefreshTimeoutMS

20000

[5000-600000]

无限制

mongos等待心跳的超时时间。

ShardingTaskExecutorPoolRefreshTimeoutMS

setParameter.taskExecutorPoolSize

1

[1-32]

无限制

mongos上TaskExecutor连接池的个数(Linux系统下调整无效)。

taskExecutorPoolSize

setParameter.tcmallocAggressiveMemoryDecommit

0

[0|1]

无限制

是否开启tcmalloc激进内存回收,默认0代表关闭。

tcmallocAggressiveMemoryDecommit

setParameter.tcmallocReleaseRate

1

[1-10]

无限制

设置tcmalloc释放内存给OS的速率(越高越快)。

tcmallocReleaseRate

分片集群(ConfigServer)

参数名称

是否需要重启生效

默认值

取值范围

小版本范围

说明

官方文档

net.compression.compressors

snappy,zstd,zlib

[snappy|zlib|zstd|snappy,zstd,zlib|disabled]

无限制

设置mongod或mongos的网络压缩算法。选择多个压缩算法时,表示按优先级降序。

net.compression.compressors

operationProfiling.mode

off

[off|slowOp|all]

无限制

指定查询分析器的级别。

operationProfiling.mode

operationProfiling.slowOpThresholdMs

100

[0-65536]

无限制

慢操作时间阈值,运行时间超过此阈值的操作被认为是慢操作,单位为毫秒。

operationProfiling.slowOpThresholdMs

replication.oplogGlobalIdEnabled

false

[true|false]

无限制

是否开启GID来支持DTS或mongoShake的双向同步。

自研参数

setParameter.cursorTimeoutMillis

600000

[1-2147483647]

无限制

空闲游标的到期阈值,单位为毫秒。如果游标的空闲时间超过该阈值,MongoDB将会删除该游标,再次尝试访问该游标会报错“cursor not found”。

cursorTimeoutMillis

storage.wiredTiger.collectionConfig.blockCompressor

snappy

[snappy|zlib|zstd|none]

无限制

设置集合数据的存储压缩算法(修改后仅对所有的新建表生效)。如果想针对不同的表使用不同的压缩算法,需要使用带相关选项的显式createCollection命令。

storage.wiredTiger.collectionConfig.blockCompressor