本发明涉及数据导入导出,尤其涉及一种mysql协议数据库的数据导入导出方法及系统。
背景技术:
1、随着当今社会发展,数据已不可避免地融入了整个社会的方方面面。目前,如何将数据进行有序管理、高效运行、安全存储等问题成了首要任务,要解决上述问题则离不开数据库技术的支持和发展。mysql是一种关系数据库管理系统,具有高性能、小体积、可移植性与易用性等特征,被广泛应用到各个邻域。
2、mysql协议数据库的数据管理系统主要目的是有效管理和使用数据,那么数据就成为数据库管理系统的基础与核心,如果直接能将已有数据导入数据库,或者将数据从数据库导出,将能更好地运用数据库。
技术实现思路
1、本发明提供了一种mysql协议数据库的数据导入导出方法及系统,以解决现有技术中存在的随着当今社会发展,数据已不可避免地融入了整个社会的方方面面。目前,如何将数据进行有序管理、高效运行、安全存储等问题成了首要任务,要解决上述问题则离不开数据库技术的支持和发展。mysql是一种关系数据库管理系统,具有高性能、小体积、可移植性与易用性等特征,被广泛应用到各个邻域。mysql协议数据库的数据管理系统主要目的是有效管理和使用数据,那么数据就成为数据库管理系统的基础与核心,如果直接能将已有数据导入数据库,或者将数据从数据库导出,将能更好地运用数据库的上述问题。
2、为了达到上述目的,本发明提供如下技术方案:
3、一种mysql协议数据库的数据导入导出方法,包括:
4、s101:对分布式mysql协议数据库的数据源进行预处理操作,获取具有类型之间映射关系的目的数据源;
5、s102:用户向分布式mysql协议数据库发送数据导入请求,分布式mysql协议数据库响应请求,调取待导入的数据后将数据导入mysql协议数据库;
6、s103:用户向分布式mysql协议数据库发送数据导出请求,分布式mysql协议数据库响应请求,调取待导出的数据后将数据导出mysql协议数据库。
7、其中,所述s101步骤包括:
8、s1011:将分布式mysql协议数据库的数据源进行初始化操作,将初始数据源与目的数据源进行连接;
9、s1012:通过相关的odbc api函数读取初始数据源的元数据信息,驱动程序通过数据源数据类型与odbc sol类型之间构成对于的映射关系,从映射关系找出源数据源与目的数据源类型的对应关系,生成目标表的结构信息;
10、s1013:基于目标表的结构信息,构建目标表结构,逐行读取源表记录,调用insert语句,写入分布式mysql协议数据库的表中。
11、其中,所述s102步骤包括:
12、s1021:根据用户发送数据导入请求,分布式mysql协议数据库读取本地配置文件,读取系统状态文件目录;
13、s1022:读取数据指标参数配置文件,加载目标指标参数模式,读取系统状态文件,遍历文件并匹配指标参数模式,提取符合指标参数模式的信息串并存储到内存中,直到系统状态文件中的所有的mysql数据库实例的参数都获取完毕;
14、s1023:将内存中的参数信息存储到数据文件中,再将需要导入的数据文件选择对于的导入方式,通过输入对应的参数信息获取导入的数据。
15、其中,所述s103步骤包括:
16、s1031:用户向分布式mysql协议数据库发出导出请求,分布式mysql协议数据库向导出端发起一个数据导出的rpc调用;
17、s1032:导出端从分布式mysql协议数据库中分片获取数据,分片数据分别在文件系统进行组合,在文件系统中组合为csv文件;
18、s1033:csv文件从文件系统中导出,用户获取从分布式mysql协议数据库导出的数据。
19、其中,所述s1032步骤包括:
20、将需要导出的数据按照固定的分片大小进行分配,获取生成子任务;向分布式mysql协议数据库中的集群分发子任务,若集群的任务数据达到上限则将数据缓存在阻塞队列中;所有子任务执行完毕后再文件系统中组装数据分片,生成文件,当前的主任务则进行任务更新操作,获取文件下载链接,通过文件下载链接将文件进行导出操作。
21、一种mysql协议数据库的数据导入导出系统,包括:
22、数据预处理单元用于对分布式mysql协议数据库的数据源进行预处理操作,获取具有类型之间映射关系的目的数据源;
23、数据导入单元用于用户向分布式mysql协议数据库发送数据导入请求,分布式mysql协议数据库响应请求,调取待导入的数据后将数据导入mysql协议数据库;
24、数据导出单元用于用户向分布式mysql协议数据库发送数据导出请求,分布式mysql协议数据库响应请求,调取待导出的数据后将数据导出mysql协议数据库。
25、其中,所述数据预处理单元包括:
26、初始化操作子单元用于将分布式mysql协议数据库的数据源进行初始化操作,将初始数据源与目的数据源进行连接;
27、构建映射关系子单元用于通过相关的odbc api函数读取初始数据源的元数据信息,驱动程序通过数据源数据类型与odbc sol类型之间构成对于的映射关系,从映射关系找出源数据源与目的数据源类型的对应关系,生成目标表的结构信息;
28、构建目标表结构子单元用于基于目标表的结构信息,构建目标表结构,逐行读取源表记录,调用insert语句,写入分布式mysql协议数据库的表中。
29、其中,所述数据导入单元包括:
30、数据导入第一子单元用于根据用户发送数据导入请求,分布式mysql协议数据库读取本地配置文件,读取系统状态文件目录;
31、数据导入第二子单元用于读取数据指标参数配置文件,加载目标指标参数模式,读取系统状态文件,遍历文件并匹配指标参数模式,提取符合指标参数模式的信息串并存储到内存中,直到系统状态文件中的所有的mysql数据库实例的参数都获取完毕;
32、数据导入第三子单元用于将内存中的参数信息存储到数据文件中,再将需要导入的数据文件选择对于的导入方式,通过输入对应的参数信息获取导入的数据。
33、其中,所述数据导出单元包括:
34、数据导出第一子单元用于用户向分布式mysql协议数据库发出导出请求,分布式mysql协议数据库向导出端发起一个数据导出的rpc调用;
35、数据导出第二子单元用于导出端从分布式mysql协议数据库中分片获取数据,分片数据分别在文件系统进行组合,在文件系统中组合为csv文件;
36、数据导出第三子单元csv文件从文件系统中导出,用户获取从分布式mysql协议数据库导出的数据。
37、其中,所述数据导出第二子单元包括:
38、将需要导出的数据按照固定的分片大小进行分配,获取生成子任务;向分布式mysql协议数据库中的集群分发子任务,若集群的任务数据达到上限则将数据缓存在阻塞队列中;所有子任务执行完毕后再文件系统中组装数据分片,生成文件,当前的主任务则进行任务更新操作,获取文件下载链接,通过文件下载链接将文件进行导出操作。
39、与现有技术相比,本发明具有以下优点:
40、一种mysql协议数据库的数据导入导出方法,包括:对分布式mysql协议数据库的数据源进行预处理操作,获取具有类型之间映射关系的目的数据源;用户向分布式mysql协议数据库发送数据导入请求,分布式mysql协议数据库响应请求,调取待导入的数据后将数据导入mysql协议数据库;用户向分布式mysql协议数据库发送数据导出请求,分布式mysql协议数据库响应请求,调取待导出的数据后将数据导出mysql协议数据库。mysql协议数据库的数据是数据库能正常运行和使用的基础,通过为mysql协议数据库中多种数据导入及导出提供实施途径,使得数据库使用更加便捷和有效。
41、本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
42、下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。