一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种离线数据迁移方法、装置、可读存储介质和设备与流程

2023-02-01 22:26:40 来源:中国专利 TAG:


1.本发明涉及数据处理技术领域,具体涉及一种离线数据迁移方法、装置、可读存储介质和设备。


背景技术:

2.sql server是由microsoft公司在80年代推出的一种关系型数据库系统,并同步提供可靠且可扩展的rdbms。sql server主要面向使用.net作为开发语言的开发人员且主要支持windows平台。mysql是在90年代中期推出的的,它是最早的开源数据库之一,与sql server不同,mysql几乎可以与所有其他语言相匹配,且支持所有主要的操作系统和平台组合,包括linux、windows、mac os和solaris等。mysql用户不存在单一操作系统或平台依赖性,可以灵活地将mysql部署在异构计算环境中。直到如今mysql已经是全球最受欢迎的开源数据库,借久经考验的易用性、性能、可靠性和可扩展性,mysql成为web应用的首选数据库,部署在众多大型互联网企业(包括facebook、twitter、youtube、yahoo!和wikipedia)以及数千家中型企业中。由于mysql将节约成本、自由选择平台、特性丰富等优势于一身,目前大多数企业都选择将数据从sql server迁移至mysql。
3.在现有的技术方案中,实现sql server迁移至mysql数据库的主要方式是:
4.依赖一些能够同时支持sql server和mysql的数据库管理工具来实现数据迁移操作,这种方法需要在原有windows计算机上安装数据库管理工具如navicat,sqlyog,mysql workbench等,具体操作步骤是首先在工具内新建mysql数据库,其次使用导入向导连接需要迁移的sql server数据源,连接成功后选择需要迁移的表,设置目标表名称以及匹配字段数据类型,设置完成后即可进行数据迁移操作,最后再根据实际情况对迁移后的表进行进一步的处理操作。
5.上述各种的迁移方式,需要在原有系统上安装同时支持sql server和mysql的数据库管理工具,存在以下缺点:在迁移过程中使用的工具的安装配置步骤复杂,针对某些老旧版本服务器可能会出现不适配的情况。


技术实现要素:

6.有鉴于此,本发明实施例提供一种离线数据迁移方法、装置、可读存储介质和设备,以实现在不使用额外工具的情况下实现sql server至mysql的数据迁移。
7.为实现上述目的,本发明实施例提供如下技术方案:
8.一种离线数据迁移方法,包括:
9.获取数据迁移信息,所述数据迁移信息至少包括数据库在线管理系统中所需迁移的目标数据库的数据库标识、数据表的导出格式、以及要导出的目标文件的文件类型;
10.基于所述数据库标识查找并确定目标数据库;
11.获取目标对象信息和行列分割方式;
12.基于所述目标对象信息由所述目标数据库中选定目标文件;
13.将所述目标文件转换为预设文件类型;
14.将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机,以使得所述目标计算机在获取到预设文件类型的目标文件后,基于所述行列分割方式对所述预设文件类型的目标文件进行行列分割,并将分割完成后的目标文件导入关系型数据库管理系统。
15.可选的,上述离线数据迁移方法中,获取数据迁移信息之后,将所述目标文件转换为预设文件类型之前,还包括:
16.基于预设映射关系,获取与所述目标文件的文件类型相匹配的预设文件类型,所述预设映射关系中存储有数据库在线管理系统中的文件类型与关系型数据库管理系统的文件类型之间的映射关系;
17.或调用在线管理系统的dts导入/导出向导,基于所述dts导入/导出向导选择预设文件类型。
18.可选的,上述离线数据迁移方法中,将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机,包括:
19.获取文件的传输类型;
20.当所述传输类型为无线传输时,获取目标计算机地址或目标账户地址,通过无线网络将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机地址或目标账户地址;
21.当所述传输类型为硬盘传输时,将所述预设文件类型的目标文件以及所述行列分割存储于预设移动硬盘中,以通过所述预设移动硬盘将所述预设文件类型的目标文件以及所述行列分割方式传输给目标计算机。
22.可选的,上述离线数据迁移方法中,当所述预设文件类型为txt时,将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机,包括:
23.将txt类型的目标文件的编码格式设置为utf-8;
24.将编码格式设置为utf-8的目标文件以及所述行列分割方式发送给目标计算机。
25.一种离线数据迁移装置,包括:
26.指令获取单元,用于调用在线管理系统的dts导入/导出向导,基于所述dts导入/导出向导获取数据迁移信息,所述数据迁移信息至少包括数据库在线管理系统中所需迁移的目标数据库的数据库标识、数据表的导出格式、以及要导出的目标文件的文件类型;
27.目标数据库确定单元,用于基于所述数据库标识查找并确定目标数据库;
28.目标文件获取单元,用于获取目标对象信息和行列分割方式;基于所述目标对象信息由所述目标数据库中选定目标文件;
29.类型转换单元,用于将所述目标文件转换为预设文件类型;
30.文件迁移单元,用于将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机,以使得所述目标计算机在获取到预设文件类型的目标文件后,基于所述行列分割方式对所述预设文件类型的目标文件进行行列分割,并将分割完成后的目标文件导入关系型数据库管理系统。
31.可选的,上述离线数据迁移装置中,还包括:
32.目标文件类型获取单元,用于获取数据迁移信息之后,将所述目标文件转换为预
设文件类型之前,基于预设映射关系,获取与所述目标文件的文件类型相匹配的预设文件类型,所述预设映射关系中存储有数据库在线管理系统中的文件类型与关系型数据库管理系统的文件类型之间的映射关系;或,调用在线管理系统的dts导入/导出向导,基于所述dts导入/导出向导选择预设文件类型。
33.可选的,上述离线数据迁移装置中,文件迁移单元在将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机时,具体用于:
34.获取文件的传输类型;
35.当所述传输类型为无线传输时,获取目标计算机地址或目标账户地址,通过无线网络将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机地址或目标账户地址;
36.当所述传输类型为硬盘传输时,将所述预设文件类型的目标文件以及所述行列分割存储于预设移动硬盘中,以通过所述预设移动硬盘将所述预设文件类型的目标文件以及所述行列分割方式传输给目标计算机。
37.可选的,上述离线数据迁移装置中,当所述预设文件类型为txt时,所述文件迁移单元在将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机时,具体用于:
38.将txt类型的目标文件的编码格式设置为utf-8;
39.将编码格式设置为utf-8的目标文件以及所述行列分割方式发送给目标计算机。
40.一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述任意一项所述的离线数据迁移方法的各个步骤。
41.一种离线数据迁移设备,包括存储器和处理器;
42.所述存储器,用于存储程序;
43.所述处理器,用于执行所述程序,实现上述任一项所述的离线数据迁移方法的各个步骤。
44.基于上述技术方案,本发明实施例提供的上述方案,通过获取数据迁移信息,基于所述数据库标识查找并确定目标数据库;获取目标对象信息和行列分割方式;基于所述目标对象信息由所述目标数据库中选定目标文件;将所述目标文件转换为预设文件类型;将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机,以使得所述目标计算机在获取到预设文件类型的目标文件后,基于所述行列分割方式对所述预设文件类型的目标文件进行行列分割,并将分割完成后的目标文件导入关系型数据库管理系统。上述方案在将目标文件由数据库在线管理系统sql server迁移至关系型数据库管理系统mysql的过程中,无需用到外部工具,迁移过程简单有效。
附图说明
45.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
46.图1为本技术实施例公开的离线数据迁移方法的流程示意图;
47.图2为本技术实施例公开的离线数据迁移装置的结构示意图;
48.图3为本技术实施例公开的离线数据迁移设备的结构示意图。
具体实施方式
49.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
50.首先,对本技术中用到的部分转移名词进行解释说明:
51.rdbms(relational database management system):关系数据库管理系统,是指管理关系数据库,并将数据逻辑组织的系统。
52.sql server2000:是sql server数据库管理系统的一个版本,该版本具有使用方便,可伸缩性好,与相关软件集成程度高等优点。可跨越从运行microsoft windows 98的膝上型电脑到运行microsoft windows2000的大型多处理器的服务器等多种平台使用。
53.navicat:是一套可创建多个连接的数据管理工具,可以方便管理mysql、oracle、sqllite、sql server等不同类型的数据库。
54.sqlyog:是业界著名的webyog公司出品的一款简洁高效、功能强大的图形化mysql数据库管理工具。
55.mysql workbench:是一款专门为mysql设计的er/数据库建模工具,可以用mysql workbench设计和创建新的数据库图示,建立数据库文档,以及进行复杂的mysql迁移。
56.本技术实施例公开了一种离线数据迁移方法,当需要由在线管理系统向涉密计算机的关系型数据库管理系统迁移文件时,基于迁移指令调用在线管理系统的dts导入/导出向导,基于所述dts导入/导出向导获取数据迁移信息,基于所述迁移信息确定目标数据库、目标文件以及导出后的文件的文件类型,采用设定的分割方式对到处后的文件进行分割,将分割后的目标文件发送至涉密计算机,从而完成了文件迁移。
57.具体的,参见图1,本技术实施例公开了一种离线数据迁移方法,其特征在于,包括:
58.步骤s101:获取数据迁移信息;
59.在本步骤中,当需要由数据库在线管理系统sql server向关系型数据库管理系统mysql迁移数据时,首先在windows服务器上启动sql server,获取数据迁移信息,所述数据迁移信息可以包括:
60.数据库在线管理系统中所需迁移数据的目标数据库的数据库标识,基于该数据标识可以确定所需迁移的目标文件所位于的数据库;
61.数据表的导出格式,当所需迁移的目标文件包括数据表时,所述数据迁移信息还包括数据表的导出格式,在本方案中,所述数据表的导出格式默认为txt格式,
62.要导出的目标文件的文件类型,在本方案中,所述目标文件的文件类型指的是,所需进行迁移至关系型数据库管理系统mysql的目标文件文件类型,其类型可以根据用户实际需求自行选择。
63.在本技术实施例公开的技术方案中,所述数据迁移信息可以由用户直接设置,也
可以通过调取在线管理系统的dts导入/导出向导,通过所述在线管理系统的dts导入/导出向导逐步设置数据迁移信息中的各项配置。
64.步骤s102:基于所述数据库标识查找并确定目标数据库;
65.当确定所述数据库标识时,基于所述数据库标识由所述数据库在线管理系统sql server中查找并确定目标数据库。
66.步骤s103:获取目标对象信息和行列分割方式;
67.所述目标对象信息可以指的是所需迁移的目标文件的文件标识,通过所述目标对象信息可以由所述目标数据库中确定所需迁移的目标文件。
68.所述行列分割方式可以包括目标文件的行分隔符、列分隔符、文本限定符等中的一项或多项。所述行列分割方式对用于对转换后的文件进行分割。
69.在本技术另一实施例公开的技术方案中,所述目标对象信息和行列分割方式也可以通过所述在线管理系统的dts导入/导出向导进行配置。
70.步骤s104:基于所述目标对象信息由所述目标数据库中选定目标文件;
71.当所述目标对象信息确定以后,基于所述目标对象信息可以由所述目标数据库中选定目标文件,所述目标文件可以为一个或多个文件,也可以为某一类型的目标文件,或者是符合预设条件的目标文件,所述预设条件可以为由文件大小、文件类型中的一项或多项组合而成的筛选条件。
72.步骤s105:将所述目标文件转换为预设文件类型;
73.在本方案中,所述预设文件类型为所述目标文件导出后进行转换后得到的文件所对应的文件类型,在本方案中,为了使得所述关系型数据库管理系统mysql能够识别迁移处的目标文件,需要对其文件类型进行转换。当然,如果所述关系型数据库管理系统mysql能够直接识别出所述目标文件时,所述预设文件类型即为所述目标文件的文件类型,此时无需对其进行类型转换。当所述关系型数据库管理系统mysql无法识别所述目标文件时,需要对其文件类型进行转换。在本方案中,数据库在线管理系统sql server和关系型数据库管理系统mysql均能识别的文件的数据类型可以包括:
74.bigint
75.binary
76.bit
77.char
78.character
79.datetime
80.dec,decimal
81.float
82.double precesion
83.int,inteder
84.nchar,national character
85.nvarchar,nchar varying
86.national char varying,national character varying
87.numeric
88.real
89.smallint
90.text
91.timestamp
92.tinyint
93.varbinary
94.varchar,char varying,character varying
95.数据库在线管理系统sql server和关系型数据库管理系统mysql中需要转换的数据类型以及对应映射关系可以参见表1所示:
96.表1
97.sql servermysqlidentityauto_incrementntext,national_texttext character set utf8smalldatetimedatetimemoneydecimal(19,4)small moneydecimal(10,4)uniqueidentifierbinary(16)sysnamechar(256)
98.由此,为了使得关系型数据库管理系统mysql能够识别目标文件,在本方案中,获取数据迁移信息之后,将所述目标文件转换为预设文件类型之前,还包括:
99.基于预设映射关系,获取与所述目标文件的文件类型相匹配的预设文件类型,所述预设映射关系中存储有数据库在线管理系统中的文件类型与关系型数据库管理系统的文件类型之间的映射关系;
100.或者是,调用在线管理系统的dts导入/导出向导,基于所述dts导入/导出向导选择预设文件类型。
101.步骤s106:将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机,以使得所述目标计算机在获取到预设文件类型的目标文件后,基于所述行列分割方式对所述预设文件类型的目标文件进行行列分割,并将分割完成后的目标文件导入关系型数据库管理系统。
102.在本步骤中,当将所述数据库在线管理系统sql server导出的目标文件转换为预设文件类型后,将其发送给目标计算机,所述目标计算机在获取到预设文件类型的目标文件后,可以使用mysql导入命令并按照设置的行列分隔符完成目标文件导入到mysql数据库的操作,从而实现了目标文件由数据库在线管理系统sql server迁移至关系型数据库管理系统mysql的操作。
103.由上述方案可见,上述方案在将目标文件由数据库在线管理系统sql server迁移至关系型数据库管理系统mysql的过程中,无需用到外部工具,迁移过程简单有效。
104.在本技术另一实施例公开的技术方案中,如果数据库在线管理系统sql server和涉密计算机均位于开放网络中,可以直接通过无线网络的方式,将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机,在本方案中,所述目标计算机指的就是
上述涉密计算机,如果所述涉密计算机没有位于开放网络中,则可以通过硬盘方式将所述预设文件类型的目标文件以及所述行列分割方式拷贝至目标计算机,由此,上述方法中,将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机,可以包括:
105.获取文件的传输类型,所述文件传输类型可以为无线传输或者是硬盘传输;当所述传输类型为无线传输时,获取目标计算机地址或目标账户地址,通过无线网络将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机地址或目标账户地址;当所述传输类型为硬盘传输时,将所述预设文件类型的目标文件以及所述行列分割存储于预设移动硬盘中,以通过所述预设移动硬盘将所述预设文件类型的目标文件以及所述行列分割方式传输给目标计算机。
106.在本技术另一实施例公开的技术方案中,为了确保数据的安全性,当所述预设文件类型为txt时,将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机,包括:将txt类型的目标文件的编码格式设置为utf-8;将编码格式设置为utf-8的目标文件以及所述行列分割方式发送给目标计算机。
107.本实施例中公开了一种离线数据迁移装置,装置中的各个单元的具体工作内容,请参见上述方法实施例的内容。
108.下面对本发明实施例提供的离线数据迁移装置进行描述,下文描述的离线数据迁移装置与上文描述的离线数据迁移方法可相互对应参照。
109.参见图2,本技术实施例公开的一种离线数据迁移装置,包括:
110.指令获取单元a,用于获取数据迁移信息,所述数据迁移信息至少包括数据库在线管理系统中所需迁移的目标数据库的数据库标识、数据表的导出格式、以及要导出的目标文件的文件类型;
111.目标数据库确定单元b,用于基于所述数据库标识查找并确定目标数据库;
112.目标文件获取单元c,用于获取目标对象信息和行列分割方式;基于所述目标对象信息由所述目标数据库中选定目标文件;
113.类型转换单元d,用于将所述目标文件转换为预设文件类型;
114.文件迁移单元e,用于将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机,以使得所述目标计算机在获取到预设文件类型的目标文件后,基于所述行列分割方式对所述预设文件类型的目标文件进行行列分割,并将分割完成后的目标文件导入。
115.与上述方法相对应,上述装置还可以包括:
116.目标文件类型获取单元,用于获取数据迁移信息之后,将所述目标文件转换为预设文件类型之前,基于预设映射关系,获取与所述目标文件的文件类型相匹配的预设文件类型,所述预设映射关系中存储有数据库在线管理系统中的文件类型与关系型数据库管理系统的文件类型之间的映射关系;或,调用在线管理系统的dts导入/导出向导,基于所述dts导入/导出向导选择预设文件类型。
117.与上述方法相对应,所述文件迁移单元在将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机时,具体用于:
118.获取文件的传输类型;
119.当所述传输类型为无线传输时,获取目标计算机地址或目标账户地址,通过无线
网络将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机地址或目标账户地址;
120.当所述传输类型为硬盘传输时,将所述预设文件类型的目标文件以及所述行列分割存储于预设移动硬盘中,以通过所述预设移动硬盘将所述预设文件类型的目标文件以及所述行列分割方式传输给目标计算机。
121.与上述方法相对应,当所述预设文件类型为txt时,所述文件迁移单元在将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机时,具体用于:
122.将txt类型的目标文件的编码格式设置为utf-8;
123.将编码格式设置为utf-8的目标文件以及所述行列分割方式发送给目标计算机。
124.一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述任意一项所述的离线数据迁移方法的各个步骤。
125.图3为本发明实施例提供的离线数据迁移设备的硬件结构图,参见图3所示,可以包括:至少一个处理器100,至少一个通信接口200,至少一个存储器300和至少一个通信总线400;
126.在本发明实施例中,处理器100、通信接口200、存储器300、通信总线400的数量为至少一个,且处理器100、通信接口200、存储器300通过通信总线400完成相互间的通信;显然,图3所示的处理器100、通信接口200、存储器300和通信总线400所示的通信连接示意仅是可选的;
127.可选的,通信接口200可以为通信模块的接口,如gsm模块的接口;
128.处理器100可能是一个中央处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
129.存储器300可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
130.其中,处理器100具体用于:
131.获取数据迁移信息,所述数据迁移信息至少包括数据库在线管理系统中所需迁移的目标数据库的数据库标识、数据表的导出格式、以及要导出的目标文件的文件类型;
132.基于所述数据库标识查找并确定目标数据库;
133.获取目标对象信息和行列分割方式;
134.基于所述目标对象信息由所述目标数据库中选定目标文件;
135.将所述目标文件转换为预设文件类型;
136.将所述预设文件类型的目标文件以及所述行列分割方式发送给目标计算机,以使得所述目标计算机在获取到预设文件类型的目标文件后,基于所述行列分割方式对所述预设文件类型的目标文件进行行列分割,并将分割完成后的目标文件导入。
137.为了描述的方便,描述以上系统时以功能分为各种模块分别描述。当然,在实施本发明时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
138.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法
实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
139.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
140.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
141.还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
142.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献