00:01
好,咱们搭建好买cat的这个一主一从的读写分离,其实这块呢,有咱们买cat,还有咱们的my circle主从复制啊合并完成的这项功能,那之后呢,咱们再去扩展一下啊,带着各位搭建双主从的读写分离啊,那这块呢,首先啊,咱们还是分成两部分啊,第一部分先在各位搭建买S库的双主双重啊,还得记住咱们买S库去实现,然后之后呢,再在咱们买cat上啊,去实现它的一个读写分离啊,带着各位咱们去搭建一下,就是相对而言呢,可能咱买S扣这块的步骤更多一些啊,咱们看一下啊,首先一个主机M1啊,用于处理所有的写请求,然后呢,它的这个从机啊是S1和另外一台主机M2,还有另外一台啊,这个M2的这个从集S2负责所有的这个读请求啊这块呢,当然咱们什么呢,设置上也可以让咱们的这个,呃,M1也去什么呢,进入到咱们这。
01:01
个读请求的一个处理上啊,但是写请求只发给M1,完成这个,诶咱们的双主双层的读写分离,那之后呢,当我这个M1宕机后啊,M2就负责写请求了,完成咱们的诶主备的切换,也就说M1M2互为主备,咱们通过这个图也能看出来啊哎,客户端通过my cat访问啊,后面到底几个数据库哎,到底谁是主,谁是从咱们的客户端是不需要考虑的,诶只需要把请求发给my cat my cat,诶根据实际情况啊,根据咱们配置哎,发送请求给什么的后端,诶咱们的这些数据库,那在后面数据库啊,咱们也能看到,哎咱们的MASTER1,也就是M1啊这块呢,有一个从机哎SLAVE1,然后呢,咱们的MASTER2啊,这个咱们的哎这个第二台主机,它有一个从机是SLAVE2,但是各位一定要注意啊,哎,能写的主机只能有一台啊,就是咱们的什么呢在这儿,哎,就是咱们的MASTER1,然后这块呢,但凡MASTER1出现宕机型。
02:01
情况,那这块呢,哎,咱们的master star可以什么呢?再去替换它主被做一个切换啊完成咱们的哎这个双主双重的读写分离啊带着各位咱们把这个原理先过一下,那这块呢,需要咱们做一些准备工作,第一个准备工作啊,咱们得需要什么呢?诶四个买四五数据库,而且同时咱们需要四个MYSQ,哎这个部署在啊四台咱们的虚拟机上,说白了这块得需要四台机器啊这块呢,哎对于咱们来说啊,诶想要搭建什么的高可用啊,处理什么呢?诶一些这个高仿量高并发的情况下,必须得需要什么呢?哎,通过主机啊增加去搭建咱们的这个集群环境,来实现咱们的负载均衡,来实现咱们的主备的一个什么们的,哎这个相关的架构搭建,所以这块呢,哎,避免不了咱们要引入新的主机给各位看一下啊,首先啊,咱们之前搭一主一层的,主层复制的时候用到两台机器,一个是100,一个是99,哎这。
03:01
两台机器分别是咱们的哎,Master还有silver,那再往后呢,哎,咱们需要在之前的基础上啊,我把之前的那个呃主从复制先给它清干净啊,咱们是之后呢重新搭建啊,就是重新搭建这个双主双层的这种结构,那这块呢,哎,咱们去看一下啊,还得需要另外两台机器,就是我这个IP地址为9897,这两台机器他们的主机名分别是艾特硅谷零三,艾特硅谷零四,诶分别是咱们的MASTER2和什么呢,LEVEL2啊这块呢,咱们另外两个角色啊也准备好,那之后呢,哎,通过这四台机器四个买S数据库,咱们搭建起双主双从的,诶主从复制那这块呢啊,其实配置文件上面呢,跟之前大同小异,先在各位咱们看一下啊,这个先理解清楚咱们怎么去搭建它的步骤是什么,咱们再动手去什么的,一步一步搭建好,那首先第一个啊,咱们需要去改咱们的MASTER1的配置啊,同样这个serve ID这不用多说啊。
04:01
还有这个二级日志也是一样,诶,你要复需要复制的数据库也是在这儿指定一下就可以啊,但是呢,这块啊,还有这个咱们B浪的日志的格式也都是一样的,这些跟之前一模一样,但是区别在这儿啊,咱们需要去什么呢?设置下啊,咱们的什么呢?哎,这个log slave update啊咱们什么呢?哎,什么意思,添加这个配置项,哎咱们要去开启一个功能,就是当我作为从数据库的时候,哎有写入操作,也要更新二啊二进制日志文件,说白了就是咱们虽然是MASTER1,但是各位咱们这块有主备的角色的。也说当我MASTER1为主机的时候,我MASTER2为倍机,也就是说它也是跟这个底下维从级的概念差不多,也需要去复制它的什么呢?诶MASTER1里面的啊,所有的那些写操作,然后呢,在我这个MASTER2进行一个什么呢来处理,你说老师那不就是,哎又是一个层级,诶这个确实是啊,但是它有双角色,一个是作为slaveor的,它的什么呢?主机存在,另外一个它作为这个MASTER1的,它的层级存在啊各位这块,呃,这个相对而言正好有相应的箭头啊,能看到呃,通过咱们MASTER1相关数据复制到MASTER2,但是各位但凡我MASTER1呃,这个宕机之后,还是给各以画一下,咱们这块可能得得再去理解一下,当我这个MASTER1存在的时候,我MASTER2作为MASTER1的一个从击啊,我M2作为M1的一个从击啊,需要去复制它的数据。
05:32
所以这块呢,哎,我同样得什么复制它B日志里面的内容,然后呢,还有一个当我的这个MASTER1啊,在M1这个主机宕机的情况下。当它出现这种宕机的情况,哎宕机了,那这块呢,我们MA42,哎咱们整个架构是不能,哎没有什么呢,是不是协主机的对吧,我们MA42作为什么呢?写主机上线啊,作为咱们写主机上线,但是呢,诶当我master一再恢复这个什么呢?这个主机再起起来之后,它就不是写入主机了,各位一定要注意啊,这时候主备做个切换啊,这个MASTER2作为咱们的主机。
06:09
它作为主机,而MASTER1作为MASTER2的一个从机啊,作为它的一个备机出现了,那这块呢,是不是也得把咱们的MASTER2里面的数据,是不是也得去复制到咱们的MASTER1里面,比如说咱们的这个MASTER1MASTER2互为主备。大家这块一定要注意啊,它是是互为主备的,所以相对而言MASTER1MASTER2都有机会去什么呢?是不是来读取咱们的槟浪和日志去复制数据啊啊所以这块呢,哎这块要明白了,他们俩的一个角色,所以呃这个因此它的配置文件会多这三项啊多这三项一个是哎咱们也要这个做这个相关操作的时候,作为重复时候也要去写入二进制日志,因为它是诶还要做后续的给从击进行复制呢,啊他也得去复制二进日日制,这是哎需要咱们注意的,那还有就是在这儿啊,咱们是什么呢?哎,咱们的这个自增长的这个,诶咱们的诶这个自增长的字段啊,咱们的这个my soq数据库可以设置自增长啊,自增长的这个这个字段呢,它的递增的量是多少?
07:14
那咱们去设置一下,我这设置为二啊,这块呢,为什么设置为二呢?因为它本身就两台主机啊,咱们这两台主机它这个什么呢?自增长的这个ID数啊,这块咱们要区分开,那这块呢,它从哪个数值开始呢?从一开始,那跟它相对应的MASTER2,哎,它自增长的这个数量也是二,但是它的什么第一个数值是从二开始这样什么呢?两个master的数据是不会重复的啊,这两个必须要区分开啊对这块呃,咱们必须要加的一个配置跟之前不一样的地儿,而咱们两个层级就好办了,两个层级跟之前一模一样,但是各位留意他们所对应的什么呢?再去看一眼索定呢,这个SOID全都不一样啊,咱们呢,两个master,一个MASTER1,它的ID是一,它的什么呢?这个MASTER2 SOID为三,然后再后呢,呃,咱们SLAVE1SERVE ID为二啊,咱们的这个SLAVE2SERVE ID为四,那搭建步骤首先啊,咱们先去啊,这个按照咱们熟悉的方式搭建这个MASTER1跟。
08:15
一啊,搭建起它的主存关系,然后呢,这个时候搭建好了以后呢,也不要做任何写的操作,这个时候呢,咱们还要做另外一个事儿,哎,搭建这个master跟462的主从复制关系啊把这两个分别搭建起来,但是是不是这还有两条线呢?哎下面做的就是咱们之前没有做过事儿了,咱们去看看需要做什么事啊,诶了解一下这个相关方案,当我这个什么呢?诶咱们的这个SLAVE1复制SLAVE2,咱们的SLAVE2哎复啊这个SLAVE1复制MASTER1啊这个SLAVE2复制MASTER2之后完成之后咱们需要做这个下面的事情,哎需要做下面呢,咱们就看一眼。两个主机互什么呢?互相复制,比如说哎,我master去复制MASTER1叫什么呢?哎,这个咱们去什么呢?做主从复制的相关的命令啊,连接过去进行复制,然后同样MASTER1也要复制MASTER2,相互之间啊互相复制啊这块呢,哎,也是采用咱们主从复制的那个步骤,相互之间咱们把它搭建起来,这个时候咱们把所有的什么呢,复制关系都搭建好,都确认是yes之后,那下面就可以实现咱们的双主双从的组从复制啊各位这块呢,还是让呃咱们先把方案过一下,然后之后呢,咱们动手操作,哎感受一下看到底是不是啊,一步一步哎把这个功能都实现出来。
我来说两句