mongodb配置文件启动linux,Linux运维知识之Mongodb启动方法:设定参数启动;从设置文件启动...

本文主要向大家介绍了Linux运维知识之Mongodb启动方法:设定参数启动;从设置文件启动,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助。

b400baf42f3d58ee09198411b4ab16d9.png

接手的MongoDB只有一个日志文件,体积非常大,排错不便。在找解决办法的时候发现MongoDB的启动文件配置项超级多,于是产生了解释配置参数的想法。

mongod服务有两种启动方式

一种是通过配置文件$ ./mongod -f /app/mongodb/mongodb27017/conf/mongodb.conf

一种直接指明参数$./mongod --dbpath=/app/mongodb/db --port=27017 --fork --logpath=/app/mongodb/db/mongodb.log

由于安装文件没有默认的配置文件,需要配置的参数项又比较多,推荐使用配置文件的方式启动服务。下面详细介绍配置

storage:    dbPath: "/data/mongodb/data”   #数据目录    directoryPerDB: true      #将不同DB的数据分子目录存储,基于dbPath,默认为 false    engine: “wiredTiger"      #存储引擎,3.2后默认wiredTiger 可选 mmapv1    wiredTiger:        engineConfig:            cacheSizeGB: 15     #Mongodb吃内存,并且不会主动释放,默认的缓存大小为max(1/2maxmem,256M),可参照系统总内存进行设置。            journalCompressor: snappy     #journal日志的压缩算法,可选值为“none”、“snappy”、“zlib”。压缩差别可百度,总体来说snappy最合适。            directoryForIndexes: true #是否将索引和collections数据分别存储在dbPath单独的目录中。默认值为false,放在一个目录。        collectionConfig:            blockCompressor: snappy      #collection数据压缩算法,可选值“none”、“snappy”、“zlib”        indexConfig:            prefixCompression: true   #是否对索引数据使用“前缀压缩” ,对那些经过排序的值存储,可以减少索引数据的内存使用量。默认值为true。    journal:        enabled: true     #是否开启journal日志持久存储,journal日志用来数据恢复,是mongod最基础的特性,通常用于故障恢复。        commitIntervalMs: 100   #New in version 3.2.  日志提交间隔systemLog:    destination: file  #日志输出目的地,可为 file 或 syslog; if file, you must also specify systemLog.path      path: "/var/log/mongodb/mongodb.log"    logAppend: true   #启动或重启后是否追加写入    logRotate: rename   #防止一个日志文件特别大,可选项:rename(重命名日志文件,默认值);reopen(使用linux日志rotate特性,关闭并重新打开此日志文件,可以避免日志丢失,但是logAppend必须为true)    timeStampFormat: ctime  #时间格式 默认为 iso8601-localreplication:     oplogSizeMB: 10240     replSetName: getui-bi     enableMajorityReadConcern: falseprocessManagement:    fork: true    #守护进程模式启动,默认 false    pidFilePath: "/var/run/mongodb/mongod.pid”  #配合"fork:true"参数,将mongod/mongos进程ID写入指定的文件,如果不指定,将不会创建PID文件net:    bindIp: 127.0.0.1      port: 27017    ipv6: false   #是否支持mongos/mongod多个实例之间使用IPV6网络,默认值为false。此值需要在整个cluster中保持一致。    maxIncomingConnections: 10000   #进程允许的最大连接数,默认:65536    wireObjectCheck : false  #当客户端写入数据时,mongos/mongod是否检测数据的有效性(BSON),如果数据格式不良,此insert、update操作将会被拒绝;默认值为true    unixDomainSocket:        enabled : truesecurity:    keyFile: /opt/mongodb/etc/mongodb-keyfile #指定分片集或副本集成员之间身份验证的key文件存储位置。    authorization: enabled   #打开访问数据库和进行操作的用户角色认证

回到写这篇博客的原因,Mongodb的日志量较大,可通过上述rename的方式进行日期分类,也可设置日志级别和安静模式,使日志量减小。

systemLog:         #系统日志配置   verbosity: #日志级别,0:默认值,包含“info”信息,1~5,即大于0的值均会包含debug信息   quiet:   #"安静",此时mongod/mongos将会尝试减少日志的输出量。不建议在production环境下开启,否则将会导致跟踪错误比较困难。

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注系统运维Linux频道!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值