-
六、生产环境维护复制集
1. 需要停服务维护时,请以单机模式启动
rs.stepDown(10) # 主节点降级
rs.freeze(600) # 冻结600秒
kill -2 进程号
进配置文件注释#replSet
mongod -f 配置文件
此时就是以单机模式启动
2. 生产维护复制集的场景:
1)修改复制集成员属性 rs.reconfig()
2)人工干预选举:修改priority值;rs.freeze();rs.stepDown()
3)创建索引:比较耗费数据库性能,最好单机模式操作
db.表名.ensureIndex({background:true})
4)调整oplog大小
⑴ 将成员以单机模式启动:见上栗1.
⑵ 将oplog最新的一条操作保存到临时表中:
db.temp.save(db.oplog.rs.find().sort({$natural:-1}).limit(1).next())
db.temp.find()
⑶ 删除原来的oplog.rs集合
db.oplog.rs.drop()
⑷ 以创建封顶表的方式创建新的oplog.rs
db.createCollection("oplog.rs",{capped:true, size:3*1024*1024*1024})
⑸ 将之前保存的原oplog.rs中最新的操作插入到新建的oplog.rs中
db.oplog.rs.save(db.temp.findOne())
⑹ 将单机模式的节点返回到复制集中
kill -2 进程号
进配置文件取消注释replSet
mongod -f 配置文件
⑺ 进入节点查看oplog大小
use local
db.oplog.rs.stats(1024*1024)
查看全部 -
副本集
查看全部 -
更新oplogSize 1.将成员以单机模式启动 2.将oplog最新的一条操作保存到临时表里 db.oplog.rs.find().sort({$natural:-1}).limit(1) 3.db.temp.save(db.oplog.rs.find().sort({$natural:-1}).limit(1).next()) #固定的,牢记! 4.删除原来的oplog.rs集合 db.oplog.rs.drop() 5.以创建封顶表方式,创建新的oplog.rs db.createCollection("oplog.rs",{capped:tre,size:1024*1024*1024*3}) 6.将之前保存的原oplog中最新的操作保存到新的oplog中 db.oplog.rs.save(db.temp.findOne()) db.oplog.rs.count() db.oplog.rs.find() 7.将单机节点模式返回到复制集模式中 kill -2|15 pid 温柔的杀死 vi xxx.conf 解开注释点 启动复制节点查看全部
-
1.人工干预选举,priority权重,rs.freeze()冷冻,rs.stepDown()降级 2.创建索引 背景:主节点,又连接,请求特别多(rw),其他从节点也有很多r操作 Db.coll.ensureIndex({background:true})在空闲情况下创建索引,但是还是会有影响 解决办法:如果是主节点的话,先降级到从节点,然后转为单机模式启动,然后创建索引。就可以随心所欲的创建索引,从而不影响线上。等创建完毕,再恢复成复制集成员,再将其他类似节点安装以上方法依次创建。查看全部
-
1.修改其中一个节点members[0].priority=5,使其一直为主节点primary。 使修改的配置生效,rs.reconfig(config)查看全部
-
复制集管理维护的几样工作: 1.注释repSet配置文件,或者primary中rs.remove("192.168.1.20:27004")移除查看全部
-
启动mongod的shell脚本 #!/bin/bash port=$1 mongodhome=/application/mongodb-3.4.5 numactl --interleave=all $mongodhome/bin/mongod --config $mongodhome/conf/$port.conf查看全部
-
1.在复制集中加入1个节点 a.config=rs.conf config.members[1]来添加一个节点 b.rs.add()普通节点 | rs.addArb() Arbiter节点 配置好28001.conf,data数据存放点,log日志存放点,启动后。 rs.conf() rs.add("192.168.1.1:28004") 再次查看rs.conf() 到28004节点查看是否已经加入复制集。查看全部
-
oplog大小及意义: 默认大小为linux/window当前系统分区可用空间5%,体积不会超过50G --oplogSize查看全部
-
封顶表Capped colletion滚动覆盖写入,固定大小。 max:5000最好不要指定,指定大小size即可。查看全部
-
复制集复制原理:异步复制机制! oplog查看全部
-
复制集合工作 初始化同步 管理维护查看全部
-
一些热数据(经常信息修改的数据)会放置再内存中,当进行clone操作时会有可能将内存中的数据替换 所以建业在业务进行较少时进行查看全部
-
复制集的时间窗口会应为clone和建立索引错过主表的更新查看全部
-
新加入节点 要drop以前的数据查看全部
-
封顶表可以在启动配置文件中设置大小 单位mb查看全部
-
创建封顶表的语法 注capped是关键查看全部
-
op对应操作类型查看全部
-
复制集工作原理查看全部
举报