一种数据库变配方法和装置制造方法及图纸

技术编号:34519844 阅读:11 留言:0更新日期:2022-08-13 21:08
本发明专利技术公开了一种数据库变配方法和装置,涉及数据库技术领域。该方法的一具体实施方式包括:新建第一数据库集群,所述第一数据库集群包括第一主数据库和第一从数据库;采用指定的数据库拷贝方式或者基于预设策略确定的数据库拷贝方式,将第二数据库集群的数据拷贝至所述第一数据库集群;对所述第一数据库集群和所述第二数据库集群开启只读模式,对所述第二数据库集群与所述第一数据库集群进行身份标识切换;关闭所述第一数据库集群的只读模式。该实施方式能够解决全量数据拷贝时间长和增量数据同步时间长的技术问题。量数据同步时间长的技术问题。量数据同步时间长的技术问题。

【技术实现步骤摘要】
一种数据库变配方法和装置


[0001]本专利技术涉及数据库
,尤其涉及一种数据库变配方法和装置。

技术介绍

[0002]当需要变更数据库集群的配置时,以公有云MySQL(Percona、MariaDB同样适用)数据库为例,如果将存储空间为2TB的数据库集群(真实数据量1.2TB),变更空间到1.5TB(用户想缩容),需要新建一个数据库集群(包括一个主数据库和一个从数据库),然后在原有数据库集群的从数据库上复制数据到新建集群的主数据库,再从新建集群的主数据库上复制数据到新建集群的从数据库,等待新建集群的主数据库和原有集群的主实例数据一致后进行切换,从而完成配置变更。
[0003]在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0004]1)需要拉取两次全量数据,导致全量数据拷贝时间长,延长了变配时间,也浪费了计算资源和网络带宽;2)主从数据库的延迟导致增量数据同步时间长。

技术实现思路

[0005]有鉴于此,本专利技术实施例提供一种数据库变配方法和装置,以解决全量数据拷贝时间长和增量数据同步时间长的技术问题。
[0006]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种数据库变配方法,包括:
[0007]新建第一数据库集群,所述第一数据库集群包括第一主数据库和第一从数据库;
[0008]采用指定的数据库拷贝方式或者基于预设策略确定的数据库拷贝方式,将第二数据库集群的数据拷贝至所述第一数据库集群;
[0009]对所述第一数据库集群和所述第二数据库集群开启只读模式,对所述第二数据库集群与所述第一数据库集群进行身份标识切换;
[0010]关闭所述第一数据库集群的只读模式。
[0011]可选地,采用指定的数据库拷贝方式或者基于预设策略确定的数据库拷贝方式,将第二数据库集群的数据拷贝至所述第一数据库集群,包括:
[0012]判断是否指定了数据拷贝方式;
[0013]若是,则按照指定的数据拷贝方式将第二数据库集群的数据拷贝至所述第一数据库集群;其中,所述第二数据库集群包括第二主数据库和第二从数据库;
[0014]若否,则基于第二数据库集群中的第二主数据库和第二从数据库之间的延迟时间,采用从数据库并行拷贝方式或者主数据库串行拷贝方式,将所述第二数据库集群的数据拷贝至所述第一数据库集群。
[0015]可选地,基于第二数据库集群中的第二主数据库和第二从数据库之间的延迟时间,采用从数据库并行拷贝方式或者主数据库串行拷贝方式,将所述第二数据库集群的数据拷贝至所述第一数据库集群,包括:
[0016]判断第二数据库集群中的第二主数据库与第二从数据库之间的延迟时间是否大于等于第一时间阈值;
[0017]若是,则采用主数据库串行拷贝方式,将所述第二数据库集群的数据拷贝至所述第一数据库集群;
[0018]若否,则采用从数据库并行拷贝方式,将所述第二数据库集群的数据拷贝至所述第一数据库集群。
[0019]可选地,所述指定的数据拷贝方式为从数据库串行拷贝方式、从数据库并行拷贝方式、主数据库串行拷贝方式和主数据库并行拷贝方式中的一种。
[0020]可选地,若所述指定的数据拷贝方式为从数据库串行拷贝方式,
[0021]则按照指定的数据拷贝方式将第二数据库集群的数据拷贝至所述第一数据库集群,包括:
[0022]将第二从数据库的全量数据拷贝到第一主数据库,启动所述第一主数据库的数据库服务;
[0023]将所述第一主数据库的全量数据拷贝到第一从数据库,启动所述第一从数据库的数据库服务;
[0024]在所述第一从数据库上执行主从复制命令,以将所述第一主数据库的增量数据同步到所述第一从数据库;
[0025]在所述第一主数据库上执行主从复制命令,以将所述第二主数据库的增量数据同步到所述第一主数据库。
[0026]可选地,若所述指定的数据拷贝方式为从数据库并行拷贝方式,
[0027]则按照指定的数据拷贝方式将第二数据库集群的数据拷贝至所述第一数据库集群,包括:
[0028]将第二从数据库的全量数据并行地拷贝到第一主数据库和第一从数据库,启动所述第一主数据库的数据库服务和所述第一从数据库的数据库服务;
[0029]在所述第一从数据库上执行主从复制命令,以将所述第一主数据库的增量数据同步到所述第一从数据库;
[0030]在所述第一主数据库上执行主从复制命令,以将所述第二主数据库的增量数据同步到所述第一主数据库。
[0031]可选地,若所述指定的数据拷贝方式为主数据库串行拷贝方式,
[0032]则按照指定的数据拷贝方式将第二数据库集群的数据拷贝至所述第一数据库集群,包括:
[0033]将第二主数据库的全量数据拷贝到第一主数据库,启动所述第一主数据库的数据库服务;
[0034]将所述第一主数据库的全量数据拷贝到第一从数据库,启动所述第一从数据库的数据库服务;
[0035]在所述第一从数据库上执行主从复制命令,以将所述第一主数据库的增量数据同步到所述第一从数据库;
[0036]在所述第一主数据库上执行主从复制命令,以将所述第二主数据库的增量数据同步到所述第一主数据库。
[0037]可选地,若所述指定的数据拷贝方式为主数据库并行拷贝方式,
[0038]则按照指定的数据拷贝方式将第二数据库集群的数据拷贝至所述第一数据库集群,包括:
[0039]将第二主数据库的全量数据并行地拷贝到第一主数据库和第一从数据库,启动所述第一主数据库的数据库服务和所述第一从数据库的数据库服务;
[0040]在所述第一从数据库上执行主从复制命令,以将所述第一主数据库的增量数据同步到所述第一从数据库;
[0041]在所述第一主数据库上执行主从复制命令,以将所述第二主数据库的增量数据同步到所述第一主数据库。
[0042]可选地,将第二从数据库的全量数据并行地拷贝到第一主数据库和第一从数据库,包括:
[0043]通过Xtrabackup工具和tee工具,将第二从数据库的全量数据复制成两份待拷贝数据,从而将所述两份待拷贝数据同时拷贝到第一主数据库和第一从数据库。
[0044]可选地,将第二主数据库的全量数据并行地拷贝到第一主数据库和第一从数据库,包括:
[0045]通过Xtrabackup工具和tee工具,将第二主数据库的全量数据复制成两份待拷贝数据,从而将所述两份待拷贝数据同时拷贝到第一主数据库和第一从数据库。
[0046]可选地,对所述第一数据库集群和所述第二数据库集群开启只读模式,对所述第二数据库集群与所述第一数据库集群进行身份标识切换,包括:
[0047]判断第二主数据库与第一主数据库之间的延迟时间是否小于第二时间阈值;
[0048]若是,则对所述第一数据库集群和所述第二数据库集群开启只读模式,直到所述第二主数据库与所述第一主数据库之间的延迟时间为零;...

【技术保护点】

【技术特征摘要】
1.一种数据库变配方法,其特征在于,包括:新建第一数据库集群,所述第一数据库集群包括第一主数据库和第一从数据库;采用指定的数据库拷贝方式或者基于预设策略确定的数据库拷贝方式,将第二数据库集群的数据拷贝至所述第一数据库集群;对所述第一数据库集群和所述第二数据库集群开启只读模式,对所述第二数据库集群与所述第一数据库集群进行身份标识切换;关闭所述第一数据库集群的只读模式。2.根据权利要求1所述的方法,其特征在于,采用指定的数据库拷贝方式或者基于预设策略确定的数据库拷贝方式,将第二数据库集群的数据拷贝至所述第一数据库集群,包括:判断是否指定了数据拷贝方式;若是,则按照指定的数据拷贝方式将第二数据库集群的数据拷贝至所述第一数据库集群;其中,所述第二数据库集群包括第二主数据库和第二从数据库;若否,则基于第二数据库集群中的第二主数据库和第二从数据库之间的延迟时间,采用从数据库并行拷贝方式或者主数据库串行拷贝方式,将所述第二数据库集群的数据拷贝至所述第一数据库集群。3.根据权利要求2所述的方法,其特征在于,基于第二数据库集群中的第二主数据库和第二从数据库之间的延迟时间,采用从数据库并行拷贝方式或者主数据库串行拷贝方式,将所述第二数据库集群的数据拷贝至所述第一数据库集群,包括:判断第二数据库集群中的第二主数据库与第二从数据库之间的延迟时间是否大于等于第一时间阈值;若是,则采用主数据库串行拷贝方式,将所述第二数据库集群的数据拷贝至所述第一数据库集群;若否,则采用从数据库并行拷贝方式,将所述第二数据库集群的数据拷贝至所述第一数据库集群。4.根据权利要求2所述的方法,其特征在于,所述指定的数据拷贝方式为从数据库串行拷贝方式、从数据库并行拷贝方式、主数据库串行拷贝方式和主数据库并行拷贝方式中的一种。5.根据权利要求4所述的方法,其特征在于,若所述指定的数据拷贝方式为从数据库串行拷贝方式,则按照指定的数据拷贝方式将第二数据库集群的数据拷贝至所述第一数据库集群,包括:将第二从数据库的全量数据拷贝到第一主数据库,启动所述第一主数据库的数据库服务;将所述第一主数据库的全量数据拷贝到第一从数据库,启动所述第一从数据库的数据库服务;在所述第一从数据库上执行主从复制命令,以将所述第一主数据库的增量数据同步到所述第一从数据库;在所述第一主数据库上执行主从复制命令,以将所述第二主数据库的增量数据同步到所述第一主数据库。
6.根据权利要求4所述的方法,其特征在于,若所述指定的数据拷贝方式为从数据库并行拷贝方式,则按照指定的数据拷贝方式将第二数据库集群的数据拷贝至所述第一数据库集群,包括:将第二从数据库的全量数据并行地拷贝到第一主数据库和第一从数据库,启动所述第一主数据库的数据库服务和所述第一从数据库的数据库服务;在所述第一从数据库上执行主从复制命令,以将所述第一主数据库的增量数据同步到所述第一从数据库;在所述第一主数据库上执行主从复制命令,以将所述第二主数据库的增量数据同步到所述第一主数据库。7.根据权利要求4所述的方法,其特征在于,若所述指定的数据拷贝方式为主数据库串行拷贝方式,则按照指定的数据拷贝方式将第二数据库集群的数据拷贝至所述第一数据库集群,包括:将第二主数据库的全量数据拷贝到第一...

【专利技术属性】
技术研发人员:刘欢
申请(专利权)人:京东科技信息技术有限公司
类型:发明
国别省市:

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

1