数据库管理方法、装置、电子设备、存储介质与流程

文档序号:29792622发布日期:2022-04-23 18:01阅读:97来源:国知局
数据库管理方法、装置、电子设备、存储介质与流程

1.本发明涉及计算机应用技术领域,尤其涉及一种数据库管理方法、装置、电子设备、存储介质。


背景技术:

2.最初数据库dns(domain name system,域名系统)架构,大多数是直接指向vip或者物理ip的,数据库对应用开放的连接是dns+端口+数据库名+用户名+密码,当数据库发生宕机,数据库集群高可用可做自动切换,在端口+数据库名+用户名+密码不发生变化的情况下,dns会从故障节点的vip或者物理ip,手动或者自动切换到新的集群节点,从而来实现短时间内快速恢复应用连接数据库。
3.而随着数据库技术的飞速发展,为了便于整个实例的扩展性更强,sharding架构数据库成为技术主流,也因此一个实例的数据库个数达到几十甚至上百个,dns也会由一个或者几个变成几十甚至上百个,而老的dns架构已经不能适应sharding数据库架构的快速扩展特性,以及dr(异地容灾非同子网节点)切换,而需要将大量dns切换到目的ip,带来的故障时长变大,更严重的网络故障时,会导致大面积的数据库发生dr切换,大量的dns切换请求很有可能发生堆积,在网站请求密集的情况下,这是绝对不允许的。
4.由此,如何优化数据库管理,解决大量数据库dns切换带来的缩短切换时长,从而解决业务影响时长尽量短的问题,是本领域亟待解决的技术问题。


技术实现要素:

5.本发明为了克服上述现有技术存在的缺陷,提供一种数据库管理方法、装置、电子设备、存储介质,从而优化数据库管理,解决大量数据库dns切换带来的缩短切换时长,从而解决业务影响时长尽量短的问题。
6.根据本发明的一个方面,提供一种数据库管理方法,包括:
7.创建数据库集群中间层的中间dns系统;
8.创建所述数据库集群的业务dns系统;
9.使所述数据库集群的业务dns系统默认指向所述中间dns系统;
10.使所述中间dns系统默认指向所述数据库集群的主节点的虚拟ip地址。
11.在本发明的一些实施例中,所述数据库集群包括主节点、从节点、备灾节点,所述从节点、备灾节点从所述主节点复制数据。
12.在本发明的一些实施例中,所述数据库集群的主节点与从节点位于同一子网,所述备灾节点与所述主节点位于不同的子网。
13.在本发明的一些实施例中,每个所述数据库集群对应创建一个业务dns系统。
14.在本发明的一些实施例中,还包括:
15.响应于所述数据库集群的主节点故障,将所述虚拟ip地址在所述数据库集群的主节点上取消挂载;
16.在所述数据库集群的主节点同子网的从节点上挂载所述虚拟ip地址。
17.在本发明的一些实施例中,还包括:
18.响应于所述数据库集群的主节点和从节点故障,将所述中间dns系统指向备灾节点的物理ip。
19.在本发明的一些实施例中,还包括:
20.响应于所述数据库集群的实例拆分,将待拆分的数据库集群的业务dns指向新的数据库集群的所述中间dns系统。
21.根据本发明的又一方面,还提供一种数据库管理装置,包括:
22.第一创建模块,用于创建数据库集群中间层的中间dns系统;
23.第二创建模块,用于创建所述数据库集群的业务dns系统;
24.第一指向模块,用于使所述数据库集群的业务dns系统默认指向所述中间dns系统;
25.第二指向模块,用于使所述中间dns系统默认指向所述数据库集群的主节点的虚拟ip地址。
26.根据本发明的又一方面,还提供一种电子设备,所述电子设备包括:处理器;存储介质,其上存储有计算机程序,所述计算机程序被所述处理器运行时执行如上所述数据库管理方法的步骤。
27.根据本发明的又一方面,还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上所述数据库管理方法的步骤。
28.相比现有技术,本发明的优势在于:
29.本发明通过三层的dns架构,灵活而快速的特性,完美的解决了老dns架构的,由于切换dns太多,而导致故障影响时间长和不可控的问题,解决了数据库实例横向拆分工艺复杂的诟病,为数据库自动化运维提供了巨大便捷和更多方案的可能性。
附图说明
30.通过参照附图详细描述其示例实施方式,本发明的上述和其它特征及优点将变得更加明显。
31.图1示出了根据本发明实施例的数据库管理方法的流程图。
32.图2示出了根据本发明实施例的数据库管理方法的示意图。
33.图3示出了根据本发明实施例的数据库管理装置的模块图。
34.图4示意性示出本公开示例性实施例中一种计算机可读存储介质示意图。
35.图5示意性示出本公开示例性实施例中一种电子设备示意图。
具体实施方式
36.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
37.此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标
记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
38.为了解决现有技术的缺陷,优化数据库管理,解决大量数据库dns切换带来的缩短切换时长,从而解决业务影响时长尽量短的问题,本发明提供一种数据库管理方法、装置、电子设备、存储介质。
39.具体而言,数据库集群,是利用至少两台或者多台数据库服务器,构成一个虚拟单一数据库逻辑映像,像单数据库系统那样,向客户端提供透明的数据服务。
40.具体而言,对于dns(domain name system,域名系统),因特网上作为域名和ip地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的ip数串。通过主机名,最终得到该主机名对应的ip地址的过程叫做域名解析(或主机名解析)。
41.首先参见图1,图1示出了根据本发明实施例的数据库管理方法的示意图。数据库管理方法包括如下步骤:
42.步骤s110:创建数据库集群中间层的中间dns系统。
43.步骤s120:创建所述数据库集群的业务dns系统。
44.步骤s130:使所述数据库集群的业务dns系统默认指向所述中间dns系统。
45.步骤s140:使所述中间dns系统默认指向所述数据库集群的主节点的虚拟ip地址。
46.具体而言,上述各实施例的指向表示可以访问。
47.具体而言,所述数据库集群可以包括主节点、从节点、备灾节点,所述从节点、备灾节点从所述主节点复制数据。其中,所述数据库集群的主节点与从节点位于同一子网,所述备灾节点与所述主节点位于不同的子网。
48.进一步地,每个所述数据库集群可以对应创建一个业务dns系统。
49.由此,通过上述方式,响应于所述数据库集群的主节点故障,可以将所述虚拟ip地址在所述数据库集群的主节点上取消挂载;在所述数据库集群的主节点同子网的从节点上挂载所述虚拟ip地址。
50.通过上述方式,响应于所述数据库集群的主节点和从节点故障,将所述中间dns系统指向备灾节点的物理ip。
51.通过上述方式,响应于所述数据库集群的实例拆分,将待拆分的数据库集群的业务dns指向新的数据库集群的所述中间dns系统。
52.在本发明的一些实施例中,通过三层的dns架构,灵活而快速的特性,完美的解决了老dns架构的,由于切换dns太多,而导致故障影响时间长和不可控的问题,解决了数据库实例横向拆分工艺复杂的诟病,为数据库自动化运维提供了巨大便捷和更多方案的可能性。
53.图2示出了根据本发明实施例的数据库管理方法的示意图。
54.在图2示出的实施例中:
55.数据库集群220testcls
56.集群中间层dns221:testcls.cluster.db.xx.com
57.主节点222的物理ip地址:192.168.66.88虚拟ip地址:192.168.66.99
58.从节点节点223的物理ip地址:192.168.66.89
59.备灾节点224的物理ip地址:10.88.16.68
60.数据库为:shard01db-shard128db
61.在创建集群时,
62.集群的初始状态是:
[0063][0064]
由此,当主节点222发生宕机,集群自动或手动故障转移到同子网的从节点223时,只需要将虚拟ip地址在主节点222上取消挂载,然后在从节点223挂载vip,无需切换dns业务就可以在最短时间内快速回复。
[0065]
当主节点222和从节点223同时无法使用,需要切换备灾节点的时候,由于虚拟ip地址和备灾节点不在同一子网,无法挂载虚拟ip地址。因此需要切换dns,而且只要切换testcls.cluster.db.xx.com(集群中间层dns221)指向备灾节点224的物理ip即可,而不是切数据库业务dns210,业务也在较短时间内恢复。尤其在网络故障、机房故障这种大面积数据库瘫痪恢复的时候,不会因为切换众多的dns,发生切换请求堆积而导致故障恢复时长变长。
[0066]
当数据库实例横向拆分时,可以灵活的,将要拆分走的数据库对应的业务dns210切换到,新的集群上的集群中间层dns即可。
[0067]
以上仅仅是示意性地描述本发明的多个实现方式,本发明并非以此为限制。
[0068]
本发明还提供一种数据库管理装置,图3示出了根据本发明实施例的数据库管理装置的示意图。数据库管理装置300包括第一创建模块310、第二创建模块320、第一指向模块330以及第二指向模块340。
[0069]
第一创建模块310用于创建数据库集群中间层的中间dns系统;
[0070]
第二创建模块320用于创建所述数据库集群的业务dns系统;
[0071]
第一指向模块330用于使所述数据库集群的业务dns系统默认指向所述中间dns系统;
[0072]
第二指向模块340用于使所述中间dns系统默认指向所述数据库集群的主节点的虚拟ip地址。
[0073]
在本发明提供的数据库管理装置中,通过三层的dns架构,灵活而快速的特性,完美的解决了老dns架构的,由于切换dns太多,而导致故障影响时间长和不可控的问题,解决了数据库实例横向拆分工艺复杂的诟病,为数据库自动化运维提供了巨大便捷和更多方案的可能性。
[0074]
图3仅仅是示意性的示出本发明提供的数据库管理装置,在不违背本发明构思的
前提下,模块的拆分、合并、增加都在本发明的保护范围之内。本发明提供的数据库管理装置可以由软件、硬件、固件、插件及他们之间的任意组合来实现,本发明并非以此为限。
[0075]
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被例如处理器执行时可以实现上述任意一个实施例中所述数据库管理方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述数据库管理方法部分中描述的根据本发明各种示例性实施方式的步骤。
[0076]
参考图5所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品400,其可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0077]
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
[0078]
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
[0079]
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在租户计算设备上执行、部分地在租户设备上执行、作为一个独立的软件包执行、部分在租户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到租户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
[0080]
在本公开的示例性实施例中,还提供一种电子设备,该电子设备可以包括处理器,以及用于存储所述处理器的可执行指令的存储器。其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一个实施例中所述数据库管理方法的步骤。
[0081]
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统
称为“电路”、“模块”或“系统”。
[0082]
下面参照图5来描述根据本发明的这种实施方式的电子设备600。图5显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0083]
如图5所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同系统组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
[0084]
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述数据库管理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示的步骤。
[0085]
所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(rom)6203。
[0086]
所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
[0087]
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
[0088]
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得租户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0089]
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述数据库管理方法。
[0090]
相比现有技术,本发明的优势在于:
[0091]
本发明通过三层的dns架构,灵活而快速的特性,完美的解决了老dns架构的,由于切换dns太多,而导致故障影响时间长和不可控的问题,解决了数据库实例横向拆分工艺复杂的诟病,为数据库自动化运维提供了巨大便捷和更多方案的可能性。
[0092]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识
或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1