CN111159162B - 数据库配置方法及设备 - Google Patents
数据库配置方法及设备 Download PDFInfo
- Publication number
- CN111159162B CN111159162B CN201911423557.5A CN201911423557A CN111159162B CN 111159162 B CN111159162 B CN 111159162B CN 201911423557 A CN201911423557 A CN 201911423557A CN 111159162 B CN111159162 B CN 111159162B
- Authority
- CN
- China
- Prior art keywords
- database
- template file
- configuration
- configuring
- cache
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
- G06F16/2448—Query languages for particular applications; for extensibility, e.g. user defined types
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种数据库配置方法及设备,所述方法包括接收数据库配置请求,其中,数据库配置请求中携带配置数据库的模板标识,根据数据库配置请求创建数据库实例,并根据模板标识确定类路径,判断类路径对应的缓存中是否存在模板文件,若类路径对应的缓存中不存在模板文件,则根据预设配置规则配置新的模板文件,解析新配置的模板文件中的数据库语句,并将解析后的数据库语句存入类路径对应的缓存中,根据缓存中的数据库语句通过数据库实例配置数据库。提高了数据库的配置效率与准确率,保证了数据库的稳定运行。
Description
技术领域
本发明实施例涉及数据处理技术领域,尤其涉及一种数据库配置方法及设备。
背景技术
随着互联网技术的发展,业务系统的数量和类型越来越多,业务系统在处理相关业务请求时,一般需要与数据库建立连接关系,然后对数据库执行相应的操作以获取到需要的数据。
在业务系统与数据库建立连接之前,一般需要先对数据库进行配置,再根据配置好的数据库为业务系统提供数据支持。在对数据句进行配置时,一般需要配置人员手动去配置数据库的环境变量、数据库的基本参量或者数据库为每个应用分配的连接数等。
然而,上述配置数据库的方式在每次启动数据库之前,都需要手动配置一遍,费时费力,还容易因配置人员的操作出现各种失误,影响数据库的稳定运行。
发明内容
本发明实施例提供一种数据库配置方法及设备,以提高数据库配置的的准确性和效率。
第一方面,本发明实施例提供一种数据库配置方法,包括:接收数据库配置请求,其中,所述数据库配置请求中携带配置数据库的模板标识;
根据所述数据库配置请求创建数据库实例,并根据所述模板标识确定类路径;
判断所述类路径对应的缓存中是否存在模板文件;
若所述类路径对应的缓存中不存在所述模板文件,则根据预设配置规则配置新的模板文件;
解析新配置的模板文件中的数据库语句,并将解析后的数据库语句存入所述类路径对应的缓存中;
根据所述缓存中的数据库语句通过所述数据库实例配置所述数据库。
可选的,还包括:
若所述类路径对应的缓存中存在所述模板文件,则从所述缓存中获取解析后的模板文件的数据库语句;
根据解析后的模板文件的数据库语句通过所述数据库实例配置所述数据库。
可选的,所述根据预设配置规则配置新的模板文件,包括:
根据预设配置规则配置数据表的分区规则;
根据所述预设配置规则配置路由算法;
根据所述预设配置规则配置分区全集;
根据所述数据表的分区规则、所述路由算法和所述分区全集确定新的模板配置文件。
可选的,所述分区规则为通过哈希算法进行分区、通过预设字段的长度进行分区或通过预设字段的长度的取余值进行分区。
可选的,所述解析新配置的模板文件中的数据库语句,并将解析后的数据库语句存入所述类路径对应的缓存中,包括:
读取所述新配置的模板文件的全部内容,并根据所述新配置的模板文件中的换行符将模板文件的全部内容拆分为字符串数组;
从所述字符串数组中获取符合数据库语句规范的数据库语句,得到数据库语句列表;
以分号为标识解析所述数据库语句列表中的数据库语句,并将解析成功的目标数据库语句存入block对象中;
将所述block对象中的目标数据库语句存入所述类路径对应的缓存中。
可选的,在所述根据所述缓存中的数据库语句通过所述数据库实例配置所述数据库之后,还包括:
接收服务功能指令,其中所述服务功能指令中包括实际参数列表,所述服务功能指令至查询服务指令、增加服务指令、删除服务指令或更改服务指令;
根据所述服务功能指令将所述缓存中的数据库语句中的变量名对应替换为所述实际参数列表中的参数值,得到可执行数据库语句;
执行所述可执行数据库语句。
第二方面,本发明实施例提供一种数据库配置装置,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如下步骤:
接收数据库配置请求,其中,所述数据库配置请求中携带配置数据库的模板标识;
根据所述数据库配置请求创建数据库实例,并根据所述模板标识确定类路径;
判断所述类路径对应的缓存中是否存在模板文件;
若所述类路径对应的缓存中不存在所述模板文件,则根据预设配置规则配置新的模板文件;
解析新配置的模板文件中的数据库语句,并将解析后的数据库语句存入所述类路径对应的缓存中;
根据所述缓存中的数据库语句通过所述数据库实例配置所述数据库。
可选的,所述至少一个处理器还可以执行如下步骤:
若所述类路径对应的缓存中存在所述模板文件,则从所述缓存中获取解析后的模板文件的数据库语句;
根据解析后的模板文件的数据库语句通过所述数据库实例配置所述数据库。
可选的,所述至少一个处理器还可以执行如下步骤:
根据预设配置规则配置数据表的分区规则;
根据所述预设配置规则配置路由算法;
根据所述预设配置规则配置分区全集;
根据所述数据表的分区规则、所述路由算法和所述分区全集确定新的模板配置文件。
第三方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如第一方面任一项所述的数据库配置方法。
本发明实施例提供了一种数据库配置方法及设备,采用上述方案后,能够根据数据库配置请求中携带的数据库的模版标识自动去匹配标识对应的配置模版,然后再根据配置模版自动配置数据库。能够以比较简单的文本文件去配置数据库模板,提高了数据库配置的效率与准确率,保证了数据库的稳定运行。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的数据库配置方法的应用架构示意图;
图2为本发明实施例提供的数据库配置方法的流程示意图;
图3为本发明另一实施例提供的数据库配置方法的结构示意图;
图4为本发明实施例提供的数据库配置装置的结构示意图;
图5为本发明实施例提供的数据库配置设备的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
图1为本发明实施例提供的数据库配置方法的应用架构示意图,如图1所示,包括配置中心服务器101和数据库102。配置中心服务器101可以对应配置多个数据库102。配置中心服务器101可以接收配置人员触发的数据库配置请求,然后根据触发的数据库配置请求获取对应的模版,然后根据获取的模版对数据库进行配置,以实现自动配置数据库,而无需配置人员每次在启动数据库时都手动配置数据库。
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图2为本发明实施例提供的数据库配置方法的流程示意图,本实施例的方法可以由配置中心服务器101执行,该监控装置可以以软件和/或硬件的形式设置在图1的监控设备中。如图2所示,本实施例的方法,可以包括:
S201:接收数据库配置请求,其中,所述数据库配置请求中携带配置数据库的模板标识。
具体的,在需要配置数据库之前,配置人员可能会在配置中心服务器手动触发数据库配置请求。为了提高数据库的配置效率,在配置数据库之前,会预先配置好数据库模版,然后再根据需要对数据库进行的配置对应选择数据库模版。其中,数据库模版对应有模版标识,且数据库模版与模版标识一一对应。数据库配置请求中携带有模版标识,然后可以根据模版标识查找到对应的数据库。
S202:根据所述数据库配置请求创建数据库实例,并根据所述模板标识确定类路径。
具体的,在获取到数据库配置请求之后,可以先根据数据库配置请求创建数据库实例。在创建数据库实例时,可以在其默认构造方法中读取默认的模版文件,或使用带参构造器指定模版标识获取指定的模版文件。
S203:判断所述类路径对应的缓存中是否存在模板文件。
具体的,在读取模版文件内容前可以先判断模版标识判断当前读取的模版文件是否已经加载到缓存中,如果已加载到缓存中则直接从缓存中读取文件。
S204:若所述类路径对应的缓存中不存在所述模板文件,则根据预设配置规则配置新的模板文件。
具体的,若类路径对应的缓存中不存在标识对应的模板文件,则可以根据预先设定好的模板文件配置规则配置新的模板。其中,模版配置过程中主要可以配置某张表的分区规则、路由算法和所有分区全集。
S205:解析新配置的模板文件中的数据库语句,并将解析后的数据库语句存入所述类路径对应的缓存中。
具体的,在配置完成模板文件之后,可以将配置完成的模板文件存入类路径对应的缓存中。在将新配置的模板文件存储进缓存之前,可以先将模板文件中的数据库语句进行解析,解析后的数据库语句在后期执行时,可以直接执行。无需再额外等待解析时间,减少了数据库的配置时间,提高了数据库的调用效率。
S206:根据所述缓存中的数据库语句通过所述数据库实例配置所述数据库。
具体的,解析完模板文件中的数据库语句之后,可以根据缓存中解析完成的数据库语句通过数据库实例直接对数据库进行配置。
采用上述方案后,能够根据数据库配置请求中携带的数据库的模版标识自动去匹配标识对应的配置模版,然后再根据配置模版自动配置数据库。能够以比较简单的文本文件去配置数据库模板,提高了数据库配置的效率与准确率,保证了数据库的稳定运行。
基于图2的方法,本说明书实施例还提供了该方法的一些具体实施方案,下面进行说明。
在一个具体实施方式中,如图3所示,为本发明另一实施例提供的数据库配置方法的结构示意图,还可以包括:
S301:若所述类路径对应的缓存中存在所述模板文件,则从所述缓存中获取解析后的模板文件的数据库语句。
S302:根据解析后的模板文件的数据库语句通过所述数据库实例配置所述数据库。
具体的,当类路径对应的缓存中存在模板文件时,代表模板文件已经解析完成,并存储至缓存中了。当需要通过该模板文件对数据库进行配置时,可以直接根据解析完成的数据库语句通过创建的数据库实例配置数据库。
在一个具体实施方式中,所述根据预设配置规则配置新的模板文件,可以包括:
根据预设配置规则配置数据表的分区规则。根据所述预设配置规则配置路由算法。根据所述预设配置规则配置分区全集。根据所述数据表的分区规则、所述路由算法和所述分区全集确定新的模板配置文件。
具体的,在配置数据库配置模板时,可以自定义设置配置规则,然后再根据自定义的配置规则对数据库进行配置。
如表1所示,为本发明实施例提供的一种自定义的配置规则,在该实例中,可以配置key值和value值。其中,key值包括rules、routeType和partitionName。rules代表配置某张表的分区规则、routeType代表配置路由算法,partitionName代表所有分区全集。其中,分区规则还可以有多种,可以根据配置人员的需求进行选择,或者也可以自定义分区规则。
表1
在一个具体实施方式中,所述分区规则为通过哈希算法进行分区、通过预设字段的长度进行分区或通过预设字段的长度的取余值进行分区。
具体的,分区规则可以有多种,可以根据配置人员的需求进行选择,或者也可以自定义分区规则。如表1中所示,为三种分区规则,rule(1)为根据hash算法将table的column字段分为number个分区,其中hash值0为分区1以次类推。rule(2)为取table的column字段的第start位开始开始length为做为分区值。rule(3)为取table的column字段对modvalue取余的值做为分区值。还可以包括prefix分区规则,即取字段的前几位做为分区值。val直接获取某个字段做为分区值等。
此外,自定义规则实现分区值的计算时,可继承SingleFieldBaseFunction类(单个字段计算分区值的),或继承MatrixFunction接口(读取分区规则的接口)。
还可以重写或实现其configFunctionParameters(String…params)读取rules配置中规则配置的参数,如rule(1)中number的值,rule(2)的start,length的值。再重写或实现其match(fieldValues)方法,配置rules配置从参数列表中获取用于分区的字段值。即rules配置中column在运行时的参数值。然后重写或实现其apply方法,配置rules配置将取到的column值进行计算得到分区值。
其中,partitionname为所有分区的全集,他是rulse中根据分区字段计算的分区值指定的分区是partionname的子集或真子集。
在一个具体实施方式中,所述解析新配置的模板文件中的数据库语句,并将解析后的数据库语句存入所述类路径对应的缓存中,可以包括:
读取所述新配置的模板文件的全部内容,并根据所述新配置的模板文件中的换行符将模板文件的全部内容拆分为字符串数组。从所述字符串数组中获取符合数据库语句规范的数据库语句,得到数据库语句列表。以分号为标识解析所述数据库语句列表中的数据库语句,并将解析成功的目标数据库语句存入block对象中。将所述block对象中的目标数据库语句存入所述类路径对应的缓存中。
具体的,若在缓存中不存在模板文件时,可以创建新的模板对象,即创建新的模板文件,然后再将创建完成的模板文件进行解析,得到数据库语句,再将解析完成的数据库语句放入缓存中。其中,数据库语句也可以称为sql语句。
此外,在解析新的模板文件时,可以先读取整个模板文件的内容,以换行符将模板文件拆分为字符串数组。然后可以遍历文件中的字符串数组将符合规范的sql语句添加到list中,为空行是继续下一行;以“--”开始则为定义性语句;其他为正常sql语句。定义性语句包括importOtherSqlFile(sqlClassPath sqlID)将指定sql文件中的内容添加到此处。includeOtherSqlId(sqlClasaPath sqlID)将指定文件中指定sqlID的sql添加到此处。globalSettings全局设置。
此外,如果新的模板文件对应的list不为空时,则解析所有的sql行为完整的sql语句,以分号结尾表示一个完整的sql语句。将解析成功的完整sql保存在block对象中。再将解析完成后将数据库语句存入所述类路径对应的缓存中,即sqlCache中。
在一个具体实施方式中,在所述根据所述缓存中的数据库语句通过所述数据库实例配置所述数据库之后,还可以包括:
接收服务功能指令,其中所述服务功能指令中包括实际参数列表,所述服务功能指令至查询服务指令、增加服务指令、删除服务指令或更改服务指令。
根据所述服务功能指令将所述缓存中的数据库语句中的变量名对应替换为所述实际参数列表中的参数值,得到可执行数据库语句。执行所述可执行数据库语句。
具体的,在数据库配置完成之后,可以直接通过数据库来提供数据支持服务。例如,可以提供查询服务、增加服务、删除服务或更改服务等,可以根据对应的服务确定对应的指令。例如,可以根据查询服务确定查询服务指令。此外,还可以构建当前执行sql语句的参数列表。执行客户端对的parama(Object…object)将参数列表构建到客户端对象的params中。根据实际参数将sql模板解析为可执行的sql语句。此过程在调用客户端的evaluate()方法时被执行。从sql模板中获取需要替换的变量名,模板中以“##”包裹的为变量,组装为数组。将参数列表组装为数组。组装执行当前sql的运行时参数,包括时间、主机ip等信息。还可以进行必要的sql格式校验,包括sql语句是否完整,sql是否符合约定。比如调用客户端的update(sqlID)则sql必须为update语句等。再根据变量名与参数名,注入实际参数值,将模板中的“##”变量替换为实际执行时的参数值。
基于同样的思路,本说明书实施例还提供了上述方法对应的装置,如图4所示,为本发明实施例提供的数据库配置装置的结构示意图,如图4所示,可以包括:
触控模块401,用于接收数据库配置请求,其中,所述数据库配置请求中携带配置数据库的模板标识。
处理模块402,用于根据所述数据库配置请求创建数据库实例,并根据所述模板标识确定类路径。
所述处理模块402,还用于判断所述类路径对应的缓存中是否存在模板文件。
所述处理模块402,还用于若所述类路径对应的缓存中不存在所述模板文件,则根据预设配置规则配置新的模板文件。
所述处理模块402,还用于解析新配置的模板文件中的数据库语句,并将解析后的数据库语句存入所述类路径对应的缓存中。
所述处理模块402,还用于根据所述缓存中的数据库语句通过所述数据库实例配置所述数据库。
在一个具体实施方式中,所述处理模块402,还用于:
若所述类路径对应的缓存中存在所述模板文件,则从所述缓存中获取解析后的模板文件的数据库语句。
根据解析后的模板文件的数据库语句通过所述数据库实例配置所述数据库。
在一个具体实施方式中,所述处理模块401,还用于:
根据预设配置规则配置数据表的分区规则。
根据所述预设配置规则配置路由算法。
根据所述预设配置规则配置分区全集。
根据所述数据表的分区规则、所述路由算法和所述分区全集确定新的模板配置文件。
在一个具体实施方式中,所述分区规则为通过哈希算法进行分区、通过预设字段的长度进行分区或通过预设字段的长度的取余值进行分区。
在一个具体实施方式中,所述处理模块402,还用于:
读取所述新配置的模板文件的全部内容,并根据所述新配置的模板文件中的换行符将模板文件的全部内容拆分为字符串数组。
从所述字符串数组中获取符合数据库语句规范的数据库语句,得到数据库语句列表。
以分号为标识解析所述数据库语句列表中的数据库语句,并将解析成功的目标数据库语句存入block对象中。
将所述block对象中的目标数据库语句存入所述类路径对应的缓存中。
在一个具体实施方式中,所述处理模块402,还用于:
接收服务功能指令,其中所述服务功能指令中包括实际参数列表,所述服务功能指令至查询服务指令、增加服务指令、删除服务指令或更改服务指令。
根据所述服务功能指令将所述缓存中的数据库语句中的变量名对应替换为所述实际参数列表中的参数值,得到可执行数据库语句。
执行所述可执行数据库语句。
本发明实施例提供的装置,可以实现上述如图2所示的实施例的方法,其实现原理和技术效果类似,此处不再赘述。
图5为本发明实施例提供的数据库配置设备的硬件结构示意图。如图5所示,本实施例提供的设备500包括:至少一个处理器501和存储器502。其中,处理器501、存储器502通过总线503连接。
在具体实现过程中,至少一个处理器501执行所述存储器502存储的计算机执行指令,使得至少一个处理器501执行如下步骤:
接收数据库配置请求,其中,所述数据库配置请求中携带配置数据库的模板标识。
根据所述数据库配置请求创建数据库实例,并根据所述模板标识确定类路径。
判断所述类路径对应的缓存中是否存在模板文件。
若所述类路径对应的缓存中不存在所述模板文件,则根据预设配置规则配置新的模板文件。
解析新配置的模板文件中的数据库语句,并将解析后的数据库语句存入所述类路径对应的缓存中。
根据所述缓存中的数据库语句通过所述数据库实例配置所述数据库。
若所述类路径对应的缓存中存在所述模板文件,则从所述缓存中获取解析后的模板文件的数据库语句。
根据解析后的模板文件的数据库语句通过所述数据库实例配置所述数据库。
根据预设配置规则配置数据表的分区规则。
根据所述预设配置规则配置路由算法。
根据所述预设配置规则配置分区全集。
根据所述数据表的分区规则、所述路由算法和所述分区全集确定新的模板配置文件。
所述分区规则为通过哈希算法进行分区、通过预设字段的长度进行分区或通过预设字段的长度的取余值进行分区。
所述解析新配置的模板文件中的数据库语句,并将解析后的数据库语句存入所述类路径对应的缓存中,包括:
读取所述新配置的模板文件的全部内容,并根据所述新配置的模板文件中的换行符将模板文件的全部内容拆分为字符串数组。
从所述字符串数组中获取符合数据库语句规范的数据库语句,得到数据库语句列表。
以分号为标识解析所述数据库语句列表中的数据库语句,并将解析成功的目标数据库语句存入block对象中。
将所述block对象中的目标数据库语句存入所述类路径对应的缓存中。
在所述根据所述缓存中的数据库语句通过所述数据库实例配置所述数据库之后,还包括:
接收服务功能指令,其中所述服务功能指令中包括实际参数列表,所述服务功能指令至查询服务指令、增加服务指令、删除服务指令或更改服务指令。
根据所述服务功能指令将所述缓存中的数据库语句中的变量名对应替换为所述实际参数列表中的参数值,得到可执行数据库语句。
执行所述可执行数据库语句。
处理器501的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
在上述的图5所示的实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application SpecificIntegrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述方法实施例的数据库配置方法。
上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(Application Specific IntegratedCircuits,简称:ASIC)中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (8)
1.一种数据库配置方法,其特征在于,包括:
接收数据库配置请求,其中,所述数据库配置请求中携带配置数据库的模板标识;
根据所述数据库配置请求创建数据库实例,并根据所述模板标识确定类路径;
判断所述类路径对应的缓存中是否存在模板文件;
若所述类路径对应的缓存中不存在所述模板文件,则根据预设配置规则配置新的模板文件;
解析新配置的模板文件中的数据库语句,并将解析后的数据库语句存入所述类路径对应的缓存中;
根据所述缓存中的数据库语句通过所述数据库实例配置所述数据库;
所述根据预设配置规则配置新的模板文件,包括:
根据预设配置规则配置数据表的分区规则;
根据所述预设配置规则配置路由算法;
根据所述预设配置规则配置分区全集;
根据所述数据表的分区规则、所述路由算法和所述分区全集确定新的模板配置文件。
2.根据权利要求1所述的方法,其特征在于,还包括:
若所述类路径对应的缓存中存在所述模板文件,则从所述缓存中获取解析后的模板文件的数据库语句;
根据解析后的模板文件的数据库语句通过所述数据库实例配置所述数据库。
3.根据权利要求1所述的方法,其特征在于,所述分区规则为通过哈希算法进行分区、通过预设字段的长度进行分区或通过预设字段的长度的取余值进行分区。
4.根据权利要求1所述的方法,其特征在于,所述解析新配置的模板文件中的数据库语句,并将解析后的数据库语句存入所述类路径对应的缓存中,包括:
读取所述新配置的模板文件的全部内容,并根据所述新配置的模板文件中的换行符将模板文件的全部内容拆分为字符串数组;
从所述字符串数组中获取符合数据库语句规范的数据库语句,得到数据库语句列表;
以分号为标识解析所述数据库语句列表中的数据库语句,并将解析成功的目标数据库语句存入block对象中;
将所述block对象中的目标数据库语句存入所述类路径对应的缓存中。
5.根据权利要求1所述的方法,其特征在于,在所述根据所述缓存中的数据库语句通过所述数据库实例配置所述数据库之后,还包括:
接收服务功能指令,其中所述服务功能指令中包括实际参数列表,所述服务功能指令分为查询服务指令、增加服务指令、删除服务指令或更改服务指令;
根据所述服务功能指令将所述缓存中的数据库语句中的变量名对应替换为所述实际参数列表中的参数值,得到可执行数据库语句;
执行所述可执行数据库语句。
6.一种数据库配置设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如下步骤:
接收数据库配置请求,其中,所述数据库配置请求中携带配置数据库的模板标识;
根据所述数据库配置请求创建数据库实例,并根据所述模板标识确定类路径;
判断所述类路径对应的缓存中是否存在模板文件;
若所述类路径对应的缓存中不存在所述模板文件,则根据预设配置规则配置新的模板文件;
解析新配置的模板文件中的数据库语句,并将解析后的数据库语句存入所述类路径对应的缓存中;
根据所述缓存中的数据库语句通过所述数据库实例配置所述数据库;
所述至少一个处理器还可以执行如下步骤:
根据预设配置规则配置数据表的分区规则;
根据所述预设配置规则配置路由算法;
根据所述预设配置规则配置分区全集;
根据所述数据表的分区规则、所述路由算法和所述分区全集确定新的模板配置文件。
7.根据权利要求6所述的设备,其特征在于,所述至少一个处理器还可以执行如下步骤:
若所述类路径对应的缓存中存在所述模板文件,则从所述缓存中获取解析后的模板文件的数据库语句;
根据解析后的模板文件的数据库语句通过所述数据库实例配置所述数据库。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至5任一项所述的数据库配置方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911423557.5A CN111159162B (zh) | 2019-12-31 | 2019-12-31 | 数据库配置方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911423557.5A CN111159162B (zh) | 2019-12-31 | 2019-12-31 | 数据库配置方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111159162A CN111159162A (zh) | 2020-05-15 |
CN111159162B true CN111159162B (zh) | 2023-07-25 |
Family
ID=70560599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911423557.5A Active CN111159162B (zh) | 2019-12-31 | 2019-12-31 | 数据库配置方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111159162B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112199428B (zh) * | 2020-09-30 | 2023-12-22 | 深圳市智物联网络有限公司 | 功能数据块的应用管理系统、方法及终端设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109743195A (zh) * | 2018-12-11 | 2019-05-10 | 中国联合网络通信集团有限公司 | 一种安全基线的核查方法和装置 |
CN110597844A (zh) * | 2019-08-14 | 2019-12-20 | 中国平安财产保险股份有限公司 | 异构数据库数据统一访问方法及相关设备 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7984119B2 (en) * | 2005-04-21 | 2011-07-19 | Sap Ag | Template configuration tool for application servers |
US8549144B2 (en) * | 2007-08-31 | 2013-10-01 | International Business Machines Corporation | Common configuration framework for applications to configure database objects and resources |
US20090099954A1 (en) * | 2007-10-12 | 2009-04-16 | Efacilitationpathways, Inc. | Systems and Methods for Managing Zoning Information |
US20100082546A1 (en) * | 2008-09-30 | 2010-04-01 | Microsoft Corporation | Storage Tiers for Database Server System |
US10635674B2 (en) * | 2012-09-28 | 2020-04-28 | Oracle International Corporation | Migrating a pluggable database between database server instances with minimal impact to performance |
US20140114822A1 (en) * | 2012-10-18 | 2014-04-24 | Intuit Inc. | Method and system for creating tax configuration templates |
CN106776598B (zh) * | 2015-11-19 | 2019-12-13 | 中国移动通信集团公司 | 一种信息处理方法及装置 |
CN107766393B (zh) * | 2016-08-22 | 2021-12-14 | 中国移动通信集团内蒙古有限公司 | 基于数据库的信息处理方法、客户端及服务器 |
CN108228268B (zh) * | 2016-12-15 | 2021-11-12 | 北京京东尚科信息技术有限公司 | 一种自动生成配置文件的方法和装置 |
CN108259553B (zh) * | 2017-10-09 | 2020-05-26 | 平安科技(深圳)有限公司 | 业务邮件的发送方法及终端设备 |
CN107958016B (zh) * | 2017-10-16 | 2021-09-28 | 平安科技(深圳)有限公司 | 功能页面定制方法及应用服务器 |
CN108804618B (zh) * | 2018-05-31 | 2023-07-28 | 康键信息技术(深圳)有限公司 | 数据库配置方法、装置、计算机设备和存储介质 |
CN109298861A (zh) * | 2018-10-19 | 2019-02-01 | 中国银行股份有限公司 | 一种根据接口文档自动生成文件的方法及装置 |
CN109492057A (zh) * | 2018-10-26 | 2019-03-19 | 深圳点猫科技有限公司 | 一种教育系统的用于Hive离线计算方法及电子设备 |
CN110515628A (zh) * | 2019-08-09 | 2019-11-29 | 济南浪潮数据技术有限公司 | 应用部署方法及装置 |
CN110502252B (zh) * | 2019-08-16 | 2022-07-08 | 苏州浪潮智能科技有限公司 | 一种数据库一体机配置方法与装置 |
-
2019
- 2019-12-31 CN CN201911423557.5A patent/CN111159162B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109743195A (zh) * | 2018-12-11 | 2019-05-10 | 中国联合网络通信集团有限公司 | 一种安全基线的核查方法和装置 |
CN110597844A (zh) * | 2019-08-14 | 2019-12-20 | 中国平安财产保险股份有限公司 | 异构数据库数据统一访问方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111159162A (zh) | 2020-05-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109376166B (zh) | 脚本转换方法、装置、计算机设备及存储介质 | |
CN108984612B (zh) | 目标sql语句的获取方法、装置、计算机设备及存储介质 | |
CN108536745B (zh) | 基于Shell的数据表提取方法、终端、设备及存储介质 | |
CN108776587B (zh) | 数据获取方法、装置、计算机设备以及存储介质 | |
CN108415998B (zh) | 应用依赖关系更新方法、终端、设备及存储介质 | |
CN111367595B (zh) | 数据处理方法、程序运行方法、装置及处理设备 | |
CN110580189A (zh) | 生成前端页面的方法、装置、计算机设备以及存储介质 | |
US9514184B2 (en) | Systems and methods for a high speed query infrastructure | |
CN112306620B (zh) | 自定义表单控件的多语言加载方法及装置 | |
CN111984659B (zh) | 数据更新方法、装置、计算机设备和存储介质 | |
CN111083054B (zh) | 路由配置处理方法、装置、计算机设备和存储介质 | |
CN111159162B (zh) | 数据库配置方法及设备 | |
CN111984892A (zh) | 页面访问方法、装置、设备及存储介质 | |
CN111460254A (zh) | 一种基于多线程的网页爬取方法、装置、存储介质及设备 | |
CN106130751B (zh) | 一种升级状态数据管理装置、系统和方法 | |
CN110795915B (zh) | xml文件批量修改方法、系统、设备和计算机可读存储介质 | |
CN111090670B (zh) | 一种数据预聚合的方法、系统、计算设备及存储介质 | |
CN112947991A (zh) | 版本差异代码文件的获取方法、装置、计算机设备和介质 | |
CN113177391A (zh) | 在流式界面中操作光标重定向方法、计算设备及存储介质 | |
CN113177392A (zh) | 校对界面中行段信息同步方法、计算设备及存储介质 | |
CN112417020A (zh) | 业务扩展的实现方法、装置、计算机设备和存储介质 | |
CN112784143B (zh) | 基于可视化计算引擎的数据处理方法、系统和计算机设备 | |
CN113778888B (zh) | 代码自动测试方法、系统、设备及存储介质 | |
CN111079391B (zh) | 一种报表的生成方法及装置 | |
CN110413644B (zh) | 一种数据缓存方法、电子装置及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |