mongodb进阶(3):复制的认证和oplog
2014-03-26 14:24
225 查看
认证
上面的例子中,我们可以看到,如果可以访问到主服务器地址,那么就可以随时给主服务器动态添加一个复制从服务器,这很容易造成问题。所以,应该为复制添加必要的认证。mongodb的复制认证有固定的规律:
首先,它会去寻找local库中的“repl"名字的用户
其次,如果”repl“用户不存在,则会去取local.system.users集合中的第一个用户当作复制认证用户
明白上面的规律,那么我们应该为主从复制或者副本集中的每一个节点设置相同的repl用户和密码。
use local db.addUser("repl","password")
oplog
前两篇中的复制,运行过程都是类似的。第一,初始化完成之后进行同步,同步会把主机上所有的数据复制过来,操作非常耗时。
第二,同步完成之后,会定时去取主机上的oplog,具体来说,oplog是固定大小的,每次oplog满后,都会去往从机映射。
第三,从机得到oplog,对本机同步过来的数据进行操作。操作日志的同步相比第一步的操作会比较省资源。
但是,上面的过程有时会出现问题,比如:oplog设置的值较小,从机还没有进行完上一次操作的映射,而oplog就已经满了。那么运行一段时间,从机就会被主机”落下“,这个时候,从机就会从主机再次进行完整的同步。同步操作非常耗资源,就会影响整体的响应性能。
所以,应该配置oplog为适当的值,尽量避免完全同步操作的发生。
查看复制设置和状态
db.printReplicationInfo() db.printSlaveReplicationInfo()修改oplog大小比较麻烦,
1.停掉主服务器,删除掉local数据库文件
2.用新的--oplogSize参数启动mongodb
3.所有从机使用--autoresync重启,或者每台从机手动进行同步。
相关文章推荐
- 安装MongoDB-单击版、复制集、密码认证、安装MongoDB分片shard
- mongoDB的复制集5----复制集安全(认证,用户,权限)
- 学习MongoDB--(9-3):复制(主从复制--进阶2)
- mongodb进阶(1):主从复制
- MongoDB复制集安全认证
- 学习MongoDB--(9-2):复制(主从复制--进阶)
- mongodb3.4 远程连接认证失败
- MongoDB 复制机制
- ttlsa教程系列之mongodb——(五)mongodb架构-复制原理&复制集
- MongoDB复制集简介(一)--初步认识
- mongodb的主从复制操作
- mongodb 3.4复制集详解
- 第六章:MongoDB Replica Sets复制集的搭建
- mongodb 非 admin 库 认证登陆失败 原因(百度好多都 是渣)db.addUser() 请走开。
- Informix IDS 11琐细打点(918检修)认证指南,第 7 部分: IDS复制(14)
- MongoDB 复制集自动故障切换
- perl 操作mongodb的 连接 需要用户名和密码认证的 mongodb
- MongoDB 数据库M-S主从复制
- mongodb复制-副本集
- mongodb的oplog遇到的问题