mongd配置文件解释

系统日志配置

systemLog:
verbosity: <int>
quiet: <boolean>
traceAllExceptions: <boolean>
syslogFacility: <string>
path: <string>
logAppend: <boolean>
logRotate: <string>
destination: <string>
timeStampFormat: <string>
component:
accessControl:
verbosity: <int>
command:
verbosity: <int>
  • verbosity:日志级别,默认是0,可选参数[1-5]。
  • quiet: 是否以静默的方式输出日志,不推荐用于生产系统,因为它可能会使特定连接期间的跟踪问题变得更加困难。
  • traceAllExceptions: 打印详细信息进行排错。
  • syslogFacility:默认是user,系统将日志打入到syslog的设备级别。需要启用--syslog选项。
  • path:指定日志存放路径。
  • logAppend:当为true时,重启后log会追加到现有log文件中,默认是false,每次重启都会创建新的文件。
  • logRotate:日志回滚方式,默认是rename,重命名日志,可以设置reopen,如果设置reopen,则按照linux的方式来轮询,reopen需要和logappend=True 一起使用。
  • destination:输出日志的方式,是文件还是syslog.
  • timeStampFormat: 日志时间格式,默认是本地时间(iso8601-local),可选:iso8601-utc,ctime。
processManagement:
fork: <boolean>
pidFilePath: <string>
  • fork: 是否以守护进程方式运行
  • pidFilePath: PID文件的位置

网络选项

net:
port: <int>
bindIp: <string>
maxIncomingConnections: <int>
wireObjectCheck: <boolean>
ipv6: <boolean>
unixDomainSocket:
enabled: <boolean>
pathPrefix: <string>
filePermissions: <int>
http:
enabled: <boolean>
JSONPEnabled: <boolean>
RESTInterfaceEnabled: <boolean>
ssl:
sslOnNormalPorts: <boolean> # deprecated since 2.6
mode: <string>
PEMKeyFile: <string>
PEMKeyPassword: <string>
clusterFile: <string>
clusterPassword: <string>
CAFile: <string>
CRLFile: <string>
allowConnectionsWithoutCertificates: <boolean>
allowInvalidCertificates: <boolean>
allowInvalidHostnames: <boolean>
disabledProtocols: <string>
FIPSMode: <boolean>
compression:
compressors: <string>
  • net.port:监听端口
  • net.bindIp:监控ip
  • net.maxIncomingConnections:最大连接数限制,默认是65535
  • net.wireObjectCheck:默认为true,检查客户端传入的BSON数据是否正常。
  • net.ipv6:是否启用IPv6 默认是false。
  • net.unixDomainSocket.enabled:是否启用网络套接字连接,默认是true。
  • net.unixDomainSocket.pathPrefix:套接字存放路径。默认/tmp
  • net.unixDomainSocket.filePermissions:套接字文件的权限,默认是0700.
  • net.http:确保生产环境中的HTTP状态接口,REST API和JSON API都被禁用,以防止潜在的数据暴露和攻击者的漏洞。
  • net.http.enabled: 默认是false,从3.2版本开始已经弃用。
  • net.http.JSONPEnabled:通过HTTP接口启用或禁用JSONP访问,从3.2版本开始已经弃用。
  • net.http.RESTInterfaceEnabled: 启用或禁用简单的REST API。从3.2版本开始已经弃用。
  • net.ssl:主要配置ssl参数信息。
  • net.compression.compressors: 是否启用网络压缩。

安全设置

security:
keyFile: <string>
clusterAuthMode: <string>
authorization: <string>
transitionToAuth: <boolean>
javascriptEnabled: <boolean>
redactClientLogData: <boolean>
sasl:
hostName: <string>
serviceName: <string>
saslauthdSocketPath: <string>
enableEncryption: <boolean>
encryptionCipherMode: <string>
encryptionKeyFile: <string>
kmip:
keyIdentifier: <string>
rotateMasterKey: <boolean>
serverName: <string>
port: <string>
clientCertificateFile: <string>
clientCertificatePassword: <string>
serverCAFile: <string>
ldap:
servers: <string>
bind:
method: <string>
saslMechanism: <string>
queryUser: <string>
queryPassword: <string>
useOSDefaults: <boolean>
transportSecurity: <string>
timeoutMS: <int>
userToDNMapping: <string>
authz:
queryTemplate: <string>
  • security.authorization:默认disable,是否启用权限验证。
setParameter:
<parameter1>: <value1>
<parameter2>: <value2>
  • setParameter:设置mongodb中的参数来描述。

引擎方面的认证

mongod引擎分为三种:mmapv1,wiredTiger,inMemory.

storage:
dbPath: <string>
indexBuildRetry: <boolean>
repairPath: <string>
journal:
enabled: <boolean>
commitIntervalMs: <num>
directoryPerDB: <boolean>
syncPeriodSecs: <int>
engine: <string>
mmapv1:
preallocDataFiles: <boolean>
nsSize: <int>
quota:
enforced: <boolean>
maxFilesPerDB: <int>
smallFiles: <boolean>
journal:
debugFlags: <int>
commitIntervalMs: <num>
wiredTiger:
engineConfig:
cacheSizeGB: <number>
journalCompressor: <string>
directoryForIndexes: <boolean>
collectionConfig:
blockCompressor: <string>
indexConfig:
prefixCompression: <boolean>
inMemory:
engineConfig:
inMemorySizeGB: <number>
  • storage.dbPath: 数据文件存放位置。

  • storage.indexBuildRetry:默认是True。是否在下次启动时重建不完整的索引。这种情况适用于在索引生成中间关闭或停止后mongod重新启动的情况。在这种情况下,mongod总是删除任何不完整的索引,然后,默认情况下,尝试重建它们。要阻止mongod重建索引,请将此选项设置为false。

  • storage.repairPath:存放 --repair的临时文件,使用完成后,删除,只能用于mongod。

  • storage.journal.enabled:是否启用二进制日志。64位系统时,默认为True.

  • storage.journal.commitIntervalMs: 进程在日志操作之间允许的最大时间,默认是100毫秒,或30毫秒

  • storage.directoryPerDB: 默认为false,为true时,使用单独的目录存放数据库,目录位于storage.dbPath目录下,每个子目录名称对应于数据库名称。

  • storage.syncPeriodSecs: 数据sync刷新到磁盘的时间间隔,默认60,设置为0时,则不会刷新到硬盘。

  • storage.engine:存储引擎,默认:wiredTiger

  • storage.mmapv1.preallocDataFiles:是否启用预分配文件,默认是True.

  • storage.mmapv1.nsSize: 默认16,命名空间文件的默认大小,它们是以.ns结尾的文件。每个集合和索引都将计算为一个命名空间。对现有文件没有影响。16M大概可以存放24,000个命名空间。

  • storage.mmapv1.quota.enforced: 启用或禁用每个数据库可以拥有的数字数据文件的最大限制。当使用storage.mmapv1.quota.enforced选项运行时,MongoDB每个数据库最多有8个数据文件。使用storage.quota.maxFilesPerDB调整配额。

  • storage.mmapv1.quota.maxFilesPerDB: 每个数据库的数据文件数量的限制。 默认是8.

  • storage.mmapv1.smallFiles: MongoDB使用较小的默认文件大小。默认false。

  • storage.mmapv1.journal.debugFlags:提供测试功能。不适用于一般情况,并会在系统异常关机的情况下影响数据文件的完整性

  • storage.mmapv1.journal.commitIntervalMs: 3.2开始不建议使用。

  • storage.wiredTiger.engineConfig.cacheSizeGB:WiredTiger将用于所有数据的内部缓存的最大大小。最大:一半内存减1G,或者256M。不推荐超过最大设置。

  • storage.wiredTiger.engineConfig.journalCompressor: 压缩WiredTiger日志数据的压缩类型。none, snappy, zlib。

  • storage.wiredTiger.engineConfig.directoryForIndexes:默认为false,当为True时,会在子目录中创建一个index文件夹存放索引。可以通过快捷方式将索引文件移走。

  • storage.wiredTiger.collectionConfig.blockCompressor: 数据压缩格式:none, snappy, zlib。

  • storage.wiredTiger.indexConfig.prefixCompression: 启用或禁用索引数据的前缀压缩。默认为True。

  • storage.inMemory.engineConfig.inMemorySizeGB:内存存储引擎数据分配的最大内存量,默认为:一半内存减1G。

慢查询设置

operationProfiling:
slowOpThresholdMs: <int>
mode: <string>
  • operationProfiling.slowOpThresholdMs: 数据分析器,记录慢查询,默认100ms
  • operationProfiling.mode: 默认关闭,记录级别。slowOp,只记录慢查询,all记录索引值。

复制选项设置

replication:
oplogSizeMB: <int>
replSetName: <string>
secondaryIndexPrefetch: <string>
enableMajorityReadConcern: <boolean>
  • replication.oplogSizeMB: 复制操作日志的最大大小,oplog默认占用磁盘5%最好。
  • replication.replSetName: 副本集的名字。
  • replication.secondaryIndexPrefetch: 只适用于mmapv1引擎,默认参数:all 在从oplog应用操作之前,二进制文件将与操作相关的所有索引加载到内存中。
  • replication.enableMajorityReadConcern: 启用阅读关注级别的“多数”。默认false。

分片配置

sharding:
clusterRole: <string>
archiveMovedChunks: <boolean>
  • sharding.clusterRole:角色定义:configsvr:配置服务器,shardsvr:分片服务器。
  • sharding.archiveMovedChunks: 默认是false,在块迁移期间,分片不会保存从分片移出的文档。

mongos参数

replication:
localPingThresholdMs: <int> sharding:
configDB: <string>
  • replication.localPingThresholdMs: 默认15ms,ping值每10s更新一次,mongos将客户端请求转发给延迟较小的secondary节点。
  • sharding.configDB:用来配置config服务器的列表。

官方文档对配置的解释

mongd配置文件解释的更多相关文章

  1. [分享] 封装工具ES4配置文件解释

    [分享] 封装工具ES4配置文件解释 LiQiang 发表于 2015-2-3 14:41:21 https://www.itsk.com/thread-346132-1-4.html [分享] 封装 ...

  2. Linux系统 /etc目录下主要配置文件解释

    这些都是比较有实用性的系统配置,收藏下,以备不时之需!以下是etc下重要配置文件解释: 1./etc/hosts  #文件格式: IPaddress hostname aliases #文件功能: 提 ...

  3. springmvc 注解 配置文件解释

    概述 继 Spring 2.0 对 Spring MVC 进行重大升级后,Spring 2.5 又为 Spring MVC 引入了注解驱动功能.现在你无须让 Controller 继承任何接口,无需在 ...

  4. redis 配置文件解释 以及集群部署

    redis是一款开源的.高性能的键-值存储(key-value store),和memcached类似,redis常被称作是一款key-value内存存储系统或者内存数据库,同时由于它支持丰富的数据结 ...

  5. redis的配置文件解释

    redis的守护进行 守护进程(Daemon Process),也就是通常说的 Daemon 进程(精灵进程),是 Linux 中的后台服务进程.它是一个生存期较长的进程,通常独立 于控制终端并且周期 ...

  6. 【log4net】配置文件解释

    ASP.NET MVC 1.web.config: <configSections> <section name="log4net" type="log ...

  7. mongodb 配置文件解释(转)

    Mongodb 3.x配置说明,本文内容忽略了Enterprise版和一些不常用的配置. 一.配置说明 在Mongod安装包中,包含2个进程启动文件:mongod和mongos:其中mongd是核心基 ...

  8. Hibernate配置文件解释

    Hibernate配置文件主要用于配置数据库连接和Hibernate运行时所需的各种属性每个Hibernate配置文件对应一个Configuration对象Hibernate配置文件可以有两种格式: ...

  9. httpd2.4.6配置文件解释说明

    本文httpd版本为:2.4.6 ServerRoot 先来看一下httpd.conf配置文件中的ServerRoot默认定义: # cat /etc/httpd/conf/httpd.conf |e ...

随机推荐

  1. var、let、const的区别,以及作用范围。

    在es5中一般经常使用的变量有两个级别,一个是用var声明的全局级别的变量,另外一个是函数级别是用var生命在函数内的.本文中将详细讲解我对es6中的const和let的区别. let的使用以及作用范 ...

  2. EF 查询数据不读取缓存的解决办法

    EF查询(不使用缓存):Set<T>().AsNoTracking() 今天工作中发现一个很妖的问题,修改产品界面,修改数据后,数据库的值发生变化,感觉掉坑里了. 然后发现读取对象的方法是 ...

  3. 【10】Quartz.net 定时服务实例

    一.安装nuget包 Install-Package Quartz Install-Package Common.Logging.Log4Net1211 Install-Package log4net ...

  4. docker 安装ElasticSearch 6.x

    首先是拉去镜像(或者直接创建容器自然会拉去) docker pull elasticsearch:6.5.4 创建容器 docker run --name elasticsearch --net ho ...

  5. 基于Github搭建SrpingCloudConfig详解

    最近在看SpringCloud,为了帮助自己学习和记忆,所以写下这篇文章. 从SpringCloud官方文档上看SpringCloudConfig其实为我们提供配置外部化的一个服务,可以理解成就是个w ...

  6. 撩课-Java每天10道面试题第3天

    21.final, finally, finalize的区别 1.final修饰符(关键字). 被final修饰的类, 就意味着不能再派生出新的子类, 不能作为父类而被子类继承. 因此一个类不能既被a ...

  7. oracle ROW_NUMBER() OVER (PARTITION BY COL1 ORDER BY COL2)

    工作中遇到的一个问题,需要对某列进行分组排序,取其中排序的第一条数据项 用到了ROW_NUMBER() OVER(PARTITION BY COL1 ORDER BY COL2)来解决此问题. 实例准 ...

  8. [LeetCode] Binary Tree Postorder题解

    Binary Tree Postorder Given a binary tree, return the postorder traversal of its nodes' values. For ...

  9. 删除N天前的备份文件脚本(windows)

    D:\bat\forfiles.exe /p "D:\dmpbk" /s /m *.dmp /d -2 /c "cmd /c del @path" 解析: 使用 ...

  10. LOJ6066:「2017 山东一轮集训 Day3」第二题

    传送门 二分答案 \(k\),考虑如何 \(hash\) 使得做起来方便 把每个点挂在 \(k+1\) 级祖先上,考虑在祖先上删除 这道题巧妙在于其可以对于 \(dfs\) 序/括号序列 \(hash ...