公开/公告号CN112765123A
专利类型发明专利
公开/公告日2021-05-07
原文格式PDF
申请/专利权人 中国人寿保险股份有限公司上海数据中心;
申请/专利号CN202011596340.7
申请日2020-12-29
分类号G06F16/21(20190101);G06F9/455(20060101);
代理机构31225 上海科盛知识产权代理有限公司;
代理人赵志远
地址 200131 上海市浦东新区中国(上海)自由贸易试验区张东路1388号29幢101室
入库时间 2023-06-19 10:54:12
技术领域
本发明涉及数据库创建方法领域,尤其是涉及一种基于OpenStack的MySQL数据库自动创建方法、装置及计算机存储介质。
背景技术
随着互联网金融的迅猛发展,在云计算、大数据、移动互联网等技术的影响下,数字化时代中的传统金融企业也在发生变革。对于金融行业,云技术一方面可以解决历史遗留的制约问题,另一方面也能创造更加先进的生产力。
OpenStack是经过大量实践验证过的最佳云架构平台,在业界使用最为广泛。尤其在中国市场,如果不选阿里云、亚马逊AWS、微软Azure等现有的云平台,OpenStack几乎成为传统IT走向云之旅的唯一途径。OpenStack具有如下优势:(1)模块松耦合。与其他开源软件相比,OpenStack模块分明,添加独立功能的组件非常简单。有时不需要通读整个OpenStack的代码,只需要了解其接口规范及API使用,就可以轻松地添加一个新的模块。(2)组件配置较为灵活。OpenStack也需要不同的组件,但是OpenStack的组件安装异常灵活。可以全部都装在一台物理机上,也可以分散至多台物理机中,甚至可以把所有的结点都装在虚拟机中。(3)二次开发容易。OpenStack发布的OpenStack API是Rest-full API。其他所有组件也是采种这种统一的规范。因此,基于OpenStack做二次开发较为简单。
MySQL是一个关系型数据库管理系统,是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的RDBMS(Relational Database Management System,关系数据库管理系统)应用软件之一。关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。与其他的大型数据库相比,例如Oracle、DB2、SQL Server等,MySQL自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。
目前,在OpenStack云平台上运行MySQL数据库是十分常见的应用场景,目前大量虚拟机都采用了这种模式。然而在OpenStack云平台上进行MySQL数据库部署的传统流程为:先在云平台上创建主机,再从远端服务器上下载MySQL软件,最后进行MySQL软件安装。中国专利CN109033334A公开了一种创建数据库的方法、装置及计算机存储介质,包括:在预先创建的容器集群中创建数据库应用服务和容器卷;将创建的容器卷挂载在创建的数据库应用服务中,以进行数据库应用处理。该专利中的数据库创建过程依然需要大量的人工操作,耗时较长。随着业务变化越来越快,对IT响应的要求越来越高,这种传统的模式已无法满足追求敏捷性的业务需求。此外,在计费方便也会造成混乱,既需要按照服务器使用标准计费,又需要按照数据库使用标准计费,计费方式较为复杂。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种能够实现单机MySQL数据库和主备MySQL数据库的自动创建、计费方式清晰、方便快捷的基于OpenStack的MySQL数据库自动创建方法、装置及计算机存储介质。
本发明的目的可以通过以下技术方案来实现:
一种基于OpenStack的MySQL数据库自动创建方法,所述的数据库自动创建方法包括:
步骤1:获取用户输入的MySQL数据库部署指令;
步骤2:根据步骤1获取的用户指令,判断需要创建的数据库类型,若为单机MySQL数据库,则执行步骤3,若为主备MySQL数据库,则执行步骤4;
步骤3:根据步骤1获取的用户指令,在OpenStack内通过MySQL数据库部署脚本创建单机MySQL数据库;
步骤4:根据步骤1获取的用户指令,在OpenStack内通过MySQL数据库部署脚本创建主备MySQL数据库;
步骤5:完成MySQL数据库自动创建。
优选地,所述的步骤1中数据库部署指令包括:
所要创建MySQL数据库类型,包括单机MySQL数据库和主备MySQL数据库;
MySQL数据库所运行的可用分区;
MySQL数据库的性能规格和存储大小;
为MySQL数据库分配的IP地址。
优选地,所述的步骤3具体为:
步骤3-1:在OpenStack内自动创建一台服务器,服务器内置MySQL数据库部署脚本;
步骤3-2:启动服务器,并自动执行内置MySQL数据库部署脚本;
步骤3-3:内置MySQL数据库部署脚本自动从远端仓库下载MySQL数据库镜像;
步骤3-4:内置MySQL数据库部署脚本完成单机MySQL数据库的安装部署。
优选地,所述的步骤4具体为:
步骤4-1:在OpenStack内自动创建两台服务器,两台服务器内均内置MySQL部署脚本;
步骤4-2:启动两台服务器,并在两台服务器内自动执行内置MySQL数据库部署脚本;
步骤4-3:两台服务器内的内置MySQL数据库部署脚本自动从远端仓库下载MySQL数据库镜像;
步骤4-4:内置MySQL数据库部署脚本完成主备MySQL数据库的安装部署,并将其配置为主备模式。
优选地,所述的MySQL数据库部署脚本具体为:
获取MySQL数据库在远端仓库中的安装路径;
自动安装MySQL数据库;
对MySQL数据库进行初始化;
自动启动MySQL数据库;
根据用户指令内容部署MySQL数据库。
优选地,所述的数据库自动创建方法还包括:
步骤6:将数据库和服务器打包为云服务,并将云服务在混合云中上线。
一种如上述数据库自动创建方法的数据库自动创建装置,所述的自动创建装置包括指令获取模块、处理器、存储器和通信模块;所述的指令获取模块、存储器和通信模块分别与处理器相连;
指令获取模块,用于获取用户输入的MySQL数据库部署指令;
处理器,用于调用MySQL数据库部署脚本并执行基于OpenStack的MySQL数据库自动创建方法;
存储器,存储有MySQL数据库部署脚本;
通信模块,用于数据库自动创建装置与远端仓库的通信。
优选地,所述的自动创建装置还包括数据库部署配置模块;所述的数据库部署配置模块与处理器相连;
数据库部署配置模块,用于根据指令获取模块获取的用户指令内容对MySQL数据库进行部署配置。
更加优选地,所述的用户指令内容包括所要创建MySQL数据库类型、MySQL数据库所运行的可用分区、MySQL数据库的性能规格和存储大小、为MySQL数据库分配的IP地址以及用户Root口令。
一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于中上述MySQL数据库自动创建方法。
与现有技术相比,本发明具有以下有益效果:
一、实现单机MySQL数据库和主备MySQL数据库的自动创建:本发明中数据库自动创建方法、装置及计算机存储介质引入服务器内置自动化脚本,无人值守式自动搭建MySQL单机或主备模式数据库环境,无需人工干预,在大幅度降低了时间和人力成本的同时实现了数据库创建的高自动化。
二、计费方式清晰:本发明中数据库自动创建方法、装置及计算机存储介质引入云服务概念,将服务器与数据库打包形成云服务,并将云服务在混合云中上线,进行合并计量计费,计费标准可清晰明确地呈现给用户。
三、方便快捷:本发明中的数据库自动创建方法、装置及计算机存储介质在云服务的后端设置了MySQL镜像仓库,用户可以自主选择不同版本的数据库对应的云产品,使用起来方便快捷。
附图说明
图1为本发明中MySQL数据库自动创建方法的流程示意图;
图2为本发明中单机MySQL数据库的创建流程示意图;
图3为本发明中主备MySQL数据库的创建流程示意图;
图4为本发明中MySQL数据库自动创建装置的结构示意图。
图中标号所示:
1、指令获取模块,2、处理器,3、存储器,4、通信模块,5、数据库部署配置模块。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
实施例1
基于现有技术中存在的缺陷,本发明提供了一种基于开源OpenStack创建MySQL数据库自动创建方法、装置及计算机存储介质,在OpenStack云平台上实现MySQL主备数据库的自动部署和统一计费,以解决大量重复的部署操作浪费人力和时间成本的问题,实现了用户自助服务、按需使用、按量计费,有效提高资源交付能力,充分满足各类研发测试和生产需求。
一种基于OpenStack的MySQL数据库自动创建方法,其流程如图1所示,包括:
步骤1:获取用户输入的MySQL数据库部署指令;
用户输入的指令包括:所要创建MySQL数据库类型,包括单机MySQL数据库和主备MySQL数据库;
MySQL数据库所运行的可用分区;
MySQL数据库的性能规格和存储大小;
为MySQL数据库分配的IP地址;
步骤2:根据步骤1获取的用户指令,判断需要创建的数据库类型,若为单机MySQL数据库,则执行步骤3,若为主备MySQL数据库,则执行步骤4;
步骤3:根据步骤1获取的用户指令,在OpenStack内通过MySQL数据库部署脚本创建单机MySQL数据库,创建流程如图2所示,包括:
步骤3-1:在OpenStack内自动创建一台服务器,服务器内置MySQL数据库部署脚本;
步骤3-2:启动服务器,并自动执行内置MySQL数据库部署脚本;
步骤3-3:内置MySQL数据库部署脚本自动从远端仓库下载MySQL数据库镜像;
步骤3-4:内置MySQL数据库部署脚本完成单机MySQL数据库的安装部署;
步骤4:根据步骤1获取的用户指令,在OpenStack内通过MySQL数据库部署脚本创建主备MySQL数据库,创建流程如图3所示,包括:
步骤4-1:在OpenStack内自动创建两台服务器,两台服务器内均内置MySQL部署脚本;
步骤4-2:启动两台服务器,并在两台服务器内自动执行内置MySQL数据库部署脚本;
步骤4-3:两台服务器内的内置MySQL数据库部署脚本自动从远端仓库下载MySQL数据库镜像;
步骤4-4:内置MySQL数据库部署脚本完成主备MySQL数据库的安装部署,并将其配置为主备模式;
步骤5:完成MySQL数据库自动创建。
步骤6:将数据库和服务器打包为云服务,并将云服务在混合云中上线,进行合并计量计费,例如,用户购买两台带有MySQL数据库的服务器,则分别是以服务器和数据库同时计费,用户进行自助式使用,计费标准明确。
本实施例中MySQL数据库部署脚本具体为:
获取MySQL数据库在远端仓库中的安装路径;
自动安装MySQL数据库;
对MySQL数据库进行初始化;
自动启动MySQL数据库;
根据用户指令内容部署MySQL数据库。
本实施例中的脚本根据用户指令内容部署MySQL数据库的过程具体为:
(1)根据用户指令内容选择需要创建选择需要创建数据库所运行的可用分区。
(2)根据用户指令内容选择创建数据库的架构类型,单机或者主备。
(3)根据用户指令内容选择创建数据库的性能规格(CPU、内存)和存储大小。
(4)根据用户指令内容选择创建数据库的网络域,此处需要判断用户输入的IP地址是否有效,若IP地址有效则执行手动输入IP操作,将用户输入的IP地址配置为数据库的网络域;若IP地址无效,则自动分配IP;
(5)输入MySQL数据库的Root用户口令,后续远程连接使用。数据库的名称可使用默认,也可以输入个性化名称,还可以选择数据库使用时长,如选择固定时长,到期后资源回收。
本实施例在开源OpenStack云平台环境下,实现了以下功能:
(1)引入服务器内置自动化脚本,无人值守式自动搭建MySQL单机或主备模式数据库环境,无需人工干预,大幅度降低了时间和人力成本。
(2)本发明面向于交付完整的数据库服务器,而非单个数据库实例,可实现用户自主创建完整服务器。
(3)为用户自主创建MySQL数据库服务器的提供参考,可以帮助用户高效便捷部署MySQL数据库环境。
(4)引入云服务概念,将服务器与数据库打包形成云服务,并将云服务在混合云中上线,进行合并计量计费,计费标准可清晰明确地呈现给用户。
(5)云服务后端内置了MySQL镜像仓库,用户可以自主选择不同版本的数据库对应的云产品,方便用户使用。
实施例2
一种使用上述数据库自动创建方法的数据库自动创建装置,其结构如图4所示,包括指令获取模块1、处理器2、存储器3、通信模块4和数据库部署配置模块5。指令获取模块1、存储器3、通信模块4和数据库部署配置模块5分别与处理器2相连。
各模块的具体描述如下:
指令获取模块1,用于获取用户输入的MySQL数据库部署指令;
处理器2,用于调用MySQL数据库部署脚本并执行基于OpenStack的MySQL数据库自动创建方法;
存储器3,存储有MySQL数据库部署脚本;
通信模块4,用于数据库自动创建装置与远端仓库的通信;
数据库部署配置模块5,用于根据指令获取模块1获取的用户指令内容对MySQL数据库进行部署配置。
用户指令内容包括所要创建MySQL数据库类型、MySQL数据库所运行的可用分区、MySQL数据库的性能规格和存储大小、为MySQL数据库分配的IP地址、用户Root口令以及数据库使用时长等。
实施例3
一种计算机存储介质,该计算机存储介质中存储有计算机可执行指令,计算机可执行指令用于执行上述MySQL数据库自动创建方法,实现单机MySQL数据库和主备MySQL数据库的自动创建。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
机译: 通过计算机实现的针对目标消息和ADS的方法,包括:通过计算机接收用户设备的用户标识数据,基于用户标识数据,返回用户的信息,通过计算机信息输入以创建配置文件用户匿名,一个或多个存储介质;系统。
机译: 用于模拟火车的自动铁路路径创建装置,自动铁路路径创建方法和存储介质以存储自动铁路路径创建程序
机译: 内容创建系统,内容创建方法,用于执行相同内容创建方法的计算机可执行程序,已存储相同程序的计算机可读存储介质,图形用户界面系统和显示控制方法