Lesson8 Linux系统中,京淘数据库的优化(主库与从库)--Part1--配置从库

1 问题引出

虽然tomcat服务器可以配置很多个,形成集群,每台tomcat服务器的压力就小了,
可是这些tomcat服务器差不多都需要访问数据库。
而唯一的那个数据库压力依然很大。
万一哪天它GG了,那就完蛋了。
所以为数据库主服务器配置一个数据库从服务器,用来备份主服务器的数据。

2 数据库数据备份的两种方法

2.1 冷备份

定期地,人手动地去备份数据。
缺点:
1.耗时:一般公司的数据都很大(5、6G),而从主库传到从库的速度最大100多K/s,这样就需要传好几个小时。
2.由于无法预知主库什么时候会gg掉,有可能备份的不及时,主库的数据就丢失了。

但是,冷备份 是现在恢复数据的最后的有效手段。万一主库gg了,虽然有可能还没来得及备份数据到从库呢,会丢失一小部分数据,但总比数据全丢了好。

2.2 热备份

实现主数据库实时地将数据备份到从库中,保证数据尽可能的不丢失。
在这里插入图片描述

2.2.1 数据库备份的原理

1.当主库中数据发生变化时,主库会写一个日志记录一下,这个日志是0和1组成的2进制日志文件。
主库只管用异步的方式写这个日志,至于从库什么时候读取,怎么读取,人家主库不管,继续干它的活去了。
2.这时从库的IO线程发现主库写日志了,就去读取这个二进制的日志文件。
IO线程拿到这个日志后,就把日志保存到一个“中继日志”中暂时保存。
3.从库的SQL线程发现“中继日志”中有新内容了,就去用sql语句的形式读取这些内容,把结果保存到从库中。

所以 可以配置很多很多个从库 去为主库做后盾。

3 准备从库(即第2台linux虚拟机)

无论冷备份 或者 热备份 都是至少1台主数据库 1台从数据库。
而我之前的linux系统中的数据库就是主数据库。
所以我现在需要 再配置一个linux虚拟机,里面再安装个mariaDB数据库,充当从库。

我把之前我的linux虚拟机改名为:JT_LINUX_M 表名 这台虚拟机中的数据库就是主库。
我又把老师当初已经帮我配置好发给我的JT-LINUX复制了一份,运行在虚拟机中,命名为JT_LINUX_S,表名这台虚拟机中的数据库就是从库。

3.1 修改从库所在Linux虚拟机的IP

由于老师给的JT_LINUX系统是他配置过的,他把linux的IP写死为了192.168.126.129。
而如果JT_LINUX_S和JT_LINUX_M拥有同样的IP,同时运行在虚拟机中是不允许的,每个系统都要有自己的IP。
并且MobaXtem连接192.168.126.129会不知道去连谁。
所以要将JT_LINUX_S的IP改为192.168.126.130

拓展:
如果安装完linux系统发现没有IP地址:
就通过linux命令重新安装一下网卡试试。
1.service NetworkManager stop 先关闭当前的网络管理服务
2.chkconfig NetworkManager off 永久关闭 管理网卡配置检查
3.service network restart 重启network网卡

1.进入/etc/sysconfig/network-scripts/目录
在这里插入图片描述里面的 ifcfg-ens33 文件就是设置ip的文件,很重要。
借助MobaXterm打开它。
在这里插入图片描述
2.配置ifcfg-ens33文件
在这里插入图片描述

拓展: 什么是网关?

在这里插入图片描述
大家都知道,从一个房间走到另一个房间,必然要经过一扇门。同样,从一个网络向另一个网络发送信息,也必须经过一道“关口”,这道关口就是网关。顾名思义,网关(Gateway) [1] 就是一个网络连接到另一个网络的“关口”。也就是网络关卡。
网关(Gateway)又称网间连接器、协议转换器。默认网关在网络层以上实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关的结构也和路由器类似,不同的是互连层。网关既可以用于广域网互连,也可以用于局域网互连 [1] 。
【说明:由于历史的原因,许多有关TCP/IP的文献曾经把网络层使用的路由器称为网关,在今天很多局域网采用都是路由来接入网络,因此通常指的网关就是路由器的IP!】
在OSI中,网关有两种:一种是面向连接的网关,一种是无连接的网关。当两个子网之间有一定距离时,往往将一个网关分成两半,中间用一条链路连接起来,我们称之为半网关。
按照不同的分类标准,网关也有很多种。TCP/IP协议里的网关是最常用的,在这里我们所讲的“网关”均指TCP/IP协议下的网关。
那么网关到底是什么呢?网关实质上是一个网络通向其他网络的IP地址。比如有网络A和网络B,网络A的IP地址范围为“192.168.1.1~192. 168.1.254”,子网掩码为255.255.255.0;网络B的IP地址范围为“192.168.2.1~192.168.2.254”,子网掩码为255.255.255.0。在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,即使是两个网络连接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)与主机的IP 地址作 “与” 运算的结果不同判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关。如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机(如附图所示)。网络A向网络B转发数据包的过程。
所以说,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。那么这个IP地址是哪台机器的IP地址呢?网关的IP地址是具有路由功能的设备的IP地址,具有路由功能的设备有路由器、启用了路由协议的服务器(实质上相当于一台路由器)、代理服务器(也相当于一台路由器)。
在和 Novell NetWare 网络交互操作的上下文中,网关在 Windows 网络中使用的服务器信息块 (SMB) 协议以及NetWare网络使用的 NetWare 核心协议 (NCP) 之间起着桥梁的作用。网关也被称为 IP路由器。

举个现实生活中的例子:

假设你的名字叫小不点(很小,这里你就是一个url地址,指向某个网页资源),你住在一个大院子里,你的邻居有很多小伙伴,父母是你的网关。当你想跟院子里的某个小伙伴玩,只要你在院子里大喊一声他的名字,他听到了就会回应你,并且跑出来跟你玩。
但是你家长不允许你走出大门,你想与外界发生的一切联系,都必须由父母(网关)用电话帮助你联系。假如你想找你的同学小明聊天,小明家住在很远的另外一个院子里,他家里也有父母(小明的网关)。但是你不知道小明家的电话号码,不过你的班主任老师有一份你们班全体同学的名单和电话号码对照表,你的老师就是你的DNS服务器。于是你在家里和父母有了下面的对话:
小不点:妈妈(或爸爸),我想找班主任查一下小明的电话号码行吗?家长:好,你等着。(接着你家长给你的班主任拨了一个电话,问清楚了小明的电话)问到了,他家的号码是211.99.99.99
小不点:太好了!妈(或爸),我想找小明,你再帮我联系一下小明吧。
家长:没问题。(接着家长向电话局发出了请求接通小明家电话的请求,最后一关当然是被转接到了小明家家长那里,然后他家长把电话给转到小明).
就这样你和小明取得了联系。
如果搞清了什么是网关,默认网关也就好理解了。就好像一个房间可以有多扇门一样,一台主机可以有多个网关。默认网关的意思是一台主机如果找不到可用的网关,就把数据包发给默认指定的网关,由这个网关来处理数据包。默认网关。默认网关一般填写192.168.x.1

3.重启网卡,使我的修改生效
在这里插入图片描述

3.2 在从库中安装MariaDB数据库

(注意:由于只是用这个虚拟机存储数据,并不用它进行业务的处理,说以不用安装JDK)
参考 《【LINUX】将京淘项目发布到Linux系统上》 中的第3条 3 在Linux系统中怎么安装MariaDB数据库?
https://blog.csdn.net/weixin_42752402/article/details/108456227

安装完后,导入主库的数据库文件。

主库JT_LINUX_M之前已经将它的数据库文件 进行了 冷备份:
在这里插入图片描述

在从库 JT_LINUX-S中 我只需要定期把人家备份的文件再导进来就可以了。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值