您的位置:首页 > 数据库 > Mongodb

MongoDB3.4配置文件参数选项

2017-07-09 10:39 435 查看
以下的描述是MongoDB3.4配置文件,对于其它版本的MongoDB配置文件选项,请参考对应的版本。

配置文件

使用配置文件管理mongod和mongos管理更容易,特别是大规模的部署,你可以向配置文件添加注释来解释服务器的配置。

如果你已经安装了一个安装包并且已经启动了MongoDB,并且使用系统初始化那么你已经使用了配置文件。

文件格式

从MongoDB2.6开始推荐一种基于YAML格式的配置文件,并且仍然兼容之前的配置文件。

MongoDB使用YAML配置文件格式。

下面的配置文件包含多个Mongod配置适用于本地配置

注:YAML不支持缩进制表符(tab)可以适用空格来代替

systemLog:
destination: file
path: "/var/log/mongodb/mongod.log"
logAppend: true
storage:
journal:
enabled: true
processManagement:
fork: true
net:
bindIp: 127.0.0.1
port: 27017
setParameter:
enableLocalhostAuthBypass: false
...

适用配置文件

适用配置文件启动mongod和mongos,指定配置文件使用--config 选项或者--f选项,请看下面的例子:

下面的例子使用--config选项来启动mongod和mongos

mongod --config /etc/mongod.conf

mongos --config /etc/mongos.conf

你也可以适用--f别名来指定选项,如下:

mongod -f /etc/mongod.conf

mongos -f /etc/mongos.conf

如果你已经安装了MongoDB安装包那么说明你已经使用了系统初始化脚本,那么你已经开始使用配置文件了

核心选项

systemLog选项




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>


systemlog.verbosity

类型:integer

默认值:0

从3.0版本

组件的默认日志级别,详细的级别决定着MongoDB输出日志的信息和debug信息量

详细级别的范围可以从0到5

0是MongoDB的默认日志详细等级,包括信息消息

1到5包含到调试信息的详细等级

systemLog.quiet

类型:boolean

运行mongod和mongos在一个安静的模式尝试限制日志的输出量

在生产环境中不推荐使用systemLog.quiet安静模式,由于它很难跟踪特定连接所出现的问题

systemLog.traceAllExceptions

类型:boolean

打印调试详细信息,用于支持相关故障的排除附加日志记录

systemLog.syslogFacility

类型:字符串

默认值:user

你指定的值必须由你的操作系统实现支持syslog,使用这个选项,你必须启动--syslog日志选项

systemLog.path

类型:string

mongod和mongos发送诊断的日志信息的路径,而不是标准的输出或者主机的syslog,MongDB会在指定的路径下创建日志文件

systemLog.logAppend

类型:boolean

默认值:False

当值为true时,mongod和mongos重启后会将新的日志信息加入到已经存在的日志文件中,如果为false,将会备份原有的日志文件并且创建新的日志文件

systemLog.logRotate

类型:string

默认值:rename

logRotate命令指定rename和reopen

rename重命名日志文件

reopen关闭和重新打开日志文件,如果使用reopen你必须设置sysLog.logAppend为true

sysLog.destination

类型:字符串

MongoDB输出的所有日志的目的地,指定file或者syslog,如果你指定file你必须指定sysLog.path

如果你不指定sysLog.destination,MongoDB会将所有的日志输出到标准输出中

sysLog.timeStampFormat

类型:string

默认值:iso8601-local

在日志消息的时间戳的时间格式。指定下列值之一:

ValueDescription
ctime
Displays timestamps as
Wed
Dec 3118:17:54.811
.
iso8601-utc
Displays timestamps in Coordinated Universal Time (UTC) in theISO-8601 format. For example, for New York at the start of theEpoch:
1970-01-01T00:00:00.000Z
iso8601-local
Displays timestamps in local time in the ISO-8601format. For example, for New York at the start of the Epoch:
1969-12-31T19:00:00.000-0500
net选项

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

类型:integer

默认值:27017

MongoDB实例监听客户端连接的端口号

net.bindIp

类型:string

默认值:所有接口
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: