本文档将向您介绍如何在SQL Console中通过提交工单导入SQL文件的形式导入数据。

操作步骤

  1. 进入SQL Console
  2. SQL Console窗口中,右键单击目标表,从弹出的列表中单击导入
    说明 您也可以在数据方案 > 普通数据变更中提交SQL语句或者上传SQL脚本文件。DMS普通数据变更支持提交更多SQL语句类型,包括数据的增删改查、表结构的变更等功能,详情请参见普通数据变更
  3. 数据导入面板中,填写如下工单信息。
    配置项说明
    数据库数据导入操作的目标数据库。
    说明 管控模式自由操作稳定变更的实例数据库需要登录后方可选择。
    关联迭代(可选)您可以单击选择/切换迭代关联已创建的迭代。
    原因类别根据实际情况选择数据导入的原因。
    业务背景详细填写本次操作的业务背景,减少沟通成本。
    执行方式根据需求,选择工单执行方式:
    • 审批通过后,提交者执行。
    • 审批通过后,自动执行。
    • 最后一个审批人执行。
    文件编码选择数据库的文件编码:
    • UTF-8
    • GBK
    • ISO-8859-1
    • 自动识别
    导入模式选择导入模式,当前支持两种导入模式:
    • 极速模式:在执行阶段读取文件,将SQL语句直接执行到指定的目标库。该模式安全性相比安全模式要低,但是执行时效较高。
      说明 安全规则配置默认未开启支持极速模式导入数据。您可以在实例关联的安全规则 > SQL变更 > 基础配置项中开启该检测项。
    • 安全模式:预检查阶段会解析文件并将SQL或CSV数据缓存入库,执行时再从缓存库中读出来执行到指定的目标库。该模式安全性较好,但是执行时效相比极速模式要低。
    文件类型选中导入数据的文件类型。
    • SQL脚本:安全协同模式下,默认仅放开INSERT和REPLACE命令类型。如需调整,可以由DBA或管理员在安全规则 > SQL变更 > 批量数据导入中修改。
    • CSV格式:文件中的分隔符必须为逗号。
    • Excel格式:Excel文件中可以有表头(属性),也可以直接是数据。
    目标表选择导入数据的目标表。
    数据位置选择数据的位置:
    • 第1行为属性:表格首行是字段名。
    • 第1行为数据:表格首行是数据。
    写入方式选择文件的写入方式:
    • INSERT:插入数据时数据库会检查主键(PrimaryKey),如果出现重复会报错。
    • INSERT_IGNORE:如果表中已经存在相同的记录,则忽略当前新数据;
    • REPLACE_INTO:如果表中已经有某行数据(根据主键或者唯一索引判断),则先删除此行数据,然后插入新的数据。
    说明 RDS MySQL、PolarDB MySQL引擎、PolarDB-X、AnalyticDB MySQL版、OceanBase数据库类型支持3种写入方式:INSERT INTOINSERT IGNOREREPLACE INTO。其他数据库仅支持INSERT INTO写入。
    附件单击上传文件上传附件。
    说明
    • 支持SQL、CSV、TXT、XLSX和ZIP文件类型。
    • 附件最大不能超过5 GB。
    其他选项(可选)选择是否忽略异常报错。
    • 不忽略(不选中):系统默认。系统遇到异常会停止执行后续SQL并报错。
    • 忽略(选中):系统执行失败会忽略异常,并继续执行后续SQL。
    回滚SQL(可选)
    • 文本:在下方输入框中书写回滚SQL。
    • 附件:上传回滚SQL文件。
      说明
      • 支持SQL、TXT和ZIP文件类型。
      • 文件最大不能超过15 MB。
    变更相关人(可选)设置的相关人员都可查看工单,并协同工作,非相关人员则不能查看工单(管理员、DBA除外)。
    工单附件(可选)可以上传工单相关信息的图片或文档来补充当前工单信息。
  4. 单击提交申请,等待系统预检查通过,如果预检查失败,请根据提示检查失败原因后单击重试
    说明
    • 系统会预检查您上传的SQL,如果是CSV文件,会生成相应的INSERT语句。
    • 若在预检查的类型检查阶段出现报错,需要根据报错信息调整实例关联的安全规则。具体操作,请参见数据变更
  5. 审批区域,单击提交审批,在提示对话框中单击确认
  6. 可选:待审批通过后,在执行区域,单击执行变更
  7. 任务设置对话框中,选择工单执行时间。可以选择是否立即执行,如果不想立即执行,可以关闭是否立即执行开关,并选择一个期望开始执行时间,系统会在该时间自动执行。单击确定执行
    • 立即执行:系统默认。单击确定执行后,立即执行工单。
    • 定时执行:选择任务开始执行时间。单击确定执行后,在设定的时间开始执行工单。
    说明
    • 执行期间,系统流式读取解析好的SQL,分批执行到数据库(每批大小1 MB)。
    • 您可以在执行区域,查看任务执行状态、任务SQL检查详情和调度日志。
    • 任务执行完成后,您可以在目标数据库的SQL窗口中,查询导入的数据。