特殊从节点
简单介绍
arbiter节点:
主要负责选主过程中的投票,但是不存储任何数据,也不提供任何服务
hidden节点:
隐藏节点,不参与选主,也不对外提供服务。
delay节点:
延时节点,数据落后于主库一段时间,因为数据是延时的,也不应该提供服务或参与选主,所以通常会配合hidden(隐藏)
一般情况下会将delay+hidden一起配置使用
配置延时节点(一般延时节点也配置成hidden)
my_repl:PRIMARY> rs.conf()
......
{
"_id" : 3,
"host" : "10.0.50.61:28020",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1, // 选主权重,数值越大,权重越高
"tags" : {
},
"slaveDelay" : NumberLong(0), // 延时的秒数
"votes" : 1
}
],
......
my_repl:PRIMARY>
cfg=rs.conf() //定义配置为cfg变量
cfg.members[2].priority=0 //定义权重为0,不参与选主
cfg.members[2].hidden=true //隐藏节点,不参与业务,应用端是看不到的
cfg.members[2].slaveDelay=120 //延时节点,单位秒(根据实际需求计算)
cfg.members[3].votes=0 //投票数为0
rs.reconfig(cfg) //重新加载配置
my_repl:PRIMARY> cfg=rs.conf()
my_repl:PRIMARY> cfg.members[3].priority=0
0
my_repl:PRIMARY> cfg.members[3].hidden=true
true
my_repl:PRIMARY> cfg.members[3].slaveDelay=120
120
my_repl:PRIMARY> cfg.members[3].votes=0
0
my_repl:PRIMARY> rs.reconfig(cfg)
{
"ok" : 1,
"operationTime" : Timestamp(1603521419, 1),
"$clusterTime" : {
"clusterTime" : Timestamp(1603521419, 1),
"signature" : {
"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"keyId" : NumberLong(0)
}
}
}
my_repl:PRIMARY> rs.conf()
取消以上配置
cfg=rs.conf()
cfg.members[3].priority=1
cfg.members[3].hidden=false
cfg.members[3].slaveDelay=0
rs.reconfig(cfg)
配置成功后,通过以下命令查询配置后的属性
rs.conf();
副本集其他操作命令
查看副本集的配置信息
admin> rs.conf()
查看副本集各成员的状态
admin> rs.status()
++++++++++++++++++++++++++++++++++++++++++++++++
--副本集角色切换(不要人为随便操作)
admin> rs.stepDown()
注:
admin> rs.freeze(300) //锁定从,使其不会转变成主库
freeze()和stepDown单位都是秒。
+++++++++++++++++++++++++++++++++++++++++++++
设置副本节点可读:在副本节点执行
admin> rs.slaveOk()
eg:
admin> use app
switched to db app
app> db.createCollection('a')
{ "ok" : 0, "errmsg" : "not master", "code" : 10107 }
查看副本节点(监控主从延时)
admin> rs.printSlaveReplicationInfo()
source: 192.168.1.22:27017
syncedTo: Thu May 26 2016 10:28:56 GMT+0800 (CST)
0 secs (0 hrs) behind the primary
OPlog日志(备份恢复章节)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律