-
六、生產(chǎn)環(huán)境維護(hù)復(fù)制集
1. 需要停服務(wù)維護(hù)時(shí),請(qǐng)以單機(jī)模式啟動(dòng)
rs.stepDown(10) ? ? ? # 主節(jié)點(diǎn)降級(jí)
rs.freeze(600) ? ? ? ? ? # 凍結(jié)600秒
kill -2 進(jìn)程號(hào)
進(jìn)配置文件注釋#replSet
mongod -f 配置文件
此時(shí)就是以單機(jī)模式啟動(dòng)
2. 生產(chǎn)維護(hù)復(fù)制集的場(chǎng)景:
1)修改復(fù)制集成員屬性 rs.reconfig()
2)人工干預(yù)選舉:修改priority值;rs.freeze();rs.stepDown()
3)創(chuàng)建索引:比較耗費(fèi)數(shù)據(jù)庫(kù)性能,最好單機(jī)模式操作
db.表名.ensureIndex({background:true})
4)調(diào)整oplog大小
⑴ 將成員以單機(jī)模式啟動(dòng):見上栗1.
⑵ 將oplog最新的一條操作保存到臨時(shí)表中:
db.temp.save(db.oplog.rs.find().sort({$natural:-1}).limit(1).next())
db.temp.find()
⑶ 刪除原來(lái)的oplog.rs集合
db.oplog.rs.drop()
⑷ 以創(chuàng)建封頂表的方式創(chuàng)建新的oplog.rs
db.createCollection("oplog.rs",{capped:true, size:3*1024*1024*1024})
⑸ 將之前保存的原oplog.rs中最新的操作插入到新建的oplog.rs中
db.oplog.rs.save(db.temp.findOne())
⑹ 將單機(jī)模式的節(jié)點(diǎn)返回到復(fù)制集中
kill -2 進(jìn)程號(hào)
進(jìn)配置文件取消注釋replSet
mongod -f 配置文件
⑺ 進(jìn)入節(jié)點(diǎn)查看oplog大小
use local
db.oplog.rs.stats(1024*1024)
查看全部 -
副本集
查看全部 -
更新oplogSize 1.將成員以單機(jī)模式啟動(dòng) 2.將oplog最新的一條操作保存到臨時(shí)表里 db.oplog.rs.find().sort({$natural:-1}).limit(1) 3.db.temp.save(db.oplog.rs.find().sort({$natural:-1}).limit(1).next()) #固定的,牢記! 4.刪除原來(lái)的oplog.rs集合 db.oplog.rs.drop() 5.以創(chuàng)建封頂表方式,創(chuàng)建新的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.將單機(jī)節(jié)點(diǎn)模式返回到復(fù)制集模式中 kill -2|15 pid 溫柔的殺死 vi xxx.conf 解開注釋點(diǎn) 啟動(dòng)復(fù)制節(jié)點(diǎn)查看全部
-
1.人工干預(yù)選舉,priority權(quán)重,rs.freeze()冷凍,rs.stepDown()降級(jí) 2.創(chuàng)建索引 背景:主節(jié)點(diǎn),又連接,請(qǐng)求特別多(rw),其他從節(jié)點(diǎn)也有很多r操作 Db.coll.ensureIndex({background:true})在空閑情況下創(chuàng)建索引,但是還是會(huì)有影響 解決辦法:如果是主節(jié)點(diǎn)的話,先降級(jí)到從節(jié)點(diǎn),然后轉(zhuǎn)為單機(jī)模式啟動(dòng),然后創(chuàng)建索引。就可以隨心所欲的創(chuàng)建索引,從而不影響線上。等創(chuàng)建完畢,再恢復(fù)成復(fù)制集成員,再將其他類似節(jié)點(diǎn)安裝以上方法依次創(chuàng)建。查看全部
-
1.修改其中一個(gè)節(jié)點(diǎn)members[0].priority=5,使其一直為主節(jié)點(diǎn)primary。 使修改的配置生效,rs.reconfig(config)查看全部
-
復(fù)制集管理維護(hù)的幾樣工作: 1.注釋repSet配置文件,或者primary中rs.remove("192.168.1.20:27004")移除查看全部
-
啟動(dòng)mongod的shell腳本 #!/bin/bash port=$1 mongodhome=/application/mongodb-3.4.5 numactl --interleave=all $mongodhome/bin/mongod --config $mongodhome/conf/$port.conf查看全部
-
1.在復(fù)制集中加入1個(gè)節(jié)點(diǎn) a.config=rs.conf config.members[1]來(lái)添加一個(gè)節(jié)點(diǎn) b.rs.add()普通節(jié)點(diǎn) | rs.addArb() Arbiter節(jié)點(diǎn) 配置好28001.conf,data數(shù)據(jù)存放點(diǎn),log日志存放點(diǎn),啟動(dòng)后。 rs.conf() rs.add("192.168.1.1:28004") 再次查看rs.conf() 到28004節(jié)點(diǎn)查看是否已經(jīng)加入復(fù)制集。查看全部
-
oplog大小及意義: 默認(rèn)大小為linux/window當(dāng)前系統(tǒng)分區(qū)可用空間5%,體積不會(huì)超過(guò)50G --oplogSize查看全部
-
封頂表Capped colletion滾動(dòng)覆蓋寫入,固定大小。 max:5000最好不要指定,指定大小size即可。查看全部
-
復(fù)制集復(fù)制原理:異步復(fù)制機(jī)制! oplog查看全部
-
復(fù)制集合工作 初始化同步 管理維護(hù)查看全部
-
一些熱數(shù)據(jù)(經(jīng)常信息修改的數(shù)據(jù))會(huì)放置再內(nèi)存中,當(dāng)進(jìn)行clone操作時(shí)會(huì)有可能將內(nèi)存中的數(shù)據(jù)替換 所以建業(yè)在業(yè)務(wù)進(jìn)行較少時(shí)進(jìn)行查看全部
-
復(fù)制集的時(shí)間窗口會(huì)應(yīng)為clone和建立索引錯(cuò)過(guò)主表的更新查看全部
-
新加入節(jié)點(diǎn) 要drop以前的數(shù)據(jù)查看全部
-
封頂表可以在啟動(dòng)配置文件中設(shè)置大小 單位mb查看全部
-
創(chuàng)建封頂表的語(yǔ)法 注capped是關(guān)鍵查看全部
-
op對(duì)應(yīng)操作類型查看全部
-
復(fù)制集工作原理查看全部
舉報(bào)