-
Deprecated since version 3.0.0: db.collection.ensureIndex() is now an alias for db.collection.createIndex(). Optional. Builds the index in the background so that building an index does not block other database activities. Specify true to build in the background. The default value is false.查看全部
-
mongodb查看全部
-
更新oplogSize 1.将成员以单机模式启动 2.将oplog最新的一条操作保存到临时表里 3.db.temp.save(db.oplog.rs.find().sort({$natural:-1}).limit(1).next()) 4.删除原来的oplog.rs集合 5.以创建封顶表方式,创建新的oplog.rs 6.将之前保存的原oplog中最新的操作保存到新的oplog中 db.oplog.rs.save(db.temp.findOne()) 7.将单机节点模式返回到复制集模式中查看全部
-
心查看全部
-
oplog查看全部
-
复制集工作:查看全部
-
挂电话方不方便废话风好大回答好查看全部
-
六、生产环境维护复制集
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节点查看是否已经加入复制集。查看全部
举报