mongodb配置文件详解,内存限制,用户验证 yaml格式

mongodb配置文件详解,内存限制,用户验证 yaml格式

2019年05月27日 17:18:30 西门小凤 阅读数 275更多html

分类专栏: MongoDBmongodb

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处连接和本声明。缓存

本文连接:https://blog.csdn.net/weixin_43886133/article/details/90607193优化

 

mongodb 单节点配置文件详解


mongodb 3.0及以上版本基本都是使用 yaml 语法格式的配置文件, 启动 mongo 实例若是不是指定配置文件或参数命令启动, 会按照默认的参数启动。spa

 

经常使用基本配置文件参数

storage:
  # mongod 进程存储数据目录,此配置仅对 mongod 进程有效
  dbPath: /data/mongodb/db
  是否开启 journal 日志持久存储,journal 日志用来数据恢复,是 mongod 最基础的特性,一般用于故障恢复。64 位系统默认为 true,32 位默认为 false,建议开启,仅对 mongod 进程有效。
  journal:
    enabled: true
 # 存储引擎类型,mongodb 3.0 以后支持 “mmapv1”、“wiredTiger” 两种引擎,默认值为“mmapv1”;官方宣称 wiredTiger 引擎更加优秀。
  engine: mmapv1

systemLog:
  # 日志输出目的地,能够指定为 “file” 或者“syslog”,表述输出到日志文件,若是不指定,则会输出到标准输出中(standard output)
  destination: file
  # 若是为 true,当 mongod/mongos 重启后,将在现有日志的尾部继续添加日志。不然,将会备份当前日志文件,而后建立一个新的日志文件;默认为 false。
  logAppend: true
  # 日志路径
  path: /var/log/mongodb/mongod.log

net:
 # 指定端口
  port: 27017
  # 绑定外网 op 多个用逗号分隔
  bindIp: 0.0.0.0
  maxIncomingConnections: 10000
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

内存优化相关的配置

MongoDB 在使用过程当中, 内存占用会愈来愈大, 甚至达到危险的状态, 并且会一直保持最高状态,
官网上有相关的内容:https://docs.mongodb.com/v3.4/core/wiredtiger/index.html
如下根据官网, 增长限制内存的配置, 启动mongo使用配置文件启动.net

storage:
  dbPath: /data/mongodb/db
  journal:
    enabled: true
  engine: wiredTiger
    # 以下配置仅对 wiredTiger 引擎生效(3.0 以上版本)  
  	wiredTiger:
  	  # wiredTiger 缓存工做集(working set)数据的内存大小,单位:GB
      # 此值决定了 wiredTiger 与 mmapv1 的内存模型不一样,它能够限制 mongod 对内存的使用量,而 mmapv1 则不能(依赖于系统级的 mmap)。默认状况下,cacheSizeGB 的值为假定当前节点只部署一个 mongod 实例,此值的大小为物理内存的一半;若是当前节点部署了多个 mongod 进程,那么须要合理配置此值。若是 mongod 部署在虚拟容器中(好比,lxc,cgroups,Docker)等,它将不能使用整个系统的物理内存,则须要适当调整此值。默认值为物理内存的一半。
      engineConfig:
      	cacheSizeGB: 5

systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log
  
net:
  port: 27017
  bindIp: 0.0.0.0
  maxIncomingConnections: 10000
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

添加用户认证

开启用户认证前须要建立一个root用户 如:日志

use admin
db.createUser({
user:"root",
pwd:"root123",
roles:[
{
role:"userAdminAnyDatabase",
db:"admin"
}
]
})
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

而后在配置文件中添加以下配置信息code

security:
  authorization: enabled
  • 1
  • 2

而后重启mongo, 否则用户认证不生效, 重启后就能够建立其余普通用户了htm

相关文章
相关标签/搜索