MongoDB 配置文件详解,以及副本集,优先级

## content 。 mongodb 日志开启并指定日志位置
systemLog:
  destination: file
  logAppend: true
  path: /www/server/mongodb/log/config.log
 
# Where and how to store data. 指定数据库存在目录
storage:
  dbPath: /www/server/mongodb/data
  directoryPerDB: true
# 是否启用日志
  journal:
    enabled: true
# how the process runs。.指定跟踪进程文件夹路径,如果未指定,启动时会出现进程号
processManagement:
  fork: true
  pidFilePath: /www/server/mongodb/log/configsvr.pid
 
# network interfaces  配置ip及端口,外网访问
net:
  port: 27017
  bindIp: 0.0.0.0
 
#operationProfiling:

#搭建副本集统一名称配置
replication:
    replSetName: mawen
#是否加密访问
security:
#  authorization: enabled
  authorization: disabled
  javascriptEnabled: false
  keyFile: /www/server/keyFile/mongodb.key
 #keyFile 随便生成一个base64的文本即可,此文件如果在linux中那么这个文件不要赋予任何权限,否则启动时会报错:文件不安全
#sharding:
#    clusterRole: shardsvr

#启动mongodb 并指定配置文件
#./mongod -f /www/server/mongodb27017/mongodb/config.conf
#初始化
#rs.initiate()
#副本集
# 向副本集中添加成员
#rs.add("127.0.0.1:27018")
# 从副本集中删除成员
#rs.remove("127.0.0.1:27017")
# 向副本集中添加仲裁
#rs.addArb("127.0.0.1:27017")
# 向副本集中添加备份节点
#rs.add({"_id":3,"host":"127.0.0.1:27017","priority":0,"hidden":true})
#参考地址https://blog.csdn.net/pengjunlee/article/details/84101732

#设置优先级
#mawen:SECONDARY> var conf=rs.conf()
#mawen:SECONDARY> conf.members[0].priority = 90
#90
#mawen:SECONDARY> conf.members[1].priority = 10
#10
#mawen:SECONDARY> conf.members[2].priority = 9
#9
#mawen:SECONDARY> rs.reconfig(conf,{"force":true})

#参考地址:https://www.cnblogs.com/pl-boke/p/10063351.html
#查看用户
#use admin 、 show users
#自定义权限
#db.createRole({ role: “testRole”, privileges: [{ resource: { db: “”, collection: “” }, actions: [“enableSharding” ] }], roles: [“readWriteAnyDatabase”] })

#添加用户
#db.createUser( { user: “testuser”, pwd: “123456”, roles: [ { role: “testRole”, db: “admin” } ] } ) 
#db.createUser({user:"mawen",pwd:"ma00216223",roles:
#[{role:"userAdminAnyDatabase",db:"admin"}]})
#删除用户 
#db.system.users.remove({_id:"XXX.XXX"})  id删除
#db.system.users.remove({user:"XXXXXX"})  名字删除
#权限
#Read:允许用户读取指定数据库
#readWrite:允许用户读写指定数据库
#dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
#userAdmin:允许用户向system.users集合写入,可以在指定数据库里创建、删除和管理用户
#clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
#readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
#readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
#userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
#dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
#root:只在admin数据库中可用。超级账号,超级权限


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