mysql主从 副本集,MongoDB的主从、副本集模式

01.介绍

MongoDB有主从、副本、鉴权模式。

而主从模式官方目前不推荐了,取而代之的是副本集模式,参照:https://docs.mongodb.com/v3.4/core/master-slave/;主从模式,雷同mysql的主从模式,由主master写入数据,同步到slave库,而从slave只有只读模式,假如主模式宕机,那么就要手动切换从模式到主模式。

官方推荐使用副本集模式,副本集是互为主从的模式,雷同mysql的主主模式(这里只有一个主可写),多个服务器保存同一份数据,可自动切换故障。

分片模式是处理大量的数据,将数据分开存储,每一个服务器的数据是不一样的,他们的总体就是他们的整体数据。

02.主从模式

2.1 主从模式的原理

主节点的操作记录为oplog,oplog存在mongodb库的local库的集合oplog.$main中,这个集合都是主节点操作的记录。从库会从主库的oplog中获取oplog的数据在从库的本机执行一遍,新的覆盖旧的数据。

> use local

switched to db local

> show collections

me

oplog.$main

sources

startup_log

2.2 主从模式例子

主:192.168.0.21:27017

从:192.168.0.22:27017

安装:

echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6

sudo apt-get update

sudo apt-get install -y mongodb-org

主从启动:

$ sudo mongod -master -dbpath /var/lib/mongodb --主启动

$ sudo mongod -slave -dbpath /var/lib/mongodb -source 192.168.0.21:27017 --从启动

数据测试:

主插入数据:

> db.user.find()

> db.user.insert({name:'maitest'})

WriteResult({ "nInserted" : 1 })

> db.user.find()

{ "_id" : ObjectId("5c750f84b278a5a72c9f4959"), "name" : "maitest" }

设置从,并查看数据:

> rs.slaveOk()

> db.user.find()

{ "_id" : ObjectId("5c750f84b278a5a72c9f4959"), "name" : "maitest" }

主从手动故障切换:

$ sudo mongod -master -dbpath /var/lib/mongodb --原从启动[192.168.0.21]

$ sudo mongod -slave -dbpath /var/lib/mongodb -source 192.168.0.22:27017 --原主启动[192.168.0.22]

$ sudo mongod -slave -dbpath /var/lib/mongodb -source 192.168.0.22:27017 --autoresync --出现dead时要加这个参数,因为数据差异大,自动重新同步

03.副本集模式

3.1 副本集原理

副本集是主从的升级,可以做自动故障切换,提高了容错性。官方推荐至少三个成员(需要一个仲裁者[Arbiter不具备副本数据,只是投票者,也不能成为主],一主,一从),[参照https://docs.mongodb.com/v3.4/core/replica-set-members/],最多按照官方版本不一样设计。mongodb3.0.0以前是最多12个,3.0.0后50个,7个仲裁者。

3.2 搭建副本模式

参照:https://docs.mongodb.com/v3.4/tutorial/deploy-replica-set/

master:192.168.0.21:27017

slave1:192.168.0.22:27017

slave2:192.168.0.23:27017

具体 【 副本集 】操作参照:https://www.mairoot.com/?p=2225

12d0521ac956e3d9aae084bd8c792be1.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值