数据导入
更新时间:2024-07-09
DBSC 支持数据导入功能,支持将包含 SQL 脚本或数据内容的文件导入至目标数据库,最大支持 5 GB 的文件。
背景信息
DBSC 的 SQL 任务支持最基本的 SQL 脚本操作,为少量 SQL 的批量执行提供了方便的途径。对于大量数据的导入操作,就需要使用其他高效的工具来简化这个过程。为了解决这个问题, DBSC 提供了强大的数据导入功能,帮助用户轻松地将大量的数据从文件中导入到目标数据库中。
功能介绍
DBSC 的数据导入功能可以帮助用户将包含大量数据的文件导入到目标数据库中。具体的功能详情如下:
- 支持的导入类型以及对应的文件格式:
- 支持的最大文件大小:5 GB
- 支持的字符集:UTF-8、GBK
-
数据安全性保障:组织模式组织模式支持对组织下的每个用户分配不同的角色和资源管理权限,适用于同一组织下多用户协同开发,在保证数据安全的同时,提升整体生产效率。下,支持对数据进行严格的权限控制,数据导入需经过审批流程,确保数据的安全。
- 审批流程(审批人):默认状态下,必须通过系统管理员审批,才可以执行数据导入任务,支持管理员角色对审批流程进行按需调整。
- 审批流程(执行人):支持配置导入任务在通过审批后的执行人,可配置为系统执行、申请人执行、审批人执行(审批流程的最后一个审批人)。
- 开发规范:导入的数据文件(SQL)中如果包含多种导入语句,为保证数据库的安全,默认状态下仅执行
INSERT
语句,支持管理员角色对开发规范进行按需调整。 - 执行时间:导入任务的审批通过后,执行人可选择立即执行或定时执行,满足有特定执行时间需求的场景。
使用场景
DBSC 的数据导入功能可以在以下场景下发挥重要作用:
- 外部来源数据导入:在需要从外部来源获取数据的场景下,DBSC 数据导入功能可以帮助用户将这些外部来源数据导入到目标数据库中,以便后续处理和管理。
- 数据初始化:在新建数据库或者重新设置数据库结构时,需要将初始数据导入数据库中,DBSC 数据导入功能可以帮助用户将初始数据从文件中导入到目标数据库中,从而快速初始化数据库。
-
大批量数据更新:需要对数据库执行大规模数据更新的场景。
- 例 1:企业需要将大量的平台订单数据导入到企业数据库,方便进行存储和分析。
- 例 2:企业需要将重复数据或无效数据删除或合并,或者需要对数据进行格式化或转换。
- 例 3:企业需要批量更新产品价格、库存或其他关键业务数据。
- 例 4:企业需要更新数据的时间戳或数据的格式用于故障处理。
使用限制
- 非 SQL 类型的数据文件必须导入到指定的一张表中,并且该表中存在数据文件中的所有列,否则导入任务将失败。
- 导入不包含结构的 SQL 类型文件时,请确保文件中每个语句对应的表已存在于目标库中。
- 当前数据导入不支持规范校验(预检查),需谨慎使用。
- 当前支持 MySQL、GaiaDB、GaiaDB-X。
提交任务
前提条件
- 已有目标数据源的库表权限。如没有可以先申请。更多信息,请参见 权限申请与审批。
- 已有数据导入的模块权限(默认情况下都具备),如果您看不到该入口,请联系您的系统管理员。
- 已有数据导入 - 提交权限。如何申请该权限,请参见 权限申请与审批。
操作步骤
- 登录 DBSC 控制台。
- 在左侧导航栏,点击 数据开发—>数据导入。
- 在数据导入页面,单击页面右上角的创建数据导入。
-
在创建数据导入页面,按照下表进行配置1. 。
参数 说明 任务名称 输入数据导入任务的名称,仅在组织模式下需要输入。为了方便后续查找和管理,请尽量使用有意义的名称。最多支持 64 个字符。 数据源/库 选择数据导入任务的目标数据源和库|Schema。导入类型不为 SQL 时,还需要选择具体的导入目标表。 说明:如果您没有该数据源或库的权限,页面将弹出提示,您可以单击提示框中的申请权限进行权限申请。更多信息,请参见 权限申请与审批。 导入类型 选择数据的导入类型,支持如下三种: - SQL:包含一系列 SQL 语句的文件,通过 SQL 回放的方式将数据导入 MySQL 数据库。
- CSV:文本文件格式,每行代表一条记录,通常情况下每个字段用逗号分隔。
- EXCEL:Excel 文件的格式,每个表格单元格包含一个字段值。
上传文件 单击上传文件按钮,选择需要导入数据库的数据文件。支持上传包含多个数据文件的 .zip
压缩包,实现批量上传。 说明:导入类型不是 SQL 的情况下,请确保数据文件中的列名及列数量和导入目标表中的一致,或者在下方的高级设置中手动指定字段名,否则可能会导入失败。文件编码 选择导入数据文件的编码: - 自动识别(默认):系统自动识别数据文件的编码。
- UTF-8:可变长度的 Unicode 字符编码。
- GBK:中文编码,从 GB2312 编码基础上扩展而来。
导入原因 输入导入的原因,仅在组织模式下需要输入,用于审批流程。 极速模式 开启后系统将不对任务进行规范预审,仅对其数据源进行权限校验。且该模式会将多个 SQL 语句合并成一个批处理语句进行提交,可减少网络开销,提高导入性能,当前版本固定开启该模式。 执行人 当前导入任务审批通过后的任务执行人,仅在企业版实例需要选择。 说明:执行人列表中的可选项取决于如下两种情况: 高级设置 MySQL/GaiaDB/GaiaDB-X - 字段配置(导入类型为 CSV 或 EXCEL 时可选):
- 首行为字段名(默认选中):选择数据文件的首行是否为字段名,请根据您导入文件的实际情况勾选或取消。
- 字段分隔符(仅 CSV 可选且默认选中):选择数据文件中每个字段的分隔符,请根据您导入文件的实际情况选择。
- 指定字段名:该选项支持您自行选择将数据文件中的数据导入到目标表的哪个(些)列,支持多选。当选择多个列时,系统将按照用户选择的列名排序顺序进行导入。此功能适用于数据文件和目标表的列名不一致或者列数不同的情况。
- 导入模式(导入类型为 CSV 或 EXCEL 时可选):
- Insert(默认):将数据插入到表中,如果表中已存在相同的行,则会插入失败并提示错误信息。
- Insert Ignore:将数据插入到表中,如果表中已存在相同的行,则插入操作将跳过该行,而不进行任何更改。
- Replace Into:将数据插入到表中,如果表中已存在相同的行,则会直接进行覆盖。
- 执行参数:
- 忽略外键约束:选中该选项,则不检查外键约束的限制条件。
-
单击创建数据导入,自动跳转至任务详情页面。
- 如果实例处于免费模式,导入任务自动开始并执行,等待任务状态变更为执行成功即可,步骤结束。
- 如果实例处于企业版模式,请继续下列步骤。
-
在规范预审节点,等待任务状态更改为待提交,然后单击页面右上角的提交审批,进入提交审批节点。在规范预审节点中,您还可以执行如下操作:
- 单击页面右上角的图标,刷新任务状态。
- 单击页面右上角的重新检查再次执行检查。
- 单击页面右上角的撤回,直接撤回任务或重新编辑任务并提交。
- 单击页面右上角的类似创建,复制出一个配置相同的新任务。
说明
- 规范预审会自动对导入任务进行检查,包括语法错误检查(导入类型为 SQL 的场景)、预估行数检查、库权限检查。如果过程中发现问题,会提示具体信息,方便您进行定位和修改。
- 极速模式下会自动跳过该节点,来到提交审批节点,并且任务状态变更为待提交。
- 如果该数据源未配置 审批流程,则任务自动跳过规范预审和提交审批节点,来到执行任务节点,并且任务状态变更为审批通过,您可以直接执行步骤 9。
-
在页面右上角单击提交审批,在弹出的窗口中选择流程审批人员,单击确定
说明
- 根据审批流程配置的不同,此处需要选择的审批人员数量不同,请根据实际情况选择。
- 如果当前审批流程中开启了不指定审批人,则此处将显示提交后,所有审批人均可审批,请在审批进程查看结果,您无需手动指定审批人,所有具备审批当前工单的人员均会收到审批提醒并支持对该工单进行审批。
-
任务状态变更为审批中,在审批通过之前,您可以进行如下操作:
- 单击页面右上角的图标,刷新任务状态。
- 单击页面右上角的撤回,直接撤回任务或重新编辑任务并提交。
- 单击页面右上角的转交,更改该任务的审批人。
- 单击页面右上角的类似创建,复制出一个配置相同的新任务。
-
任务状态变更为审批通过,任务的执行人单击页面右上角的执行,选择执行方式,并单击确定。
- 立即执行:马上执行数据导入任务。
- 定时执行:选择一个时间执行数据导入任务。
- 等待任务状态变更为执行成功即可。
审批任务
前提条件
- 实例已开启开启企业版。
- 当前数据导入任务的状态为审批中。
- 您是系统管理员或当前数据导入任务的审批人。
操作步骤
- 登录 DBSC 控制台。
- 在左侧导航栏,点击 数据开发—>数据导入。
- 在数据导入页面,找到目标任务,单击任务 ID 或任务右侧操作列的详情。
-
在任务详情页面,审批工单内容,根据实际情况选择转交、审批通过或审批不通过。
操作 说明 转交 将工单转交给其他用户审批。 审批通过 批准申请,单击审批通过后,您可以按需输入通过原因,并单击确定。 审批不通过 驳回申请,单击审批不通过后,您还需要输入驳回原因,并单击确定。