对关系型数据库进行扩容的方法及系统技术方案

技术编号:29988460 阅读:37 留言:0更新日期:2021-09-11 04:24
本发明专利技术实施例公开对关系型数据库进行扩容的方法及系统。该方法包括:采用物理备份方式对关系型数据库的第一数据库实例进行备份,以获得备份文件;建立并启用第二数据库实例;根据备份文件,基于第二数据库实例进行数据恢复,以得到多个第二数据库;实施禁写操作,以禁止应用服务向多个第一数据库写入数据;将应用服务对至少一个第一数据库的访问切换为对至少一个的第二数据库的访问;解除禁写操作,以允许应用服务向多个第一数据库写入数据。本发明专利技术采用物理备份方式进行备份和数据恢复,因此速度更快,且无需与第一数据库实例产生交互,不会对第一数据库实例产生性能压力,也不会影响到应用服务的正常业务处理。响到应用服务的正常业务处理。响到应用服务的正常业务处理。

【技术实现步骤摘要】
对关系型数据库进行扩容的方法及系统


[0001]本专利技术涉及数据库
,具体而言,涉及一种对关系型数据库 进行扩容的方法及系统。

技术介绍

[0002]对于绝大部分应用而言,关系型数据库所承担的职责是整个数据管 理系统中最为核心基础的,不光直接影响到终端用户的服务体验,同时 也是业务数据的最后一道保险。
[0003]在业务发展的初期和中期,关系型数据库将要存储的数据量并不庞 大,出于成本考虑,此时用户会采用单机关系型数据库存储数据,单机 关系型数据库的存储容量相对有限,当业务发展到后期,数据库存储容 量不足的问题便会暴露出来,此时需要对关系型数据库进行扩容。然而, 对数据库进行扩容会影响到正常的业务处理。
[0004]因此,如何高效地进行关系型数据库的扩容且降低对正常的业务处 理的影响,值得思考。

技术实现思路

[0005]本专利技术的目的是提供一种对关系型数据库进行扩容的方法及系统, 在高效地完成关系型数据库扩容的情况下,降低对正常的业务处理的影 响。
[0006]为了达到这个目的,根据本专利技术的第一方面,本专利技术实施例提供一 种对关系型数据库进行扩容的方法,包括:
[0007]采用物理备份方式对所述关系型数据库的第一数据库实例进行备份, 以获得备份文件,所述第一数据库实例管理多个第一数据库;
[0008]建立并启用第二数据库实例;
[0009]根据所述备份文件,基于所述第二数据库实例进行数据恢复,以得 到由所述第二数据库实例管理的多个第二数据库;
[0010]实施禁写操作,以禁止所述应用服务向所述多个第一数据库写入数 据;
[0011]将所述应用服务对至少一个第一数据库的访问切换为对至少一个第 二数据库的访问;
[0012]解除禁写操作,以允许所述应用服务向多个所述第一数据库写入数 据。
[0013]可选地,所述方法还包括:将禁写和解除禁写操作期间被禁止写入 的数据写入相应的第一数据库。
[0014]可选地,所述方法还包括:将所述第一数库实例的所述备份文件之 后的增量数据同步到所述第二数据库实例的相应第二数据库。
[0015]可选地,所述方法还包括:删除所述至少一个第一数据库,以及删 除所述第二数据库实例管理的所述至少一个第二数据库之外的其他第二 数据库。
[0016]可选地,通过修改数据库路由规则实现实施禁写操作、访问切换和 解除禁写操作
的步骤。
[0017]可选地,其中,所述关系型数据库为MySQL数据库,利用MySQL数 据库提供的物理备份工具进行物理备份和数据恢复,并利用MySQL的binlog日志将禁写和解除禁写操作期间所述应用服务被禁止写入的数 据写入相应的第一数据库。
[0018]可选地,利用数据库备份服务获得所述备份文件,所述数据库备份 服务定期对所述关系型数据库的第一数据库实例进行物理备份。
[0019]可选地,所述第一数据库实例和所述第二数据库实例部署在不同服 务器上。
[0020]第二方面,本专利技术实施例提供一种对关系型数据库进行扩容的方法, 包括:
[0021]采用物理备份方式对所述关系型数据库的第一数据库实例进行备份, 以获得备份文件,所述第一数据库实例管理第一数据库,所述第一数据 库包括多个第一数据库表;
[0022]建立并启用第二数据库实例;
[0023]根据所述备份文件,基于所述第二数据库实例进行数据恢复,以得 到由所述第二数据库实例管理的第二数据库,所述第二数据库包括多个 第二数据库表;
[0024]实施禁写操作,以禁止应用服务向所述第一数据库写入数据;
[0025]将所述应用服务对至少一个第一数据库表的访问切换为对至少一个 的第二数据库表的访问;
[0026]解除禁写操作,以允许所述应用服务向所述第一数据库写入数据。
[0027]可选地,所述方法还包括:将实施禁写和解除禁写操作期间应用服 务被禁止写入的数据写入相应的第一数据库表和第二数据库表中。
[0028]可选地,所述方法还包括:将所述第一数库实例的所述备份文件之 后的增量数据同步到所述第二数据库实例的第二数据库中。
[0029]可选地,所述方法还包括:删除所述至少一个第一数据库表;以及 删除所述第二数据库的所述至少一个第二数据库表之外的其余第二数据 库表。
[0030]可选地,通过修改数据库路由规则实现实施禁写操作、访问切换和 解除禁写操作的步骤。
[0031]可选地,根据权利要求10所述的方法,其中,所述关系型数据库为MySQL数据库,利用MySQL数据库提供的物理备份工具进行物理备份和 数据恢复,并利用MySQL的binlog日志将禁写和解除禁写操作期间所述 应用服务被禁止写入的数据写入相应的第一数据库表和/或第二数据库 表中。
[0032]第三方面,本专利技术实施例提供一种对关系型数据库进行扩容的系统, 包括:
[0033]物理备份模块,用于采用物理备份方式对所述关系型数据库的第一 数据库实例进行备份,以获得备份文件,所述第一数据库实例管理多个 第一数据库;
[0034]实例创建模块,用于建立并启用第二数据库实例,根据所述备份文 件,基于所述第二数据库实例进行数据恢复,以得到由所述第二数据库 实例管理的多个第二数据库;
[0035]访问切换模块,用于实施禁写操作,以禁止应用服务向多个所述第 一数据库写入数据,然后将所述应用服务对至少一个所述第一数据库的 访问切换为对至少一个所述第二数据库的访问,再对所述应用服务解除 禁写操作;
[0036]数据同步模块,用于将实施禁写和解除禁写操作期间所述应用服务 被禁止写入的数据写入相应的第一数据库,并将所述第一数库实例的所 述备份文件之后的增量数据
同步到所述第二数据库实例的相应第二数据 库。
[0037]第四方面,本专利技术实施例提供一种对关系型数据库进行扩容的系统, 包括:
[0038]物理备份模块,用于采用物理备份方式对所述关系型数据库的第一 数据库实例进行备份,以获得备份文件,所述第一数据库实例管理第一 数据库,所述第一数据库包括多个第一数据库表;
[0039]实例创建模块,用于建立并启用第二数据库实例,并根据所述备份 文件,基于所述第二数据库实例进行数据恢复,以得到由所述第二数据 库实例管理的第二数据库,所述第二数据库包括多个第二数据库表;
[0040]访问切换模块,用于实施禁写操作,以禁止应用服务向所述第一数 据库写入数据,然后将所述应用服务对至少一个所述第一数据库表的访 问切换为对至少一个所述第二数据库表的访问,再解除禁写操作,以允 许所述应用服务向所述第一数据库写入数据;
[0041]数据同步模块,用于将实施禁写和解除禁写操作期间所述应用服务 被禁止写入的数据写入相应的所述第一数据库表,以及将所述第一数库 实例的所述备份文件之后的增量数据同步到所述第二数据库实例的第二 数据库。<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种对关系型数据库进行扩容的方法,包括:采用物理备份方式对所述关系型数据库的第一数据库实例进行备份,以获得备份文件,所述第一数据库实例管理多个第一数据库;建立并启用第二数据库实例;根据所述备份文件,基于所述第二数据库实例进行数据恢复,以得到由所述第二数据库实例管理的多个第二数据库;实施禁写操作,以禁止应用服务向多个所述第一数据库写入数据;将所述应用服务对至少一个所述第一数据库的访问切换为对至少一个所述第二数据库的访问;解除禁写操作,以允许所述应用服务向多个所述第一数据库写入数据。2.根据权利要求1所述的方法,还包括:将实施禁写和解除禁写操作期间所述应用服务被禁止写入的数据写入相应的所述第一数据库。3.根据权利要求2所述的方法,还包括:将所述第一数库实例的所述备份文件之后的增量数据同步到所述第二数据库实例的相应第二数据库。4.根据权利要求1所述的方法,还包括:删除所述至少一个第一数据库,以及删除所述第二数据库实例管理的所述至少一个第二数据库之外的其他第二数据库。5.根据权利要求1所述的方法,其中,通过修改数据库路由规则实现实施禁写操作、访问切换和解除禁写操作的步骤。6.根据权利要求2所述的方法,其中,所述关系型数据库为MySQL数据库,利用MySQL数据库提供的物理备份工具进行物理备份和数据恢复,并利用MySQL的binlog日志将禁写和解除禁写操作期间所述应用服务被禁止写入的数据写入相应的第一数据库。7.根据权利要求1所述的方法,其中,利用数据库备份服务获得所述备份文件,所述数据库备份服务定期对所述关系型数据库的第一数据库实例进行物理备份。8.根据权利要求1至7任意一项所述的方法,其中,所述第一数据库实例和所述第二数据库实例部署在不同服务器上。9.一种对关系型数据库进行扩容的方法,包括:采用物理备份方式对所述关系型数据库的第一数据库实例进行备份,以获得备份文件,所述第一数据库实例管理第一数据库,所述第一数据库包括多个第一数据库表;建立并启用第二数据库实例;根据所述备份文件,基于所述第二数据库实例进行数据恢复,以得到由所述第二数据库实例管理的第二数据库,所述第二数据库包括多个第二数据库表;实施禁写操作,以禁止应用服务向所述第一数据库写入数据;将所述应用服务对至少一个第一数据库表的访问切换为对至少一个的第二数据库表的访问;解除禁写操作,以允许所述应用服务向所述第一数据库写入数据。10.根据权利要求9所述的方法,还包括:将实施禁写和解除禁写操作期间所述应用服务被禁止写入的数据写入相应的第一数据库表。11.根据权利要求10所述的方法,还包括:将所述第一数库实例的所述备份文件之后的增量数据同步到所述第二数据库实例的所述第二数据库。
12.根据权利要求9所述的方法,还包括:删除所述至少一个...

【专利技术属性】
技术研发人员:吴迪吴学强
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1