数据库接入方法及装置

阅读: 评论:0

著录项
  • CN201810230365.1
  • 20180320
  • CN108491500A
  • 20180904
  • 新华三云计算技术有限公司
  • 朱高校
  • G06F17/30
  • G06F17/30 H04L29/08

  • 四川省成都市高新区天华二路219号4栋1单元1层1-6号、2层1-6号、3层1-6号
  • 四川(51)
  • 北京超凡志成知识产权代理事务所(普通合伙)
  • 郭新娟
摘要
本发明涉及云技术领域,提供一种数据库接入方法及装置,所述方法包括:接收用于将外部数据库服务端接入云平台的认证请求;当认证请求通过之后,响应第一接入请求在云平台创建代理组件,并向代理组件发送用以接入外部数据库服务端的待接数据库的接入申请命令;利用代理组件执行接入申请命令,向外部数据库服务端发送第二接入请求以建立云平台与待接数据库之间的通信连接。本发明利用代理组件将不同类型的云下数据库纳入到云平台统一管理,解决了高性能、高可靠性、高稳定性的数据库不能简单易行地接入云平台的问题,同时,提高了数据库资源的利用率,减少了数据库管理的工作量。
权利要求

1.一种数据库接入方法,其特征在于,应用于云平台,所述方法包括:

接收用于将外部数据库服务端接入所述云平台的认证请求;

当所述认证请求通过之后,响应第一接入请求在所述云平台创建代理组件,并向所述 代理组件发送用以接入外部数据库服务端的待接数据库的接入申请命令;

利用所述代理组件执行所述接入申请命令,向所述外部数据库服务端发送第二接入请 求以建立所述云平台与所述待接数据库之间的通信连接。

2.如权利要求1所述的方法,其特征在于,所述响应第一接入请求在所述云平台创建代 理组件的步骤包括:

响应所述第一接入请求,发送创建代理组件虚拟机的创建申请命令;

依据所述创建申请命令获取虚拟机的镜像模板,其中所述虚拟机的镜像模板预先安装 有所述代理组件;

根据所述镜像模板克隆出代理组件虚拟机以在所述云平台创建所述代理组件。

3.如权利要求1所述的方法,其特征在于,所述利用所述代理组件执行所述接入申请命 令,向所述外部数据库服务端发送第二接入请求以建立所述云平台与所述待接数据库之间 的通信连接的步骤包括:

依据所述接入申请命令查所述外部数据库服务端的与所述第二接入申请命令关联 的待接目标数据库,向所述外部数据库服务端发送第二接入请求以建立与所述待接目标数 据库之间的通信连接。

4.如权利要求1所述的方法,其特征在于,所述方法还包括:

向所述外部数据库服务端发送用以控制所述外部数据库服务端的待接数据库的控制 命令;

接收所述外部数据库服务端反馈响应所述控制命令返回的执行结果。

5.如权利要求1所述的方法,其特征在于,所述方法还包括:

按照预设时间获取所述待接数据库的数据库信息;

将所述数据库信息保存至所述云平台的后台数据库。

6.一种数据库接入装置,其特征在于,应用于云平台,所述装置包括:

认证请求接收模块,用于接收用于将外部数据库服务端接入所述云平台的认证请求;

创建模块,用于当所述认证请求通过之后,响应第一接入请求在所述云平台创建代理 组件,并向所述代理组件发送用以接入外部数据库服务端的待接数据库的接入申请命令;

执行模块,用于执行所述接入申请命令,向所述外部数据库服务端发送第二接入请求 以建立与所述待接数据库之间的通信连接。

7.如权利要求6所述的装置,其特征在于,所述创建模块还包括:

响应单元,用于响应所述第一接入请求,发送创建代理组件虚拟机的创建申请命令;

获取单元,用于依据所述创建申请命令获取虚拟机的镜像模板,其中所述虚拟机的镜 像模板预先安装有所述代理组件;

创建单元,用于根据所述镜像模板克隆出代理组件虚拟机以在所述云平台创建所述代 理组件。

8.如权利要求6所述的装置,其特征在于,所述执行模块具体用于依据所述接入申请命 令查所述外部数据库服务端的与所述第二接入申请命令关联的待接目标数据库,向所述 外部数据库服务端发送第二接入请求以建立与所述待接目标数据库之间的通信连接。

9.如权利要求6所述的装置,其特征在于,所述装置还包括:

发送模块,用于向所述外部数据库服务端发送用以控制所述外部数据库服务端的待接 数据库的控制命令;

执行结果接收模块,用于接收所述外部数据库服务端反馈响应所述控制命令返回的执 行结果。

10.如权利要求6所述的装置,其特征在于,所述装置还包括:

数据库信息获取模块,用于按照预设时间获取所述待接数据库的数据库信息;

保存模块,用于将所述数据库信息保存至所述云平台的后台数据库。

说明书
技术领域

本发明涉及云技术领域,具体而言,涉及一种数据库接入方法及装置。

随着云技术的发展,越来越多的应用选择运行在云上,目前,有不少云平台提供云 数据库,然而都是基于虚拟化方式交付,无法满足数据库稳定、可靠、性能的要求,极少厂商 可以提供基于裸金属云数据库服务方式,不过仅可以提供单机,对于企业应用最为迫切的 Oracle RAC等高可用集数据库均无法支持,另一种情况,如果需要将现有的应用迁移上 云,需要将现有的应用使用的云下数据库从云下迁移到云上,操作复杂,需要极强的专业人 员才能够完成。

本发明实施例的目的在于提供一种数据库接入方法及装置,用以改善上述问题。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供了一种数据库接入方法,应用于云平台。所述方法包 括:接收用于将外部数据库服务端接入云平台的认证请求;当认证请求通过之后,响应第一 接入请求在云平台创建代理组件,并向代理组件发送用以接入外部数据库服务端的待接数 据库的接入申请命令;利用所述代理组件执行所述接入申请命令,向外部数据库服务端发 送第二接入请求以建立云平台与待接数据库之间的通信连接。

第二方面,本发明实施例还提供了一种数据库接入装置,所述装置包括认证请求 接收模块、创建模块和执行模块。其中,认证请求接收模块用于接收用于将外部数据库服务 端接入云平台的认证请求;创建模块用于当认证请求通过之后,响应第一接入请求在云平 台创建代理组件,并向代理组件发送用以接入外部数据库服务端的待接数据库的接入申请 命令;执行模块用于执行接入申请命令,向外部数据库服务端发送第二接入请求以建立与 待接数据库之间的通信连接。

相对现有技术,本发明实施例提供的一种数据库接入方法及装置,首先,接收用于 将外部数据库服务端接入云平台的认证请求;然后,当认证请求通过之后,响应第一接入请 求在云平台创建代理组件,并向代理组件发送用以接入外部数据库服务端的待接数据库的 接入申请命令;最后,利用代理组件执行接入申请命令,向外部数据库服务端发送第二接入 请求以建立云平台与待接数据库之间的通信连接。与现有技术相比,本发明利用代理组件 将不同类型的云下数据库纳入到云平台统一管理,解决了高性能、高可靠性、高稳定性的数 据库不能简单易行地接入云平台的问题,同时,提高了数据库资源的利用率,减少了数据库 管理的工作量。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举实施例,并配合所附 附图,作详细说明如下。

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附 图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对 范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这 些附图获得其他相关的附图。

图1示出了本发明实施例提供的数据库接入装置应用场景示意图。

图2示出了本发明实施例提供的云平台的结构示意图。

图3示出了本发明实施例提供的云平台的模块示意图。

图4示出了本发明实施例提供的数据库接入方法流程图。

图5为图4示出的步骤S102的子步骤流程图。

图6示出了本发明实施例提供的数据库接入装置的方框示意图。

图标:100-云平台;101-存储器;102-存储控制器;103-处理器;200-数据库接入装 置;300-待接数据库;400-外部数据库服务端;201-认证请求接收模块;202-创建模块;203- 执行模块;204-发送模块;205-执行结果接收模块;206-数据库信息获取模块;207-保存模 块。

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整 地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在 此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因 此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的 范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做 出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一 个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的 描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

请参照图1,图1示出了本发明实施例提供的数据库接入装置200的应用场景示意 图。外部数据库服务端400的待接数据库300通过数据库接入装置200接入云平台100。外部 数据库服务端400可以是,但不限于,实体数据库服务器、部署了数据库,并作为数据库服务 器的虚拟机、数据库集等能提供与所述数据库服务器有相同功能的实体或者虚拟的数据 库服务器。

请参照图2,图2示出了本发明实施例提供的云平台100的结构示意图。所述云平台 100包括数据库接入装置200、存储器101、存储控制器102及处理器103。

所述存储器101、存储控制器102及处理器103各元件相互之间直接或间接地电性 连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信 号线实现电性连接。数据库接入装置200包括至少一个可以软件或固件(firmware)的形式 存储于存储器101中的软件功能模块。处理器103用于执行存储器101中存储的可执行的模 块,例如数据库接入装置200所包括的软件功能模块及计算机程序等。

其中,存储器101可以是,但不限于,随机存取存储器(Random Access Memory, RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM), 电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。 其中,存储器101用于存储程序,所述处理器103在接收到执行指令后,执行所述程序。

处理器103可以是一种集成电路芯片,具有信号处理能力。上述的处理器103可以 是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)、语音处理器以及视频处理器等;还可以是数字信号处理器、专用集成电路、 现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。 可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是 微处理器或者该处理器103也可以是任何常规的处理器等。

请参照图3,图3示出了本发明实施例提供的云平台100的模块示意图。云平台100 包括认证模块、计算模块、镜像模块、网络模块、存储模块、数据库模块。

首先,认证模块接收用户发送的用于将外部数据库服务端400接入所述云平台100 的认证请求,并对该用户的身份和角权限等信息进行接入认证。

其次,当用户通过认证模块的接入认证后,数据库模块响应用户发送的第一接入 请求创建代理组件,并向代理组件发送用以接入外部数据库服务端400的待接数据库300的 接入申请命令。数据库模块创建代理组件是通过在云平台100上创建代理组件虚拟机的方 式实现的,创建代理组件的具体过程包括:数据库模块向计算模块发送创建代理组件虚拟 机的创建申请命令,该创建申请命令是响应第一接入请求产生的;计算模块收到该创建申 请命令后,从镜像模块获取代理组件虚拟机的镜像模板以根据镜像模板克隆出代理组件虚 拟机、从网络模块获取代理组件虚拟机的网络资源以实现与云平台100的网络连接、从存储 模块获取代理组件虚拟机的存储资源以保存代理组件的配置信息。代理组件虚拟机创建成 功后,数据库模块向代理组件发送用以接入外部数据库服务端400的待接数据库300的接入 申请命令,该接入申请命令是数据库模块对第一接入请求解析后得到的。

最后,代理组件执行接入申请命令,向外部数据库服务端400发送第二接入请求以 建立所述云平台100与待接数据库300之间的通信连接,该接入申请命令是第一接入请求经 过数据库模块解析后发给代理组件的。数据库模块包括消息队列、API组件、任务组件、后端 组件及后台数据库。API组件接收并解析第一接入请求得到接入申请命令并将该接入申请 命令通过消息队列转发至任务组件,消息队列可以,但不限于是RPC消息队列。任务组件对 接入申请命令进行调度,将调度后的接入申请命令发送至代理组件以使代理组件根据接入 申请命令向待接数据库300发送第二接入请求和待接数据库300建立通信连接,在该通信连 接后,代理组件查询待接数据库300的状态,并将查询到的待接数据库300的状态通过后端 组件存入后台数据库中。用户通过API组件发送查询待接数据库300的接入状态的查询请 求,或者API主动发送查询待接数据库300的接入状态的查询命令时,API组件将解析后的查 询待接数据库300的接入状态的查询命令,或者直接将查询待接数据库300的接入状态的查 询命令通过消息队列转发至任务组件。经过任务组件的调度发送至后端组件,后端组件从 后台数据库中获取待接数据库300的状态信息。如果获取到的待接数据库300的状态为 running,则接入请求命令执行成功,待接数据库300接入云平台100成功;否则,接入请求命 令执行失败,待接数据库300接入云平台100失败。

需要说明的是,代理组件可以安装在云平台100上的虚拟机上,也可以安装在独立 于云平台100但与云平台100有通信连接的实体计算机或者虚拟机上。

第一实施例

请参照图4,图4示出了本发明实施例提供的数据库接入方法流程图。处理方法包 括以下步骤:

步骤S101,接收用于将外部数据库服务端接入云平台的认证请求。

在本发明实施例中,用户通过云平台100的管理端发送用于将外部数据库服务端 400接入所述云平台100的认证请求,认证模块接收该认证请求并对该用户的身份和角权 限等信息进行接入认证,只有认证通过的用户才能通过云平台100的管理端发送待接数据 库300的数据库接入请求。

步骤S102,当认证请求通过之后,响应第一接入请求在云平台创建代理组件,并向 代理组件发送用以接入外部数据库服务端的待接数据库的接入申请命令。

在本发明实施例中,第一接入请求是用户通过云平台100的管理端发送的用于将 外部数据库服务端400接入云平台100的数据库接入请求。当用户通过云平台100的认证后, 数据库模块响应第一接入请求在云平台100上创建代理组件,并向代理组件发送用以接入 外部数据库服务端400的待接数据库300的接入申请命令。

作为一种实施方式,数据库模块创建代理组件是通过在云平台100上创建代理组 件虚拟机的方式实现的,代理组件虚拟机是预装好代理组件的虚拟机,请参照图5,步骤 S102还可以包括以下子步骤:

子步骤S1021,响应第一接入请求,发送创建代理组件虚拟机的申请命令。

在本发明实施例中,用户通过云平台100的管理端发送第一接入请求,数据库模块 响应该第一接入请求并向计算模块发送申请代理组件虚拟机的申请命令。

子步骤S1022,依据申请命令获取虚拟机的镜像模板,其中虚拟机的镜像模板预先 安装有代理组件。

在本发明实施例中,镜像模板包括了操作系统、基本的计算资源、网络资源、存储 资源、软件配置等信息,根据镜像模板可以快速创建出符合要求的虚拟机。计算模块收到数 据库模块发送的申请代理组件虚拟机的申请命令后,从镜像模块获取预先安装有代理组件 的虚拟机的镜像模板以根据镜像模板克隆出代理组件虚拟机。

子步骤S1023,根据镜像模板克隆出代理组件虚拟机以在云平台创建代理组件。

在本发明实施例中,克隆的过程包括获取代理组件虚拟机所需的计算资源,计算 资源包括CPU、内存等资源,计算模块根据从镜像模块获取到的预装有代理组件的虚拟机的 镜像模板克隆出代理组件虚拟机,并为该代理组件虚拟机申请需要的网络资源、存储资源。 计算模块从网络模块获取代理组件虚拟机的网络资源以实现与云平台100的网络连接,例 如虚拟网卡,计算模块从存储模块获取代理组件虚拟机的存储资源以保存代理组件的配置 信息,例如,虚拟的硬盘,如此,数据库模块就在云平台100上创建了一个预装有代理组件的 虚拟机即代理组件虚拟机。

需要说明的是,作为一种实施方式,每个待接数据库300需要一个与该待接数据库 300对应的预先安装了代理组件的虚拟机,不同数据库类型对应的代理组件是相同的,因为 代理组件中集成了不同类型数据库的连接方法。

步骤S103,利用代理组件执行接入申请命令,向外部数据库服务端发送第二接入 请求以建立云平台与待接数据库之间的通信连接。

在本发明实施例中,第二接入请求是代理组件根据接入申请命令向外部数据库服 务端400发送的用以建立云平台100与待接数据库300之间的通信连接的数据库接入请求。 代理组件接收并执行数据库模块发送的用以接入外部数据库服务端400的待接数据库300 的接入申请命令,其中,该接入申请命令是数据库模块解析用户发送的第一接入请求后产 生并发送给代理组件的。数据库模块包括消息队列、API组件、任务组件、后端组件及后台数 据库,API组件对用户通过云平台100的管理端发送第一接入请求进行解析生成接入申请命 令,并该接入申请命令通过消息队列转发至任务组件,经过任务组件的调度后发送至代理 组件,代理组件执行该接入申请命令,向外部数据库服务端400发送第二接入请求以建立云 平台100与待接数据库300之间的通信连接。

作为一种实施方式,用以接入外部数据库服务端400的待接数据库300的接入申请 命令是通过API组件对用户通过云平台100的管理端发送的第一接入请求解析产生的,然后 通过消息队列转发至任务组件,经过任务组件调度后发送至代理组件。代理组件依据接入 申请命令查外部数据库服务端400与接入申请命令关联的待接目标数据库,向外部数据 库服务端400发送第二接入请求以建立云平台100与所述待接目标数据库之间的通信连接。

作为一种实施方式,接入申请命令包括了待接数据库300的类型、地址信息和用户 信息,代理组件根据待接数据库300的地址信息到与该待接数据库300匹配的目标数据 库,并根据待接数据库300的类型和用户信息向匹配到的目标数据库发送第二接入请求以 建立通信连接,不同类型的数据库的连接信息是不同的,例如,Oracle12的地址信息包括 oracle_host,oracle_port,用户信息包括cdb_name,sys_usr,sys_pswd,SQL Server2012 的地址信息包括sqlserver_host,sqlserver_port,用户信息包括sys_user,sys_pswd。

步骤S104,向外部数据库服务端发送用以控制外部数据库服务端的待接数据库的 控制命令。

在本发明实施例中,控制外部数据库服务端400的待接数据库300的控制命令包括 待接数据库300的连接、待接数据库300的断开,待接数据库300的状态信息查询等。控制命 令首先由API组件进行解析,然后通过消息队列转发给任务组件,经过任务组件调度后发送 至代理组件。如此,代理组件即可向外部数据库服务端400发送用以控制外部数据库服务端 400的待接数据库300的控制命令。

作为一种实施方式,在步骤S103建立与所述待接目标数据库之间的通信连接之 后,查询待接目标数据库的状态信息,并接收外部数据库服务端400返回的查询结果。

需要说明的是,在待接数据库300成功接入云平台100后,该控制命令还包括对待 接数据库300中用户的创建、删除、修改、查询等操作,以及对待接数据库300中数据库实例 及表的创建、删除、修改、查询等操作。

步骤S105,接收外部数据库服务端反馈响应控制命令返回的执行结果。

在本发明实施例中,代理组件收到外部数据库服务端400反馈响应控制命令返回 的执行结果后,用户通过API组件发送查询待接数据库300的接入状态的查询请求,或者API 主动发送查询待接数据库300的接入状态的查询命令时,API组件将对该查询请求进行解析 后的查询待接数据库300的接入状态的查询命令,或者直接将查询待接数据库300的接入状 态的查询命令通过消息队列转发至任务组件,经过任务组件的调度发送至后端组件。后端 组件从后台数据库中获取待接数据库300的状态信息,如果获取到的待接数据库300的状态 为running,则接入请求命令执行成功,否则,接入请求命令执行失败。

需要说明的是,在待接数据库300成功接入云平台100后,用户可以通过云平台100 的管理端发送用户、数据库实例或者表的创建、删除、修改、查询等操作命令,该操作命令由 API组件进行解析,通过消息队列转发至任务组件,经过任务组件的调度发送至代理组件, 代理组件首先将该操作命令发送至待接数据库300,并获取待接数据库300反馈的该操作命 令的执行结果。然后代理组件将该执行结果通过消息队列转发至API组件,通过API组件将 该执行结果返回至用户。另一方面,代理组件在获取待接数据库300反馈的操作命令的执行 结果后,同时将该操作命令的相关信息通过消息队列发送至后端组件,以使后端组件将该 操作命令的执行过程信息保存至后台数据库,其中,该操作命令的执行过程信息包括操作 命令的命令行、执行时间、执行结果等信息。

还需要说明的是,在待接数据库300成功接入云平台100后,根据接收到外部数据 库服务端400反馈的用户、数据库实例或者表的创建、删除、修改、查询的操作结果得到返回 的命令执行结果,对于相同操作,不同类型数据库的具体操作命令的形式不同,返回的具体 操作结果也可能会有差别,但是返回的执行结果的形式是统一的。

步骤S106,按照预设时间获取待接数据库的数据库信息。

在本发明实施例中,待接数据库300的数据库信息主要、但不限于是待接数据库 300的状态,预设时间可以是周期性,即代理组件每个周期从外部数据库服务端400查询待 接数据库300的状态,并将查询到的状态通过后端组件写入后台数据库。

步骤S107,将数据库信息保存至所述云平台的后台数据库。

在本发明实施例中,出于数据访问的安全性考虑,后台数据库只和后端组件直接 访问连接,即对后台数据库中数据的访问只能通过后端组件完成。数据库信息由代理组件 通过消息队列发给后端组件,后端组件再将该数据库信息写入后台数据库。

在本发明实施例中,首先,接收用以接入外部数据库服务端400的待接数据库300 的接入申请命令,API组件可以将接入申请命令以RESTfulAPI的接口形式对外提供,使得对 外接口在性能、可扩展性、可移植性、易用性等方面达到比较好的平衡;其次,执行接入申请 命令,向外部数据库服务端400发送第二接入请求以建立与所述待接数据库300之间的通信 连接,不同类型数据库在接入时使用的代理组件是一样的,从而屏蔽了不同类型数据库接 入方法的差异,便于统一管理不同类型的数据库;第三,向外部数据库服务端400发送用以 控制外部数据库服务端400的待接数据库300的控制命令,待接数据库300接入云平台100 后,对于待接数据库300的操作命令经过API组件进行解析后均发送给任务组件进行统一调 度,任务组件可以根据当前系统的负载对操作命令进行流控,减少操作命令在负载压力过 大的情况对系统性能的冲击;第四,接收外部数据库服务端400反馈响应控制命令返回的执 行结果,将不同类型数据库的相同操作返回的操作结果进行统一,更利于屏蔽不同类型数 据库的差异,更方便将不同类型数据库统一管理,减少了不同类型数据库管理的成本;最 后,按照预设时间获取待接数据库300的数据库信息,可以实时监控待接数据库300的状态, 一旦状态变为非正常,及时将最新的状态反馈给用户。

第二实施例

请参照图6,图6示出了本发明实施例提供的数据库接入装置200,用于将外部数据 库服务端400连接至云平台100。在本实施例中,该数据库接入装置200包括认证请求接收模 块201,创建模块202;执行模块203;发送模块204;执行结果接收模块205;数据库信息获取 模块206及保存模块207。其中,执行模块203;发送模块204;执行结果接收模块205;数据库 信息获取模块206及保存模块207即为第一实施例中的代理组件。

认证请求接收模块201,用于接收用于将外部数据库服务端接入所述云平台的认 证请求。

本发明实施例中,命令接收模块201可以用于执行步骤S101。

创建模块202,用于当所述认证请求通过之后,响应第一接入请求在所述云平台创 建代理组件,并向所述代理组件发送用以接入外部数据库服务端的待接数据库的接入申请 命令。

本发明实施例中,创建模块202可以用于执行步骤S102。

在本实施例中,创建模块202包括响应单元、获取单元及创建单元。其中响应单元 用于响应所述第一接入请求,发送创建代理组件虚拟机的创建申请命令。获取单元,用于依 据所述创建申请命令获取虚拟机的镜像模板,其中所述虚拟机的镜像模板预先安装有所述 代理组件。创建单元用于根据所述镜像模板克隆出代理组件虚拟机以在所述云平台创建所 述代理组件。可以理解,这里的响应单元可以为第一实施例的数据库模块;获取单元和创建 单元均可以为第一实施例的计算模块。

执行模块203,用于执行所述接入申请命令,向所述外部数据库服务端发送第二接 入请求以建立与所述待接数据库之间的通信连接。

本发明实施例中,执行模块203可以用于执行步骤S103。

发送模块204,用于向所述外部数据库服务端发送用以控制所述外部数据库服务 端的待接数据库的控制命令。

本发明实施例中,发送模块204可以用于执行步骤S104。

执行结果接收模块205,用于接收外部数据库服务端反馈响应控制命令返回的执 行结果。

本发明实施例中,执行结果接收模块205可以用于执行步骤S105。

数据库信息获取模块206,用于按照预设时间获取待接数据库的数据库信息。

本发明实施例中,数据库信息获取模块206可以用于执行步骤S106。

保存模块207,用于将所述数据库信息保存至云平台的后台数据库。

本发明实施例中,保存模块207可以用于执行步骤S107。

综上所述,本发明提供的一种数据库接入方法及装置,所述方法包括:接收用于将 外部数据库服务端接入云平台的认证请求;当认证请求通过之后,响应第一接入请求在云 平台创建代理组件,并向代理组件发送用以接入外部数据库服务端的待接数据库的接入申 请命令;利用代理组件执行接入申请命令,向外部数据库服务端发送第二接入请求以建立 云平台与待接数据库之间的通信连接;向外部数据库服务端发送用以控制外部数据库服务 端的待接数据库的控制命令;接收外部数据库服务端反馈响应控制命令返回的执行结果; 按照预设时间获取待接数据库的数据库信息;将数据库信息保存至云平台的后台数据库。 与现有技术相比,本发明一方面将接入申请请求以RESTful API的接口形式对外提供,使得 对外接口在性能、可扩展性、可移植性、易用性等方面达到比较好的平衡,另一方面利用代 理组件屏蔽了不同类型数据库接入方法的差异,将不同类型的云下数据库纳入到云平台统 一管理,解决了高性能、高可靠性、高稳定性的数据库不能简单易行地接入云平台的问题, 同时,提高了数据库资源的利用率,减少了数据库管理的工作量。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过 其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图 显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、 功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一 部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执 行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于 附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也 可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每 个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基 于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部 分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以 存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说 对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计 算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个 人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。 而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存 储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要 说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与 另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实 际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包 含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括 没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。 在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素 的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技 术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修 改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在 下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需 要对其进行进一步定义和解释。

本文发布于:2023-04-14 18:00:13,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/3/86762.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图