00:00
这一章呢,我们来讲垂直分片,在讲垂直分片之前呢,我们来看一下之前我们在高性能架构模式当中,曾经对数据库分片架构的垂直分片的一个讲解,那么在这个里面呢,我们提到了两种垂直分片的方式,第一种是垂直分库,第二种呢是垂直分表,我们先来说一下垂直分表,垂直分表呢,实际上就是在一个数据库表当中,那么把一些列呢,单独的拆分出来,拆分出另一张数据库表,那我们啊会发现这两个数据库表呢,它实际上在拆分之后呢,他们的关系也是非常密切的,所以呢,为了避免一些不必要的跨服务的事务性的操作,那么我们一般情况下不会把它们分散到不同的数据库当中,因为他们两个非常密切,通常情况下,我们要做查询的话呢,很可能是一个关联查询,所以呢,我们针对这样的一个数据库表来说的话呢,它实际上。
01:00
就是业务相关的两张数据库表,那我们拆分之后呢,可能这面是一张表哦,这面是一张表,那这就是两张普通的一对一关联的数据库表,就像我们平时应用程序当中有一些一对多关联的表,或者是多对多关联的表一样去处理就好了啊,所以呢,我们的Sha fair呢。不会针对这种呃,数据库表呢做特殊的处理,那么我们的SPA所针对的呢,是前面垂直分片架构当中的垂直分库这样的一个场景,垂直分库的场景当中呢,我们会把。涉及到不同业务的数据库表,分散到不同的数据库当中,那我们的例子呢,也是针对这样的一个垂直分库的例子啊来设计的好。所以说呢,我们再来看第五章当中的服务器的准备,那这两台服务器呢,就是一个业务分库的服务器,首先呢,我们假设也是一个商城系统,那么在商城系统里面呢,有用户相关的表,有订单相关的表,那么为了简单起见呢,这个里面我们就设计两张表,一个是用户表,一个是订单表,我们把他们两个分散到两台服务器当中,这两台服务器呢,分别是3301和3302。
02:19
然后呢,这两台服务器上面呢,分别有DB数据和DB数据,好接下来呢,我们就在docker服务当中去创建这两个容器,那么建议大家呢,在创建新的容器之前呢,先把之前不用的容器关掉,否则的话呢,它是占用你的服务器资源的哈。我们用S有的容,现有的容。我把它展开看一下啊,把它弄得宽一点。好,现有的容器呢,有一和,我们把这三个呢都给它停掉,那么停止容器的方式呢,是ER stop。
03:05
硅谷一。好,第二个呢,是艾特硅谷。好,第三个呢,是。我们在docker PS看一下。那么现在呢,已经没有正在启动的容器了,所以呢,我们在这种情况下呢,再去创建新的容器。那首先呢,我们来创建server user这个容器,创建容器的命令呢,和之前都是一样的,嗯,所以我们这个映射的端口呢,是3301,然后它的映射的配置文件的径呢是。
04:01
它的映射的文件的路径呢,是r user。那么它的初始密码呢,也是123456,还有呢,就是它的容器的名字叫user,最后呢,我们是基于MYS8的0.29这样的一个镜像来创建我们的容器,好我们把它复制一下。没撤。好,这是我们的第一个容器,然后呢,我们登录这容器。看一看能不能登录成功。好,已经登录进来了,说明容器呢已经被创建出来了,然后我们看一看买SQL服务能不能登录进去。好,输入密码已经成功的登录了,然后接下来呢,我们还是修改默认的密码插件。或者是啊,也可以把它解释为默认的密码校验方式。
05:01
那接下来呢,我们在。这个容器当中呢,去创建一个数据叫D,然后呢,D呢创C表呢,它也有ID和u name这样的两个字段,和前面我们创建的TOC表呢是一样的。我们直接把这个词库脚本呢复制过来。好,现在呢已经成了,那么这个呢,是我们的serve user个容好为呢我们打开。在这个里面呢。我们把我们新创建的容器呢。给他做一个连接。那这面呢,是吧。3301。
06:04
好,他的端口是301,然后测试连接。好,这样的话呢,我们就完成了第一台服务器的创建和连接。接下来呢,我们来看第二台服务器。我们来用相同的方式呢来创建serve的容器,那么它的端口呢是3302。它映射的路径呢,是server order config和server。然后的容的名字叫是2456。我们再复制一个命令行窗口。好在这个地方呢,我们执行命令,这样的话呢,容器就创建出来了,然后呢,我们还是进入容器。我们用MySQL root-P登录MYSQL服务器。
07:05
最后呢?我们修改默认的密码校验方式。好。这样的话呢,我们第二台服务器呢,也创建并连接成功了,然后呢,我们在第二台服务器当中呢,创建DB数据库,那在DB order数据库当中呢,我们创建一个t order表,那这个t order表里面呢,也有ID,另外呢,除了ID作为主件并且是自增长的之外,我们还有一个订单号,还有一个用户ID,还有一个订单金额哈,好,我们复制一下这个色扣。那现在呢,我们的数据和数据库表呢,也创建出来了,最后呢,我们在药物当中呢,做一个远程连接。
08:01
那这个连接我们给起个名字。3302。然后。IP呢,192.168。100.201。密码端口号3302。好,这样的话呢,我们就连接上了这两台服务器,并且我们可以看一下这里面呢,已经有DB user数据和表了,这面也是一样的,有D数据表。
我来说两句