导出结构和数据

背景信息

ODC 支持批量导出数据库对象的结构和数据。

通过 ODC 导出任务可以分别导出数据库对象的结构和数据、仅导出数据或者仅导出结构。

  • 导出结构和数据:同时导出数据库对象的定义语句及其数据。

  • 仅导出数据:仅导出表/视图对象的数据。

  • 仅导出结构:仅导出数据库对象的定义语句。

导出文件格式

ODC 导出工具会将数据导出到以 .zip 结尾的压缩文件包中,压缩包中包含元数据文件 MANIFEST.bin 和 Schema 下导入导出对象的结构定义文件和数据文件。

创建导出任务时,如果您指定 数据格式 SQL 格式,那文件包中的结构定义文件是以对象名-schema.sql命名的 SQL 文本,数据文件是以对象名.sql命名的 SQL 文本,其中对象名与数据库实际对象名保持一致。

Image 445.png

如果您指定 数据格式 CSV 格式,那文件包中的结构定义文件是以对象名-schema.sql命名的 SQL 文本,数据文件是以对象名.csv命名的 CSV 文本,其中对象名与数据库实际对象名保持一致。

Image 444.png

注意事项

  • Web 版 ODC 对导出的数据大小有限制,最大支持导出 2GB 的数据(压缩前),超出部分无法导出。如需导出大量数据,请使用导数工具 OBDUMPER

  • 最大支持 5 个导出任务并行运行,后续任务在队列中等待运行。

  • 导出任务涉及的文件默认保留 14 天。

  • OceanBase V4.0.0 及之前版本的数据源中配置 sys 租户账号和密码可以提升导出速度。ODC 通过分区位置可以计算最佳的导数并行策略,除导出表、视图之外的其它对象,OceanBase V4.0.0 及之前版本需要通过 sys 租户查询和确定分区位置。

  • OceanBase V4.0.0 之后版本的数据源中无需配置 sys 租户账号和密码,ODC 支持通过业务租户的视图查询和确定分区位置。

新建导出任务

示例:将数据库 odc_test 中表 employee 和 salary 的结构和数据批量导出到本地磁盘。

信息项

示例值

所属数据源

mysql410

数据库名称

odc_test

表名称

employee, salary

  1. 工单 页签中单击 导出 > 新建导出

    image.png

  2. 在弹出的 导出 面板中,选择导出内容。

    image.png

  3. 选择所属库。

    选择导出对象所在的数据库。该项下同时显示目标任务所在数据库的数据源名称。

    重要

    OceanBase MySQL 模式下,内置数据库不支持导出功能。

  4. 选择导出范围。

    支持选择 部分导出 整库导出

    • 部分导出:在 导出对象 选择对象 窗口中勾选需要导出的对象。支持使用搜索框直接进行搜索对象。

    • 整库导出:导出当前库中的所有对象。

      说明

      ODC V4.2.2 及之后的版本支持导出类型对象。

  5. 进入导出设置面板。

    单击 下一步:导出设置 对导出的文件和 sys 租户账号进行设置。

  6. 设置数据文件。

    image.png

    image.png

    说明

    导出内容 为仅导出结构时无需设置数据文件。

    设置项

    说明

    数据格式

    ODC 目前支持将数据导出为 CSV 格式 SQL 格式。当 导出内容 仅导出结构 时,只支持导出数据为 SQL 格式。

    文件编码

    ODC 目前支持 ASCIIISO-8859-1GB2312GBKGB18030Unicode(UTF-8)Unicode(UTF-16)Unicode(UTF-32)BIG5 等编码格式。

    单个文件上限

    导出内容 为仅导出结构时无需进行单个文件上限设置。

    支持选择导出的单表数据文件上限。文件大小超过上限后,文件将自动切分;若选择不限制,则不切分文件。

    CSV 设置

    选择导出 CSV 格式且 导出内容 为导出结构和数据时,可指定以下信息:

    • 包含列头:该项默认勾选,选择导出数据为 CSV 格式时是否包含列头。

    • 空字符串转为空值:该项默认勾选,选择导出数据为 CSV 格式时是否将表中的空字符串转换为空值 \N。

    • 字段分隔符:设置字段间的分隔符。支持选择,(逗号)、;(分号)和 :(冒号)作为字段分割符。同时支持自定义一个字符长度的字符作为分隔符。

    • 文本识别符:设置文本内容的识别符。支持选择 '(单引号)和 "(双引号)作为文本识别符。

    • 换行符号:设置换行符。支持选择 \n\r \r\n 作为换行符。

    批量提交数量(SQL 格式)

    选择导出 SQL 格式数据时,通过指定批量提交数量,可在导出文件中导出指定数量数据时添加一句COMMIT命令。

    使用全局快照

    勾选该项后 ODC 将导出全局中指定表的最新快照点中的数据,勾选该项可以保证全局数据的一致性。

  7. 设置结构文件。

    • 导出内容 为仅导出结构时,支持选择是否 导出结果合并为一个 SQL 文件。勾选该项后,会合并 DDL 并导出为一个 SQL 文件。

    • 在该项下选择是否在 Create 语句前添加 Drop 语句。勾选该项后,在导出对象结构文件时,在对象的CREATE语句前均会添加对应的DROP语句。

  8. 设置任务执行方式。

    在该项下选择 立即执行/定时执行

  9. 保留当前配置。

    指定所有信息后,勾选面板左下角的 保留当前配置 以保留当前部分数据文件和结构文件配置。

  10. 生成导出任务。

    指定所有信息后,单击面板右下角的 导出 按钮以生成导出任务。

查看导出任务

任务列表

说明
  • 任务列表中会显示最近 48 小时内的任务。

  • 最大支持 3 个导出任务并行运行,后续任务在队列中等待运行。

导出任务生成后会自动弹出 工单 面板,在 导出 列表中可以查看任务审批状态、任务信息并下载导出的数据结构文件。

image.png

导出任务列表中包含如下信息:

信息项

说明

编号

导出任务编号。

类型

显示新建任务时指定的任务类型。

工单描述

显示发起任务时填写的描述内容。

当前处理人

审批人。单击搜索图标搜索.jpg,可搜索和筛选处理人。

创建人

创建导出任务的用户。 单击搜索图标搜索.jpg,可搜索和筛选创建人。

创建时间

显示该任务生成的具体日期和时间。

状态

显示任务的当前状态(不同状态下提供的管理操作不同)。

操作

单击 查看 按钮进入任务详情页面以查看目标任务的 任务详情 任务日志

任务信息

  1. 如上图所示,在 导出 任务列表中单击 查看 按钮。

  2. 弹出目标任务的任务详情面板,单击 任务信息 查看任务基本信息、导出文件信息和导出对象信息。

    信息项

    说明

    任务基本信息

    显示执行状态、任务编号所属数据库任务类型风险等级执行方式创建人 创建时间 等信息。

    导出文件信息

    显示创建导出任务时选择的 导出内容数据格式文件编码导出数据设置 导出结构设置 等信息。

    导出对象信息

    显示该任务中用户选择的对象在导出数据时的完成情况,包括对象名称对象类型结构处理状态实际处理数 数据处理状态 等信息。

任务流程

在目标任务的任务详情面板中,单击 任务流程 标签查看 发起任务审批 执行 状态等信息。

任务日志

在目标任务的任务详情面板,单击任务日志标签查看任务的全部日志和告警日志。

信息项

说明

全部日志

显示任务的 INFOERROR WARN 日志等全量信息。

告警日志

告警日志单独显示任务的 ERROR WARN 日志。 当任务失败时,可查看告警日志以获得错误信息。

同时,工具栏提供了以下功能键:

功能

说明

查找

单击该按钮查找日志信息。

下载

单击该按钮下载日志信息。

复制

单击该按钮复制日志信息。

导出文件

在目标任务的任务详情面板右下角,单击 下载 按钮导出文件至本地。

相关文档