CN110019517A - 一种数据库中间件动态配置方法、***、设备、存储介质 - Google Patents
一种数据库中间件动态配置方法、***、设备、存储介质 Download PDFInfo
- Publication number
- CN110019517A CN110019517A CN201711120226.5A CN201711120226A CN110019517A CN 110019517 A CN110019517 A CN 110019517A CN 201711120226 A CN201711120226 A CN 201711120226A CN 110019517 A CN110019517 A CN 110019517A
- Authority
- CN
- China
- Prior art keywords
- configuration
- database middleware
- sql command
- command
- preset
- 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.)
- Pending
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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24561—Intermediate data storage techniques for performance improvement
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种数据库中间件动态配置方法、***、设备、存储介质。该数据库中间件动态配置方法,包括:S1、数据库中间件接收客户端下发的针对配置文件处理操作的SQL命令;S2、对所述SQL命令进行解析,并与预设的SQL命令语法匹配,若匹配,则执行步骤S3;S3、根据解析出的处理类型对相应的配置文件进行处理。实现不同类别的动态配置操作处理。通过在线修改配置方式,无需重启服务即可让修改配置及时生效,业务***对数据库中间件的变更可做到无感知。支持远程操作,无需登录服务器去修改配置文件,极大地减低运维人员手工修改文件导致误操作的概率,最大化降低运维成本。
Description
技术领域
本发明涉及数据库,尤其涉及一种数据库中间件动态配置方法、***、设备、存储介质。
背景技术
随着MyCAT-X在正式生产环境上的使用越来越广,暴露出MyCAT-X在运维上的一些不足:在MyCAT-X使用过程当中,经常遇到在变更窗口需要调节某个参数选项,只能通过登录服务器,以手动方式去修改配置文件,最后通过重启MyCAT-X服务以达到更新配置的目的。人工修改配置,重启服务,同时还需要业务***配合进行变更,极大地增加了运维人力成本。
更进一步,业务***迭代更新,MyCAT-X需要配合业务***增加相应的数据分片配置。
发明内容
为了解决上述技术问题,本发明的目的在于提供一种数据库中间件动态配置方法、***、设备、存储介质。
根据本发明的一个方面,提供了一种数据库中间件动态配置方法,包括以下步骤:
S1、数据库中间件接收客户端下发的针对配置文件处理操作的SQL命令;
S2、对所述SQL命令进行解析,并与预设的SQL命令语法匹配,若匹配,则执行步骤S3;
S3、根据解析出的处理类型对相应的配置文件进行处理。
数据库中间件为MyCAT-X。
MyCAT-X是一种闭源分布式数据库中间件,包括:
解析模块:sql通过mycat-x的druid parser解析出sql语句中各个对象(表,列,分片字段A值);
路由模块:mycat-x的路由模块使用定义的分片算法算(以A作为算法参数)对应的路由节点;
节点判断模块:判断路由是否为多节点,若是且为分片表及sql语句类型为INSERT/UPDATE/DELETE,则若跨多个节点的事务即分布式事务开关打开,执行分布式式事务拦截,并设置事务中断标志,否则则将sql发送到后端执行,若非,即为单节点则将sql发送到后端执行;
回滚判断模块:根据事务中断标志,判断是否要执行rollback操作;
管理命令模块:在管理端口(9066端口)增加一个管理命令checktable structureconsistency for[schemaName];,用于检测分表(包括全局表和分片表)表结构的一致性。且将返回不一致部分的详细提示,返回给客户端,方便相关人员进行定位;
SQL防火墙模块:基于druid parser自带规则和黑名单的方式,通过SQL防火墙对进入mycat-x的SQL进行sql解析出每一个对象,用druidparser规则进行判断,符合规则的,判断sql字符是否在黑白名单里面,拦截符合规则或者在黑名单里面SQL;
内存管理模块:采用堆外内存+磁盘文件方式,支持ETL拉取海量数据能力,整个内存区域分为二块,一块来存放所有对象完整的二进制数据,另一个区域用来存放指向完整二进制数据的指针以及定长8byte的序列化后的key(key+pointer)。如果需要序列化的key是个变长类型,如String,则会取其前缀序列化;
H2DB小型嵌入式数据库:让MyCAT-X运行过程中的信息,直接写入或者定时写入H2DB数据库,这样通过9066端口输入查询命令(标准sql语句),转发到H2DB数据库查询引擎中,最后将结果返回给用户。
进一步的,对相应的配置文件进行处理,包括:
更新数据库中间件元数据的配置文件;
刷新本地配置文件。
进一步的,所述的数据库中间件动态配置方法,还包括:将刷新之前的原本地配置文件备份至本地配置backup仓库中。
进一步的,所述的数据库中间件动态配置方法,还包括:当处理操作错误时,本地配置文件回滚至原配置文件。
进一步的,所述对所述SQL命令进行解析,并与预设的SQL命令语法匹配,包括:
S201、解析由客户端下发的查看命令并与预设的查看语法匹配;
S202、根据解析结果匹配需要查看的元数据配置;
S203、封装待查看的数据;
S204、将待查看的数据反馈给客户端。
进一步的,所述对所述SQL命令进行解析,并与预设的SQL命令语法匹配,包括:
S211、解析由客户端下发的创建/修改命令并与预设的创建/修改语法匹配;
S212、根据解析内容,检查待创建/修改的配置是否合法,若合法,则备份配置文件;
S213、针对配置文件追加待创建/覆盖待修改的配置项,若成功,则将创建/修改的配置同步追加到数据库中间件元数据配置中。
进一步的,所述对所述SQL命令进行解析,并与预设的SQL命令语法匹配,包括:
S221、解析由客户端下发的删除命令并与预设的删除语法匹配;
S222、根据解析结果,检查待删除的配置是否合法,若合法,则备份配置文件;
S223、针对配置文件删除需要删除的配置项,若成功,则将需要删除的配置从数据库中间件元数据配置中清理掉。
进一步的,所述对所述SQL命令进行解析,并与预设的SQL命令语法匹配,包括:
S231、解析由客户端下发的备份命令并与预设的备份语法匹配;
S232、将数据库中间件所有配置文件保存在备份目录下。
进一步的,所述步骤S232中包括:
以配置文件最后配置操作时间节点为标识,标记所有配置文件。
进一步的,所述对所述SQL命令进行解析,并与预设的SQL命令语法匹配,包括:
S241、解析由客户端下发的回滚命令并与预设的回滚命令语法匹配;
S242、根据解析结果,判断需要回滚的时间点是否合法,若合法,则根据需要回滚的时间点,找到对应的更新前的配置文件;
S243、重新读取该配置文件并更新相关的元数据配置。
进一步的,所述对所述SQL命令进行解析,并与预设的SQL命令语法匹配,包括:
S251、解析由客户端下发的导出命令并与预设的导出语法匹配;
S252、根据解析结果,匹配需要导出的配置,若请求导出的配置合法,则根据配置反解析成创建语法指令格式。
进一步的,所述的数据库中间件动态配置方法,还包括:
若对相应的配置文件处理成功,则反馈结果至客户端;
若对相应的配置文件处理操作不合法或处理失败,则反馈不合法原因或失败原因至客户端。
根据本发明的另一个方面,提供了一种数据库中间件动态配置***,包括:
网络层,接受客户端下发的针对配置文件处理操作的SQL命令,并将其传输至SQL解析层;
SQL解析层,对所述SQL命令进行解析,并与预设的SQL命令语法匹配;
动态配置处理层,根据解析出的处理类型对相应的配置文件进行处理。
进一步的,对相应的配置文件进行处理,包括:
更新数据库中间件元数据的配置文件;
刷新本地配置文件。
进一步的,所述的数据库中间件动态配置***,还包括:将刷新之前的原本地配置文件保存至本地配置backup仓库中。
根据本发明的另一个方面,提供了一种设备,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上述任一项所述的方法。
根据本发明的另一个方面,提供了一种存储有计算机程序的计算机可读存储介质,其特征是,该程序被处理器执行时实现如上述任一项所述的方法。
与现有技术相比,本发明具有以下有益效果:
1、本发明示例的数据库中间件动态配置方法,数据库中间件接收客户端下发的针对配置文件处理操作的SQL命令;对所述SQL命令进行解析,并与预设的SQL命令语法匹配;根据解析出的处理类型对相应的配置文件进行处理,实现不同类别的动态配置操作处理。通过在线修改配置方式,无需重启服务即可让修改配置及时生效,业务***对数据库中间件的变更可做到无感知。支持远程操作,无需登录服务器去修改配置文件,极大地减低运维人员手工修改文件导致误操作的概率,最大化降低运维成本。
2、本发明示例的数据库中间件动态配置方法,支持数据库中间件在线修改参数和数据分片配置;配置文件多版本管理,提供配置修改的备份和回滚功能,让配置出错的时候可以及时回滚。支持配置文件反解析成SQL语句,统一各个环境的操作命令;提供导出功能,极大地降低多个数据库中间件为保持配置一致而配置出错的概率。
3、本发明示例的数据库中间件动态配置***,通过网络层,接受客户端下发的针对配置文件处理操作的SQL命令,并将其传输至SQL解析层;通过SQL解析层,对所述SQL命令进行解析,并与预设的SQL命令语法匹配;通过动态配置处理层,根据解析出的处理类型对相应的配置文件进行处理。上述单元协同合作,共同实现对相应的配置文件的操作处理,无需重启服务即可让修改配置及时生效,业务***对数据库中间件的变更可做到无感知。
4、本发明示例的设备,实现不同类别的动态配置操作处理。通过在线修改配置方式,无需重启服务即可让修改配置及时生效。
5、本发明示例的存储有计算机程序的计算机可读存储介质,该程序被处理器执行时实现如上述任一项所述的方法,实现不同类别的动态配置操作处理,最大化降低运维成本,无需重启服务即可让修改配置及时生效,值得推广。
附图说明
图1为本发明流程图;
图2为本发明数据库中间件的架构图。
具体实施方式
为了更好的了解本发明的技术方案,下面结合具体实施例、说明书附图对本发明作进一步说明。
实施例一:
如图1所示,本实施例提供了一种数据库中间件动态配置方法,包括以下步骤:
S1、数据库中间件接收客户端下发的针对配置文件处理操作的SQL命令。
具体包括:
1)客户端通过MySQL客户端登陆MyCAT-X 9066端口;
2)下发请求配置动态更改的SQL命令,如:mycat_config create schema`testdb`;
3)MyCAT-X通过网络层接收到该命令。
在MyCAT-X里实现了动态配置功能,支持以SQL命令下发的形式,实现在线的配置修改。该模块属于MyCAT-X里面的一个子模块,架构图如下图2所示(注意,MyCAT-X还包含其他模块,该架构图只展示与动态配置模块相关联的模块)。
S2、对所述SQL命令进行解析,并与预设的SQL命令语法匹配,若匹配,则执行步骤S3。
具体包括:
经过扩展的SQL解析层,解析得出自定义的动态配置更该SQL命令。
S3、根据解析出的处理类型对相应的配置文件进行处理。其中,对相应的配置文件进行处理,包括:
更新数据库中间件元数据的配置文件;
刷新本地配置文件。
该步骤具体包括:
1)根据语句类型,由“动态配置处理层”模块接受处理,对于上图所下发的SQL,需要同时更新MyCAT-X运行时的元数据配置,同时还需要同步刷新本地配置文件schema.xml;
2)对于这个修改操作,会保存到本地配置backup仓库里,以便用户发现错误的时候回滚原先的配置,简单来说这里就是实现了一个版本配置的回滚功能。
在此基础上,实现“动态配置处理层”。根据SQL解析器解析出的SQL类型,判断SQL是否满足自定义的SQL语法,如果满足,会被“动态配置处理层”捕获并进行处理。
对于请求动态更改配置,需要同时更新MyCAT-X中运行态(即内存态)的元数据和本地化的配置文件,以确保MyCAT-X服务重启后配置能够保持最新。在内部,将这两个步骤原子化,确保刷新内存态配置和刷新的本地化配置文件始终是保持一致的。
更进一步,参考版本控制的理念,实现了简单的本地配置版本控制,用于实现不同版本配置的回滚,主要是为了能够在使用者下发了错误的动态配置更改之后,能够回滚到原来正确的配置。同时,参考mysqldump工具,实现了配置SQL的导出功能(等价于前面提到的将配置文件反解析为SQL语句),用户可以选择导出这些SQL并在另外一个MyCAT-X中引用这部分配置SQL,使两个MyCAT-X服务的配置保持一致。
该技术方案主要通过扩展MyCAT-X原有的SQL解析器,实现自定义的SQL命令语法,用于实现不同类别的动态配置更改,命令的处理流程如下说明:
1、查看类命令处理流程
1)接收客户端发出的指令;
2)与预设的查看语法匹配,根据解析结果匹配需要查看的元数据配置,封装待查看的数据;
3)将待查看的数据反馈给客户端,流程处理结束。
其中,查看类语法为:
mycat_config list schemas:列出所有schema信息;
mycat_config list tables:列出当前schema下所有table信息,配合use[schema]命令确定schema;
mycat_config list datanodes:列出所有datanode信息;
mycat_config list datahosts:列出所有datahost信息;
mycat_config list users:列出所有user信息;
mycat_config list rules:列出所有分片规则信息;
mycat_config list functions:列出所有分片算法信息;
mycat_config list system variables[like'%xxx%']:列出所有***变量,可以使用like进行匹配查询;
mycat_config list sqlwall variables[like'%xxx%']:列出所有sql防火墙变量,可以使用like进行匹配查询;
mycat_config list mapfiles:列出所有的mapfile文件;
mycat_config show mapfile${mapfile_name}:查看指定mapfile的内容;
mycat_config list backups:列出所有备份。
2、创建/修改类命令处理流程
1)接受客户端发出的指令;
2)与预设的创建/修改语法匹配,根据解析内容,检查待创建/修改的配置是否合法,若合法则进入3),否则直接跳转7);
3)备份配置文件;
4)配置文件追加待创建/覆盖待修改的配置项,成功则继续5),失败则跳转7);
5)最后将创建/修改的配置同步追加到***(数据库中间件)元数据配置中;
6)创建成功,反馈结果给客户端,流程处理结束;
7)创建失败,反馈失败原因给客户端,流程处理结束。
其中,创建类语法为:
mycat_config create schema[...]:创建schema;
mycat_config create table[...]:创建table,包括分片表、全局表和普通表;
mycat_config create childtable[...]:创建子表;
mycat_config create user[...]:创建user;
mycat_config create rule[...]:创建分片规则;
mycat_config create function[...]:创建分片算法;
mycat_config create datanode[...]:创建datanode;
mycat_config create datahost[...]:创建datahost;
mycat_config create mapfile[...]:创建mapfile。
该修改类语法为:
mycat_config alter user[...]:修改user信息;
mycat_config set system variable[...]:设置***变量;
mycat_config set firewall variable[...]:设置防火墙变量。
3、删除类命令处理流程
1)接收客户端发出的指令;
2)与预设的删除语法匹配,根据解析结果,检查待删除的配置是否合法,若合法则进入3);
3)备份配置文件;
4)配置文件删除需要删除的配置项,成功则继续5),失败则跳转7);
5)最后将需要删除的配置从***元数据配置中清理掉;
6)删除成功,反馈结果给客户端,流程处理结束;
7)删除失败,反馈失败原因给客户端,流程处理结束。
该删除类语法为:
mycat_config drop schema[schemaName]:删除指定的schema;
mycat_config drop table[tableName]:删除指定的table;
mycat_config drop user[userName]:删除指定的user;
mycat_config drop rule[ruleName]:删除指定的分片规则;
mycat_config drop function[functionName]:删除指定的分片算法;
mycat_config drop datanode[datanodeName]:删除指定的datanode;
mycat_config drop datahost[datahostName]:删除指定的datahost;
mycat_config drop mapfile[mapfileName]:删除指定的mapfile。
4、备份命令处理流程
1)接受客户端发出的指令;
2)与预设的备份语法匹配,将***所有配置文件统一打包到zip格式的压缩包,保存在统一的备份目录下,文件命名按“最后配置操作”+“时间”的格式命名,避免重复,成功进入3),失败则跳转4);
3)备份成功,反馈结果给客户端,流程处理结束;
4)备份失败,反馈失败原因给客户端,流程处理结束。
5、回滚命令处理流程
1)接受客户端发出的指令;
2)与预设的回滚命令语法匹配,判断需要回滚的时间点是否合法,合法则进行3),不合法则跳转5);
根据需要回滚的时间点,找到对应的备份压缩zip格式文件,进行解压,覆盖原有的配置文件,然后***重新读取这些配置文件,更新内存中相关的元数据配置;
3)回滚成功,反馈结果给客户端,流程处理结束;
4)回滚失败,反馈失败原因给客户端,流程处理结束。
该备份和回滚命令为:
mycat_config list backups:列举所有的备份信息;
mycat_config backup:主动触发配置信息的备份;
mycat_config rollback to${index}:回滚配置信息,将配置信息恢复到某个特定的版本。
6、dump(导出)命令处理流程
1)接受客户端发出的指令;
2)与预设的dump命令语法匹配;
3)根据dump命令解析结果,匹配需要dump出来的配置,若请求dump的配置合法,则进入4),否则跳转6);
4)根据配置反解析成创建语法指令格式;
5)将4)中的结果反馈给客户端,流程处理结束;
6)dump执行失败,反馈失败原因给客户端,流程处理结束。
该dump命令为:
mycat_config dump all[into'${file}']:全量导出所有配置所需要的创建sql;
mycat_config dump schemas${schema_list_split_by_comma}[into'${file}']:实现库级别的配置sql导出,可导出多个库,多个库名之间用`,`隔开;
mycat_config dump all_tables[into'${file}']:实现表级别的配置导出,导出某个schema下的所有table相关的配置,需要配合use命令指定schema;
mycat_config dump tables${table_list_split_by_comma}[into'${file}']:实现表级别的配置导出,可以导出多个表,多个表之间用`,`隔开,需要配合use命令指定schema。
本实施例支持MyCAT-X在线修改参数和数据分片配置;
通过在线修改配置方式,无需重启服务即可让修改配置及时生效,业务***对MyCAT-X的变更可做到无感知;
远程命令操作,极大地减低运维人员手工修改文件导致误操作的概率,最大化降低运维成本;
配置文件多版本管理,提供配置修改的备份和回滚功能,让配置出错的时候可以及时回滚;
支持配置文件反解析成SQL语句,统一各个环境的操作命令;
提供dump导出功能,极大地降低多个MyCAT-X为保持配置一致而配置出错的概率。
本实施例提供了一种数据库中间件动态配置***,包括:
网络层,接受客户端下发的针对配置文件处理操作的SQL命令,并将其传输至SQL解析层;
SQL解析层,对所述SQL命令进行解析,并与预设的SQL命令语法匹配;
动态配置处理层,根据解析出的处理类型对相应的配置文件进行处理。
其中,对相应的配置文件进行处理,包括:
更新数据库中间件元数据的配置文件;
刷新本地配置文件。
将刷新之前的原本地配置文件保存至本地配置backup仓库中
本实施例提供了一种设备,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上述任一项所述的方法。
本实施例提供了一种存储有计算机程序的计算机可读存储介质,其特征是,该程序被处理器执行时实现如上述任一项所述的方法。
该计算机可读存储介质可以是上述实施例中所述设备中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行。
实施例二
本实施例与实施例一相同的特征不再赘述,本实施例与实施例一不同的特征在于:
4、备份命令处理流程
1)接受客户端发出的指令;
2)与预设的备份语法匹配,将***所有配置文件统一打包到zip格式的压缩包,保存在统一的备份目录下,成功进入3),失败则跳转4);
3)备份成功,反馈结果给客户端,流程处理结束;
4)备份失败,反馈失败原因给客户端,流程处理结束。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能。
Claims (17)
1.一种数据库中间件动态配置方法,其特征是,包括以下步骤:
S1、数据库中间件接收客户端下发的针对配置文件处理操作的SQL命令;
S2、对所述SQL命令进行解析,并与预设的SQL命令语法匹配,若匹配,则执行步骤S3;
S3、根据解析出的处理类型对相应的配置文件进行处理。
2.根据权利要求1所述的数据库中间件动态配置方法,其特征是,对相应的配置文件进行处理,包括:
更新数据库中间件元数据的配置文件;
刷新本地配置文件。
3.根据权利要求2所述的数据库中间件动态配置方法,其特征是,还包括:将刷新之前的原本地配置文件备份至本地配置backup仓库中。
4.根据权利要求3所述的数据库中间件动态配置方法,其特征是,还包括:当处理操作错误时,本地配置文件回滚至原配置文件。
5.根据权利要求1所述的数据库中间件动态配置方法,其特征是,
所述对所述SQL命令进行解析,并与预设的SQL命令语法匹配,包括:
S201、解析由客户端下发的查看命令并与预设的查看语法匹配;
S202、根据解析结果匹配需要查看的元数据配置;
S203、封装待查看的数据;
S204、将待查看的数据反馈给客户端。
6.根据权利要求1所述的数据库中间件动态配置方法,其特征是,
所述对所述SQL命令进行解析,并与预设的SQL命令语法匹配,包括:
S211、解析由客户端下发的创建/修改命令并与预设的创建/修改语法匹配;
S212、根据解析内容,检查待创建/修改的配置是否合法,若合法,则备份配置文件;
S213、针对配置文件追加待创建/覆盖待修改的配置项,若成功,则将创建/修改的配置同步追加到数据库中间件元数据配置中。
7.根据权利要求1所述的数据库中间件动态配置方法,其特征是,
所述对所述SQL命令进行解析,并与预设的SQL命令语法匹配,包括:
S221、解析由客户端下发的删除命令并与预设的删除语法匹配;
S222、根据解析结果,检查待删除的配置是否合法,若合法,则备份配置文件;
S223、针对配置文件删除需要删除的配置项,若成功,则将需要删除的配置从数据库中间件元数据配置中清理掉。
8.根据权利要求1所述的数据库中间件动态配置方法,其特征是,
所述对所述SQL命令进行解析,并与预设的SQL命令语法匹配,包括:
S231、解析由客户端下发的备份命令并与预设的备份语法匹配;
S232、将数据库中间件所有配置文件保存在备份目录下。
9.根据权利要求8所述的数据库中间件动态配置方法,其特征是,所述步骤S232中包括:
以配置文件最后配置操作时间节点为标识,标记所有配置文件。
10.根据权利要求1所述的数据库中间件动态配置方法,其特征是,
所述对所述SQL命令进行解析,并与预设的SQL命令语法匹配,包括:
S241、解析由客户端下发的回滚命令并与预设的回滚命令语法匹配;
S242、根据解析结果,判断需要回滚的时间点是否合法,若合法,则根据需要回滚的时间点,找到对应的更新前的配置文件;
S243、重新读取该配置文件并更新相关的元数据配置。
11.根据权利要求1所述的数据库中间件动态配置方法,其特征是,
所述对所述SQL命令进行解析,并与预设的SQL命令语法匹配,包括:
S251、解析由客户端下发的导出命令并与预设的导出语法匹配;
S252、根据解析结果,匹配需要导出的配置,若请求导出的配置合法,则根据配置反解析成创建语法指令格式。
12.根据权利要求6-11任一所述的数据库中间件动态配置方法,其特征是,还包括:
若对相应的配置文件处理成功,则反馈结果至客户端;
若对相应的配置文件处理操作不合法或处理失败,则反馈不合法原因或失败原因至客户端。
13.一种数据库中间件动态配置***,其特征是,包括:
网络层,接受客户端下发的针对配置文件处理操作的SQL命令,并将其传输至SQL解析层;
SQL解析层,对所述SQL命令进行解析,并与预设的SQL命令语法匹配;
动态配置处理层,根据解析出的处理类型对相应的配置文件进行处理。
14.根据权利要求13所述的数据库中间件动态配置***,其特征是,
对相应的配置文件进行处理,包括:
更新数据库中间件元数据的配置文件;
刷新本地配置文件。
15.根据权利要求14所述的数据库中间件动态配置***,其特征是,还包括:将刷新之前的原本地配置文件保存至本地配置backup仓库中。
16.一种设备,其特征是,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1-12中任一项所述的方法。
17.一种存储有计算机程序的计算机可读存储介质,其特征是,该程序被处理器执行时实现如权利要求1-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711120226.5A CN110019517A (zh) | 2017-11-14 | 2017-11-14 | 一种数据库中间件动态配置方法、***、设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711120226.5A CN110019517A (zh) | 2017-11-14 | 2017-11-14 | 一种数据库中间件动态配置方法、***、设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110019517A true CN110019517A (zh) | 2019-07-16 |
Family
ID=67186495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711120226.5A Pending CN110019517A (zh) | 2017-11-14 | 2017-11-14 | 一种数据库中间件动态配置方法、***、设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110019517A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110543627A (zh) * | 2019-09-10 | 2019-12-06 | 北京搜狐新媒体信息技术有限公司 | 一种报表配置信息的存储方法及*** |
CN110750313A (zh) * | 2019-10-21 | 2020-02-04 | 北京百度网讯科技有限公司 | 一种中间件的热加载方法、装置、电子设备及存储介质 |
CN111104548A (zh) * | 2019-12-18 | 2020-05-05 | 腾讯科技(深圳)有限公司 | 一种数据反馈方法、***及存储介质 |
CN111241064A (zh) * | 2020-01-10 | 2020-06-05 | 深圳震有科技股份有限公司 | 一种数据库配置文件的处理方法、装置及存储介质 |
CN111897872A (zh) * | 2020-07-03 | 2020-11-06 | 杭州浮云网络科技有限公司 | 基于服务中心的大规模mssql管理方法、***和计算机设备 |
CN112069239A (zh) * | 2020-08-27 | 2020-12-11 | 苏州浪潮智能科技有限公司 | 基于http请求使用数据库的方法、***、设备及存储介质 |
CN112541006A (zh) * | 2019-09-23 | 2021-03-23 | 拉扎斯网络科技(上海)有限公司 | 数据库命令请求处理方法、装置、电子设备及存储介质 |
CN112860686A (zh) * | 2019-11-28 | 2021-05-28 | 中兴通讯股份有限公司 | 数据处理方法、装置、计算机设备和计算机可读介质 |
CN113204600A (zh) * | 2021-07-05 | 2021-08-03 | 浩鲸云计算科技股份有限公司 | 基于表路由分片引擎的InfluxDB分布式集群方法 |
CN113434228A (zh) * | 2021-06-21 | 2021-09-24 | 青岛海尔科技有限公司 | 页面的请求方法、装置、存储介质及电子装置 |
CN113835786A (zh) * | 2021-09-30 | 2021-12-24 | 四川新网银行股份有限公司 | 一种数据对接***、方法和计算机可读存储介质 |
CN114025008A (zh) * | 2021-09-30 | 2022-02-08 | 苏州浪潮智能科技有限公司 | 白盒交换机nd代理配置方法、***、装置及存储介质 |
CN114237699A (zh) * | 2022-02-24 | 2022-03-25 | 四川信用通数字科技股份有限公司 | 一种配置脚本的导出方法、装置及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050091273A1 (en) * | 2003-10-24 | 2005-04-28 | International Business Machines Corporation | Integrated control and data manager for i2 demand manager |
CN105159986A (zh) * | 2015-08-31 | 2015-12-16 | 浪潮(北京)电子信息产业有限公司 | 一种oracle数据库优化配置的方法及*** |
CN105354671A (zh) * | 2015-11-06 | 2016-02-24 | 中国南方电网有限责任公司 | 通用配置管理***以及包含该***的企业级信息*** |
CN106325951A (zh) * | 2016-08-30 | 2017-01-11 | 广西电网有限责任公司 | 一种支持多数据库、多中间件类型的应用***自动化部署方法 |
CN106372176A (zh) * | 2016-08-30 | 2017-02-01 | 东华大学 | 一种支持对嵌套文档进行统一sql查询的方法 |
CN106503087A (zh) * | 2016-10-12 | 2017-03-15 | 郑州云海信息技术有限公司 | 一种用于分布式数据访问的数据库中间件 |
CN106919612A (zh) * | 2015-12-25 | 2017-07-04 | ***通信集团浙江有限公司 | 一种上线结构化查询语言脚本的处理方法及装置 |
-
2017
- 2017-11-14 CN CN201711120226.5A patent/CN110019517A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050091273A1 (en) * | 2003-10-24 | 2005-04-28 | International Business Machines Corporation | Integrated control and data manager for i2 demand manager |
CN105159986A (zh) * | 2015-08-31 | 2015-12-16 | 浪潮(北京)电子信息产业有限公司 | 一种oracle数据库优化配置的方法及*** |
CN105354671A (zh) * | 2015-11-06 | 2016-02-24 | 中国南方电网有限责任公司 | 通用配置管理***以及包含该***的企业级信息*** |
CN106919612A (zh) * | 2015-12-25 | 2017-07-04 | ***通信集团浙江有限公司 | 一种上线结构化查询语言脚本的处理方法及装置 |
CN106325951A (zh) * | 2016-08-30 | 2017-01-11 | 广西电网有限责任公司 | 一种支持多数据库、多中间件类型的应用***自动化部署方法 |
CN106372176A (zh) * | 2016-08-30 | 2017-02-01 | 东华大学 | 一种支持对嵌套文档进行统一sql查询的方法 |
CN106503087A (zh) * | 2016-10-12 | 2017-03-15 | 郑州云海信息技术有限公司 | 一种用于分布式数据访问的数据库中间件 |
Non-Patent Citations (1)
Title |
---|
HUIYE: "SQL Server中对XML数据的五种基本你操作", 《新浪博客》 * |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110543627B (zh) * | 2019-09-10 | 2023-08-11 | 北京搜狐新媒体信息技术有限公司 | 一种报表配置信息的存储方法及*** |
CN110543627A (zh) * | 2019-09-10 | 2019-12-06 | 北京搜狐新媒体信息技术有限公司 | 一种报表配置信息的存储方法及*** |
CN112541006A (zh) * | 2019-09-23 | 2021-03-23 | 拉扎斯网络科技(上海)有限公司 | 数据库命令请求处理方法、装置、电子设备及存储介质 |
CN110750313A (zh) * | 2019-10-21 | 2020-02-04 | 北京百度网讯科技有限公司 | 一种中间件的热加载方法、装置、电子设备及存储介质 |
CN110750313B (zh) * | 2019-10-21 | 2023-07-25 | 北京百度网讯科技有限公司 | 一种中间件的热加载方法、装置、电子设备及存储介质 |
CN112860686A (zh) * | 2019-11-28 | 2021-05-28 | 中兴通讯股份有限公司 | 数据处理方法、装置、计算机设备和计算机可读介质 |
CN112860686B (zh) * | 2019-11-28 | 2023-03-10 | 金篆信科有限责任公司 | 数据处理方法、装置、计算机设备和计算机可读介质 |
CN111104548B (zh) * | 2019-12-18 | 2021-09-14 | 腾讯科技(深圳)有限公司 | 一种数据反馈方法、***及存储介质 |
CN111104548A (zh) * | 2019-12-18 | 2020-05-05 | 腾讯科技(深圳)有限公司 | 一种数据反馈方法、***及存储介质 |
CN111241064B (zh) * | 2020-01-10 | 2023-11-03 | 深圳震有科技股份有限公司 | 一种数据库配置文件的处理方法、装置及存储介质 |
CN111241064A (zh) * | 2020-01-10 | 2020-06-05 | 深圳震有科技股份有限公司 | 一种数据库配置文件的处理方法、装置及存储介质 |
CN111897872A (zh) * | 2020-07-03 | 2020-11-06 | 杭州浮云网络科技有限公司 | 基于服务中心的大规模mssql管理方法、***和计算机设备 |
CN112069239B (zh) * | 2020-08-27 | 2022-06-03 | 苏州浪潮智能科技有限公司 | 基于http请求使用数据库的方法、***、设备及存储介质 |
CN112069239A (zh) * | 2020-08-27 | 2020-12-11 | 苏州浪潮智能科技有限公司 | 基于http请求使用数据库的方法、***、设备及存储介质 |
CN113434228A (zh) * | 2021-06-21 | 2021-09-24 | 青岛海尔科技有限公司 | 页面的请求方法、装置、存储介质及电子装置 |
CN113204600B (zh) * | 2021-07-05 | 2021-09-28 | 浩鲸云计算科技股份有限公司 | 基于表路由分片引擎的InfluxDB分布式集群方法 |
CN113204600A (zh) * | 2021-07-05 | 2021-08-03 | 浩鲸云计算科技股份有限公司 | 基于表路由分片引擎的InfluxDB分布式集群方法 |
CN114025008A (zh) * | 2021-09-30 | 2022-02-08 | 苏州浪潮智能科技有限公司 | 白盒交换机nd代理配置方法、***、装置及存储介质 |
CN113835786B (zh) * | 2021-09-30 | 2023-04-28 | 四川新网银行股份有限公司 | 一种数据对接***、方法和计算机可读存储介质 |
CN114025008B (zh) * | 2021-09-30 | 2023-06-02 | 苏州浪潮智能科技有限公司 | 白盒交换机nd代理配置方法、***、装置及存储介质 |
CN113835786A (zh) * | 2021-09-30 | 2021-12-24 | 四川新网银行股份有限公司 | 一种数据对接***、方法和计算机可读存储介质 |
CN114237699B (zh) * | 2022-02-24 | 2022-05-03 | 四川信用通数字科技股份有限公司 | 一种配置脚本的导出方法、装置及存储介质 |
CN114237699A (zh) * | 2022-02-24 | 2022-03-25 | 四川信用通数字科技股份有限公司 | 一种配置脚本的导出方法、装置及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110019517A (zh) | 一种数据库中间件动态配置方法、***、设备、存储介质 | |
US11113294B1 (en) | Recommending query templates during query formation | |
US12026155B2 (en) | Executing one query based on results of another query | |
US20200387481A1 (en) | Systems and methods for in-place records management and content lifecycle management | |
US11216511B1 (en) | Executing a child query based on results of a parent query | |
US9519700B2 (en) | Automatically synchronizing production data of a source system and a target system | |
US10762075B2 (en) | Database interface agent for a tenant-based upgrade system | |
US11386158B1 (en) | Recommending query parameters based on tenant information | |
US11604799B1 (en) | Performing panel-related actions based on user interaction with a graphical user interface | |
US10579634B2 (en) | Apparatus and method for operating a distributed database with foreign tables | |
CA2858680C (en) | Systems and methods for improving database performance | |
US8745076B2 (en) | Structured query language syntax rewriting | |
KR20200093596A (ko) | 콘텐츠 관리 시스템의 메타데이터 재동기화 | |
US20210390103A1 (en) | Federated search of heterogeneous data sources | |
US11636128B1 (en) | Displaying query results from a previous query when accessing a panel | |
US9542467B2 (en) | Efficiently firing mapping and transform rules during bidirectional synchronization | |
US20170139891A1 (en) | Shared elements for business information documents | |
WO2019076062A1 (zh) | 功能页面定制方法及应用服务器 | |
EP3173951A1 (en) | Integrated framework for secured data provisioning and management | |
JPWO2008069125A1 (ja) | データ管理装置 | |
KR20070026421A (ko) | 초 무공유 병렬 데이터베이스 | |
US9805137B2 (en) | Virtualizing schema relations over a single database relation | |
CA2688509A1 (en) | Distributed system for monitoring information events | |
CN102682035A (zh) | 数据管理方法和数据管理*** | |
Middleton et al. | Hpcc systems: Introduction to hpcc (high-performance computing cluster) |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190716 |
|
RJ01 | Rejection of invention patent application after publication |