mongodb 3.2 yaml 配置详解及范例
mongodb3.x版本后就是要yaml语法格式的配置文件,下面是yaml配置文件格式如下:
官方yaml配置文件选项参考:https://docs.mongodb.org/manual/ ...
#configuration-file
只能使用空格,不支持tab键,切记
shard 的配置文件范例
storage:
dbPath: /data/mongodb/shard1/data
journal:
enabled: true
directoryPerDB: true
#syncPeriodSecs: 60
engine: wiredTiger
processManagement:
fork: true
pidFilePath: /data/mongodb/shard1/mongod.pid
net:
port: 27017
ipv6: true
http:
enabled: false
systemLog:
destination: file
path: /data/logs/mongodb/27017/log.txt
logAppend: true
#security:
#keyFile: /data/mongodb/keyfile
# authorization: enabled
operationProfiling:
slowOpThresholdMs: 100
mode: slowOp
replication:
oplogSizeMB: 20000
replSetName: shard1
启动服务:
/data/app/mongodb/bin/mongod --shardsvr -f /data/app/conf/shard1.conf
<ignore_js_op>
1 2 3 4 5 6 |
systemLog: destination: file//指定是一个文件 path: /data/logs/mongod.log//日志存放位置 logAppend: true//产生日志内容追加到文件 # quiet: true//在quite模式下会限制输出信息 # timeStampFormat: iso8601-utc //默认是iso8601-local,日志信息中还有其他时间戳格式:ctime,iso8601-utc,iso8601-local |
1 2 3 4 5 6 7 8 9 10 |
processManagement: fork: true//以守护进程的方式运行MongoDB,创建服务器进程 pidFilePath: "/data/mongo-data/mongod.pid"//pid文件路径 net: # bindIp: 192.168.33.131//绑定ip地址访问mongodb,多个ip逗号分隔 port: 27017//端口 maxIncomingConnections:10000//默认65535,mongodb实例接受的最多连接数,如果高于操作系统接受的最大线程数,设置无效。 # http: # enabled: true//http端口最好关闭 #RESTInterfaceEnabled: false//即使http接口选项关闭,如果这个选项打开后会有更多的不安全因素 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
storage: dbPath: "/data/mongo-data"//数据文件存放路径 engine: wiredTiger//数据引擎 wiredTiger: engineConfig://wt引擎配置 cacheSizeGB: 1//看服务器情况来进行设置 directoryForIndexes: true//索引是否按数据库名进行单独存储 collectionConfig: blockCompressor: zlib//压缩配置 indexConfig: prefixCompression: true//索引配置 journal: enabled: true//记录操作日志,防止数据丢失。 directoryPerDB: true//指定存储每个数据库文件到单独的数据目录。如果在一个已存在的系统使用该选项,需要事先把存在的数据文件移动到目录。 operationProfiling: slowOpThresholdMs: 100 //指定慢查询时间,单位毫秒,如果打开功能,则向system.profile集合写入数据 mode: "slowOp"//off、slowOp、all,分别对应关闭,仅打开慢查询,记录所有操作。 security: keyFile: "/data/mongodb-keyfile"//指定分片集或副本集成员之间身份验证的key文件存储位置 clusterAuthMode: "keyFile"//集群认证模式,默认是keyFile authorization: "disabled"//访问数据库和进行操作的用户角色认证 |
复制集相关配置,根据以上配置文件进行如下配置。
1 2 3 4 |
replication: oplogSizeMB: 50//默认为磁盘的5%,指定oplog的最大尺寸。对于已经建立过oplog.rs的数据库,指定无效 replSetName: "rs_zxl"//指定副本集的名称 secondaryIndexPrefetch: "all"//指定副本集成员在接受oplog之前是否加载索引到内存。默认会加载所有的索引到内存。none不加载;all加载所有;_id_only仅加载_id |
分片集群配置,分片复制集配置(单实例节点的基础上)
1 2 3 4 5 |
replication: oplogSizeMB:50 replSetName: "rs_zxl" sharding: clusterRole: shardsvr |
config server配置(单实例节点的基础上)
1 2 |
sharding: clusterRole: configsvr |
mongos配置,(与单实例不同)
1 2 3 4 5 6 7 8 |
systemLog: destination: file path: /data/logs/mongos.log logAppend: true net: port: 27019 sharding: configDB: 192.168.33.131:30000 |