背景信息
ODC 支持批量导出数据库对象的结构和数据。
通过 ODC 导出任务可以分别导出数据库对象的结构和数据、仅导出数据或者仅导出结构。
导出结构和数据:同时导出数据库对象的定义语句及其数据。
仅导出数据:仅导出表/视图对象的数据。
仅导出结构:仅导出数据库对象的定义语句。
导出文件格式
ODC 导出工具会将数据导出到以 .zip 结尾的压缩文件包中,压缩包中包含元数据文件 MANIFEST.bin 和 Schema 下导入导出对象的结构定义文件和数据文件。
创建导出任务时,如果您指定 数据格式 为 SQL 格式,那文件包中的结构定义文件是以对象名-schema.sql
命名的 SQL 文本,数据文件是以对象名.sql
命名的 SQL 文本,其中对象名与数据库实际对象名保持一致。
如果您指定 数据格式 为 CSV 格式,那文件包中的结构定义文件是以对象名-schema.sql
命名的 SQL 文本,数据文件是以对象名.csv
命名的 CSV 文本,其中对象名与数据库实际对象名保持一致。
注意事项
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 |
在 工单 页签中单击 导出 > 新建导出。
在弹出的 导出 面板中,选择导出内容。
选择所属库。
选择导出对象所在的数据库。该项下同时显示目标任务所在数据库的数据源名称。
重要OceanBase MySQL 模式下,内置数据库不支持导出功能。
选择导出范围。
支持选择 部分导出 和 整库导出。
部分导出:在 导出对象 的 选择对象 窗口中勾选需要导出的对象。支持使用搜索框直接进行搜索对象。
整库导出:导出当前库中的所有对象。
说明ODC V4.2.2 及之后的版本支持导出类型对象。
进入导出设置面板。
单击 下一步:导出设置 对导出的文件和 sys 租户账号进行设置。
设置数据文件。
说明当 导出内容 为仅导出结构时无需设置数据文件。
设置项
说明
数据格式
ODC 目前支持将数据导出为 CSV 格式 和 SQL 格式。当 导出内容 为 仅导出结构 时,只支持导出数据为 SQL 格式。
文件编码
ODC 目前支持 ASCII、ISO-8859-1、GB2312、GBK、GB18030、Unicode(UTF-8)、Unicode(UTF-16)、Unicode(UTF-32)和 BIG5 等编码格式。
单个文件上限
当 导出内容 为仅导出结构时无需进行单个文件上限设置。
支持选择导出的单表数据文件上限。文件大小超过上限后,文件将自动切分;若选择不限制,则不切分文件。
CSV 设置
选择导出 CSV 格式且 导出内容 为导出结构和数据时,可指定以下信息:
包含列头:该项默认勾选,选择导出数据为 CSV 格式时是否包含列头。
空字符串转为空值:该项默认勾选,选择导出数据为 CSV 格式时是否将表中的空字符串转换为空值 \N。
字段分隔符:设置字段间的分隔符。支持选择,(逗号)、;(分号)和 :(冒号)作为字段分割符。同时支持自定义一个字符长度的字符作为分隔符。
文本识别符:设置文本内容的识别符。支持选择 '(单引号)和 "(双引号)作为文本识别符。
换行符号:设置换行符。支持选择 \n、\r 和 \r\n 作为换行符。
批量提交数量(SQL 格式)
选择导出 SQL 格式数据时,通过指定批量提交数量,可在导出文件中导出指定数量数据时添加一句
COMMIT
命令。使用全局快照
勾选该项后 ODC 将导出全局中指定表的最新快照点中的数据,勾选该项可以保证全局数据的一致性。
设置结构文件。
当 导出内容 为仅导出结构时,支持选择是否 导出结果合并为一个 SQL 文件。勾选该项后,会合并 DDL 并导出为一个 SQL 文件。
在该项下选择是否在 Create 语句前添加 Drop 语句。勾选该项后,在导出对象结构文件时,在对象的
CREATE
语句前均会添加对应的DROP
语句。
设置任务执行方式。
在该项下选择 立即执行/定时执行。
保留当前配置。
指定所有信息后,勾选面板左下角的 保留当前配置 以保留当前部分数据文件和结构文件配置。
生成导出任务。
指定所有信息后,单击面板右下角的 导出 按钮以生成导出任务。
查看导出任务
任务列表
任务列表中会显示最近 48 小时内的任务。
最大支持 3 个导出任务并行运行,后续任务在队列中等待运行。
导出任务生成后会自动弹出 工单 面板,在 导出 列表中可以查看任务审批状态、任务信息并下载导出的数据结构文件。
导出任务列表中包含如下信息:
信息项 | 说明 |
编号 | 导出任务编号。 |
类型 | 显示新建任务时指定的任务类型。 |
工单描述 | 显示发起任务时填写的描述内容。 |
当前处理人 | 审批人。单击搜索图标,可搜索和筛选处理人。 |
创建人 | 创建导出任务的用户。 单击搜索图标,可搜索和筛选创建人。 |
创建时间 | 显示该任务生成的具体日期和时间。 |
状态 | 显示任务的当前状态(不同状态下提供的管理操作不同)。 |
操作 | 单击 查看 按钮进入任务详情页面以查看目标任务的 任务详情 和 任务日志。 |
任务信息
如上图所示,在 导出 任务列表中单击 查看 按钮。
弹出目标任务的任务详情面板,单击 任务信息 查看任务基本信息、导出文件信息和导出对象信息。
信息项
说明
任务基本信息
显示执行状态、任务编号、所属数据库、任务类型、风险等级、执行方式、创建人 和 创建时间 等信息。
导出文件信息
显示创建导出任务时选择的 导出内容、数据格式、文件编码、导出数据设置 和 导出结构设置 等信息。
导出对象信息
显示该任务中用户选择的对象在导出数据时的完成情况,包括对象名称、对象类型、结构处理状态、实际处理数 和 数据处理状态 等信息。
任务流程
在目标任务的任务详情面板中,单击 任务流程 标签查看 发起任务、审批 和 执行 状态等信息。
任务日志
在目标任务的任务详情面板,单击任务日志标签查看任务的全部日志和告警日志。
信息项 | 说明 |
全部日志 | 显示任务的 INFO、ERROR 和 WARN 日志等全量信息。 |
告警日志 | 告警日志单独显示任务的 ERROR 和 WARN 日志。 当任务失败时,可查看告警日志以获得错误信息。 |
同时,工具栏提供了以下功能键:
功能 | 说明 |
查找 | 单击该按钮查找日志信息。 |
下载 | 单击该按钮下载日志信息。 |
复制 | 单击该按钮复制日志信息。 |
导出文件
在目标任务的任务详情面板右下角,单击 下载 按钮导出文件至本地。