MongoDB配置参数说明(译)

简介

mongod是主要的守护进程的MongoDB的到主机系统。它可以处理数据请求,管理数据格式,并执行后台管理操作。

本文档提供了一个完整的概述的所有命令行选项为mongod。这些选项主要用于测试。在常见的操作,使用配置文件控制的行为您的数据库,该数据库的所有操作完全有能力描述如下所示

选项

mongod

--help, -h

返回一个基本的帮助和用法文本。

--version

返回版本的mongod守护进程。

--config <filename>, -f <filename>

指定配置文件,你可以用它来指定运行时配置。而期权是等价的,可以通过其他命令行参数,配置运行时配置文件是首选的方法mongod。请参阅“ 配置文件选项 “文件有关这些选项的更多信息。

--verbose, -v

增加了大量的内部报告返回标准输出或指定的日志文件-日志路径 。使用V形控制的详细程度,包括选项多次,(EG-VVVVV。)

--quiet

例如,在一个安静的模式,试图限制运行mongod的输出量。此选项抑制:

--port <port>

指定的TCP端口来监听客户端的mongod连接。默认情况下,mongod上侦听连接端口27017。

UNIX类系统需要root权限才能使用的端口号码低于1000。

--bind_ip <ip address>

mongod进程将绑定和IP地址监听连接。默认情况下mongod监听连接本地主机上的(即127.0.0.1地址。)您也可以附加mongod任何接口,但是,如果你重视mongod可公开访问的接口,确保了你已经实施了正确的身份验证和/或防火墙限制,以保护您的数据库的完整性。

--maxConns <number>

指定的最大同时连接数,mongod会接受的。此设置将没有任何作用它是高于你的操作系统的配置最大连接跟踪阈值。

--objcheck

强制的的mongod,以验证所有来自客户端的请求以确保在收到无效的对象永远不会插入数据库。启用此选项会产生一些性能的影响,而不是默认启用的。

--logpath <path>

指定的日志文件的路径,将持有的所有诊断日志信息。

除非另有规定,mongod将所有的日志信息输出输出到标准输出。此外,除非您还可以指定- logappend ,日志文件时,将覆盖进程重新启动。

其他

在不久的将来可能会改变的行为记录系统未来SERVER-4499的情况下。

--logappend

指定时,此选项可确保mongod追加新条目的日志文件,而不是覆盖日志的内容时,过程重新开始。

--syslog

所有的日志输出发送到主机的系统日志系统,而而不是标准输出或用一个日志文件-日志路径

警告

您可以不使用-系统日志-日志路径

--pidfilepath <path>

指定文件的位置举行的“ PID “或进程ID的mongod过程。用于跟踪与mongod组合过程- mongod  选择。

如果这个选项没有设置,,mongod将创建无PID文件。

--keyFile <file>

指定的密钥文件的路径存储身份验证的信息。此选项只适用于之间的连接副本集的成员。

参见。

副本设置安全 “和“ 副本集的管理 。“

--nounixsocket

禁止听的UNIX插座上。除非设置为false,mongod和Mongos的提供了一个Unix套接字。

--unixSocketPrefix <path>

指定的UNIX套接字的路径。除非此选项的值,mongod Mongos的的 ,创建一个套接字/ tmp作为前缀。

--fork

启用守护进程模式运行mongod,处理的背景。这是正常的操作模式下,在生产环境和生产环境, 未必可取的测试。

--auth

允许从远程用户连接数据库身份验证主机。配置用户通过蒙戈壳的 。如果没有用户,本地主机接口将继续对数据库的访问,直到你创造所述第一用户。

请参阅“ 安全和身份验证 关于此功能的更多信息的维基页面。

--cpu

部队mongod报告的CPU时间百分比写锁定。mongod产生输出每四个秒。MongoDB的将这些数据写入到标准输出或日志文件如果使用的日志路径“选项。

--dbpath <path>

指定一个目录的mongod实例来存储它的 Data: 典型的地区包括: 的/ srv / mongodb的 ,/ var / lib中/ mongodb的或者/ opt / mongodb的

除非另有规定,mongod将寻找数据文件中的默认的/数据/ db目录中。(Windows系统下使用\ DATA \ db目录中。)如果您已安装包中输入SQL查询。检查的/ ETC / mongodb.conf中提供的文件你的包看的DBPATH的配置。

--diaglog <value>

创建一个非常详细的诊断日志进行故障排除并记录各种错误。在MongoDB中写入这些日志文件的DBPATH目录中开始的一系列文件的的字符串diaglog和与起始时间的结束作为一个十六进制字符串的记录。

指定的值配置的详细程度。可能是如下的值,和它们的影响。

{0}  {/0}Value

设置

第0天

折!没有记录。

1

日志写操作。

2

日志读取操作。

3

日志读取和写入操作。

7

日志写入和一些读操作。

重播输出,您可以使用mongosniff的工具进行调查。一个典型的diaglog文件,位于/ data/db/diaglog.4f76a58c,你可以使用一个命令,在以下表格来读取这些文件:

mongosniff --source DIAGLOG /data/db/diaglog.4f76a58c

- diaglog是供内部使用,不用于最用户。

警告

的诊断级别设置为0,将导致mongod 停止的诊断日志文件写入数据。但是,该的mongod实例将继续保持打开该文件,即使它不再将数据写入到该文件。如果你想重命名,移动或删除诊断日志,你必须完全关闭在这样做之前下来的mongod实例。

--directoryperdb

改变的数据目录中的存储模式来存储每个数据库的文件在不同的文件夹中。此选项将创建- DBPATH目录命名为每个目录。

在您的文件系统和设备的结合使用此选项MongoDB的配置,以便将数据存储在若干不同的磁盘设备的写入吞吐量增加或磁盘容量。

--journal

启用操作日志,以确保写入耐用性和数据一致性。mongodb的日志默认情况下,使以后的版本2.0的64位版本的。

--journalOptions <arguments>

提供的功能进行测试。不能用于一般用途,并可能影响数据库的完整性。

--journalCommitInterval <value>

指定允许的最大时间量mongod日志操作之间。默认值是100毫秒,而可能的数值范围为2〜300,单位为毫秒。较底的值增加的耐久性的期刊,在牺牲磁盘性能。

要强制mongod更频繁地提交到日志,您可以指定“J:”真实的“。当J:真正的写操作, 待决,,mongod将减少journalCommitInterval定值的三分之一。

--ipv6

指定此选项可启用IPv6支持。这将允许客户端使用IPv6连接到mongodmongod默认情况下,禁用IPv6的支持网络。mongod和所有的工具。

--jsonp

许可证JSONP通过一个HTTP接口访问。考虑安全的影响,使这项活动,然后再启用此选项。

--noauth

禁用身份验证。目前默认值。为未来而存在兼容性和清晰度。

--nohttpinterface

禁用HTTP接口。

--nojournal

禁用的持久性日志。默认情况下,mongod 启用后,在64位版本的日志2.0。

--noprealloc

禁用预分配的数据文件。这将缩短在某些情况下,启动时间,但可能会导致显着的性能在正常操作过程中的处罚。

--noscripting

禁用脚本发动机。

--notablescan

禁止操作,需要一个表扫描。

--nssize <value>

指定命名空间的文件(即NS)的默认值。这选项有没有影响现有的命名空间的文件的大小。

默认值是16兆字节,这提供了有效的12000可能的命名空间。的最大大小为2 GB。

--profile <level>

改变数据库分析的水平,该信息插入到输出的mongod的经营业绩或日志file.以下级别可供选择:

水平

设置

第0天

关。无分析。

1

开仅包括较慢的操作。

2

开包括所有的操作。

剖析默认情况下是关闭的。数据库的分析可以影响数据库性能,启用此选项,只有经过仔细的考虑。

--quota

允许的最大限制的数字数据文件,每个数据库都可以有。当运行-配额 ,有一个最大8个数据文件,每个数据库。调整配额- quotaFiles选项。

--quotaFiles <number>

修改限制每个数据库的数据文件的数量。此选项需要的-配额设置。默认值- quotaFiles是8。

--rest

启用简单的REST API。

--repair

对所有数据库运行的维修程序。这相当于关闭和运行repairDatabase数据库的对所有数据库的命令。

警告

在一般情况下,如果你有一个完整的数据副本,如将存在于一个最近的备份或一个完整的成员,副本集,不要使用repairDatabase 或相关的像db.repairDatabase选择()蒙戈外壳或mongod -修复 。<msg name="short_restore">还原</msg>从一个完整的数据副本。

其他

当使用日志 ,几乎从来没有任何需要运行repairDatabase 。在一个事件不正常关机,服务器将能够恢复的数据文件自动恢复到原始状态。

在版本2.1.2变更。

如果您运行的修复选项日志文件中的数据,mongod将拒绝启动。在这种情况下,你应该-修复选项,没有启动mongod让mongod从日志来恢复数据。这将更快速地完成,将导致更一致的,并完整的数据集。

尽管日志文件,要继续修复操作关闭mongod干净,然后重新启动的-维修 选择。

--repairpath <path>

指定根目录,其中包含MongoDB的数据文件,使用-修复操作。默认的价值- DBPATH指定。

--slowms <value>

定义的“慢”,为-公司简介 选择。该数据库记录了所有慢查询日志,甚至当事件探查器未启用。当数据库分析器,mongod分析器写入的system.profile n.收集,搜集更多信息,请参阅配置文件为数据库分析器。

--smallfiles

启用MongoDB的使用较小的默认文件模式{0}{/0}SIZE具体来说, - smallfiles降低了初始用于数据文件和它们限制到512的大小兆字节。 - smallfiles也减少了每个的大小杂志 1千兆字节到128兆字节的文件。

如果你有大量的数据库的使用- smallfiles每个保持一个小的数据量。 - smallfiles可以带领你的mongod创建了大量的文件,这可能会影响更大的数据库的性能。

--shutdown

用于控制脚本-关闭将干净和安全地终止mongod进程。当调用mongod与选项,则必须设置- DBPATH选项,可直接或方式的配置文件-配置 选择。

--syncdelay <value>

此设置控制磁盘之间的最大秒数同步。mongod是始终将数据写入到磁盘中,这设置控制的最大保证之间的间隔成功的写操作和下一次的数据库刷新数据写入磁盘。

在许多情况下,实际的时间间隔之间的写操作和磁盘刷新比的值是更短的

如果设置为0,mongod刷新到磁盘上的所有操作立即,可以具有显着的性能的影响。IF-日记是真实的,所有的写操作将是持久的,通过该杂志由指定的时间内- journalCommitInterval

--sysinfo

返回诊断系统的信息,然后退出。“信息提供的页大小,数量的物理页,以及可用的物理页面的数量。

--upgrade

升级磁盘上的数据指定的文件格式- DBPATH到最新的版本,如果需要的话。

此选项仅影响操作的mongod数据文件是在一个旧的格式。

其他

在大多数情况下,你应该设置这个值,这样你就可以行使最大程度地控制您的升级过程。请参阅MongoDB的发行说明 (下载页面)有关升级过程的更多信息。

--traceExceptions

对于使用内部诊断。

复制选项

--replSet <setname>

使用此选项来配置复制的副本集。指定一个setname可以作为一个参数,这一套。所有主机都必须具有相同的设置名称

参见。

复制“ 副本集管理 ,““ 副本集的配置

--oplogSize <value>

复制操作指定的最大大小(以兆字节为单位)日志(例如oplog )。通过mongod创建一个oplog的基础上的最大可用空间量。为64位系统,运算日志一般是5%的可用磁盘空间。

一旦mongod已为先创建的oplog时间,改变- oplogSize不会影响的大小oplog。

--fastsync

副本集复制的情况下,设置此选项如果你已经接种此副本的快照DBPATH的另一名成员的集合。否则,mongod将尝试执行完全同步。

警告

如果数据还没有完美的同步 mongod与fastsync开始,然后中学或从站将永久不同步小学,这可能会导致显着的一致性问题。

--replIndexPrefetch

新的2.2版本中。

您必须使用- replIndexPrefetch一起replSet 。默认值是所有可用的选项有:

  • none
  • 所有
  • _id_only

默认情况下, 二级副本集成员加载到内存中的所有相关指标的操作前应用的oplog操作。您可以修改此行为,以便辅助将只加载的_id指数。指定_id_only或没有 ,以防止mongod任何索引加载到内存中。

/从复制

这些选项提供了传统的主从数据库的访问复制虽然这个功能仍然可以在MongoDB中,副本集是首选的配置数据库复制。

--master

配置mongod运行复制: master

--slave

配置mongod运行复制奴隶

--source <host>:<port>

-选项-源选项的使用指定的服务器,这种情况下将复制。

--only <arg>

对于使用-选项-唯一的选择仅指定一个单一的数据库进行复制。

--slavedelay <value>

- slavedelay -选项,用于 选项进行配置,以秒为单位的“延迟”,该从站等待从节点的应用操作。

--autoresync

对于使用-选项,- autoresync选项允许奴隶自动的本地数据重新同步,如果超过10秒,后面的: master此选项可能有问题,如果oplog是太小的(控制,的- oplogSize选项。)如果oplog不够大,无法存储差异变化主之间的当前状态和状态的奴隶,的节点将强制重新同步本身是不必要的。当您设定如果的- autoresync选项的奴隶不会尝试的自动重新同步不止一次在10分钟内。

分片群集选项

--configsvr

声明,这mongod实例作为配置数据库的片式集群。的默认端口mongod这个办法是27019,mongod的所有数据写入文件/ configdb 的- DBPATH目录的子目录。

--shardsvr

配置的碎片在这mongod实例分区集群。这些实例的默认端口是27018。

--noMoveParanoia

禁用一个“偏执模式”的数据写入的块迁移操作。请参阅的的块迁移moveChunk命令文档了解更多信息。

默认情况下,,mongod将节省迁移数据块的副本“从”服务器迁移过程中的“偏执模式”。设置此选项禁用此偏执狂。

用法

在常见的用法,调用mongod将类似于继的背景下,初始化或控制脚本:

mongod --config /etc/mongodb.conf

请参阅“ 配置文件选项 “的详细信息如何使用配置文件配置mongod。

posted @ 2012-10-20 13:52  WangWilliam  阅读(1501)  评论(0编辑  收藏  举报