OceanBase 如何导出数据
本篇教程介绍在 OceanBase 开发者中心(OceanBase Developer Center,ODC)中进行数据批量导出操作的详细步骤。
背景信息
为了让数据库开发者更方便的维护数据库内的数据,ODC 提供批量导入导出和单表导入导出功能。通过导入导出您可以选择数据库中的对象以导入或导出其中的数据或结构。目前 ODC 支持的导出数据格式有 CSV 格式和 SQL 格式,支持的导入文件格式有 ZIP 压缩文件、SQL 文件(批量导入)和 CSV 文件(单表导入)。
创建导入或导出任务后,您可以进入任务中心下载导出文件和查看任务详情和日志等信息。
本教程以批量导出为例,为您展示如何在 ODC 中导出数据的详细步骤。
前提条件
确认字符集。OceanBase V2.2.30 及之后版本支持字符编码 UTF8、GBK、GB18030 和 UTF16。OceanBase V2.2.30 版本之前仅支持字符编码 UTF8。ODC 目前导出文件的编码为 UTF-8,暂不支持修改。
确认连接方式。在 ODC V2.2.1 及之前的低版本中使用导入导出功能时必须通过 OBProxy 连接至目标实例,直连时 ODC 不支持导入导出功能。
配置 root@sys 账户。ODC V2.4.1 版本后,您可以选择配置 sys 租户账号以提升导出导入速度。同时,导出时如果勾选了表和视图之外的其它对象,必须配置该项以使用 sys 租户账号进行导出。
操作步骤
进入 导出设置 面板。
进入连接后,单击上方导航栏中的 工具 按钮,在弹出的列表中选择 导出,然后 ODC 会从右侧弹出 导出设置 面板。
指定 任务名。
弹出面板后 ODC 会自动生成默认的任务名,格式为连接名_模式名_日期,您也可以对任务名进行修改以自定义导出任务名称。
选择 导出内容。
ODC 目前支持 导出结构和内容、仅导出数据 和 仅导出结构 三种方式。
其中导出结构指是导出目标对象的定义语句,会生成 .sql 结尾的 SQL 文件。导出内容是导出对象中实际保存的数据,根据选择的 导出格式 不同生成的数据文件格式也不同。本教程选择导出内容为 导出结构和内容。
选择 数据格式。
ODC 目前支持将数据导出为 CSV 格式 和 SQL 格式。当 导出内容 为 仅导出结构 时,无需选择数据格式。具体格式信息,请参见导出导入格式。本教程选择导出数据为 CSV 格式。
选择 文件编码。
ODC 目前支持 ASCII、ISO-8859-1、GB2312、GBK、GB18030、Unicode(UTF-8)、Unicode(UTF-16)、Unicode(UTF-32)和 BIG5 等编码格式。您需要在 文件编码 下拉框中选择需要的编码格式。
选择 导出对象。
在 导出对象 标签下的表格中勾选您想要导出的对象。表格中会展示 对象名称 和 对象类型 信息,支持通过 对象类型 进行筛选和使用搜索框直接进行搜索。列表中支持批量选择和全选,您也可以对对象类型进行筛选。ODC 对导出的数据大小有限制,最大支持导出 250 M 的数据(压缩前),超出部分无法导出。所以当您选择的对象中的数据累加超过 250 MB 时,最后生成的数据文件中数据将是不完整的。
进行 导出数据设置。
当 导出内容 为仅导出结构时无需进行导出数据设置,该项包含以下设置项:
使用全局快照:勾选该项后 ODC 将导出全局中指定表的最新快照点中的数据,勾选该项可以保证全局数据的统一性。
批量提交数量:单击 导出数据设置 标签后的 高级 按钮,在弹出的列表中可指定该项。选择 数据格式 为 SQL 格式时,通过指定批量提交数量,可在导出文件中导出指定数量数据时添加一句
COMMIT
命令。不导出的数据类型:单击 导出数据设置 标签后的 高级 按钮,在弹出的列表中可指定该项。您可以通过该项指定导出数据时要跳过的数据类型。MySQL 和 Oracle 下可跳过的类型不同,支持多选。
指定 CSV 格式信息。
在步骤 4 中选择了 数据格式 为 CSV 格式,所以需要指定 CSV 格式信息。单击 导出数据设置 标签后的 高级 按钮,在弹出的列表中指定以下信息:
包含列头:该项默认勾选,选择导出数据为 CSV 格式时是否包含列头。
空字符串转为空值:该项默认勾选,选择导出数据为 CSV 格式时是否将表中的空字符串转换为空值
NULL
。字段分隔符:设置字段间的分隔符。支持选择 ,(逗号)、;(分号)和 :(冒号)作为字段分割符。同时支持自定义一个字符长度的字符作为分隔符。
文本识别符:设置文本内容的识别符。支持选择 '(单引号)和 "(双引号)作为文本识别符。
换行符号:设置换行符。支持选择 \n、\r 和 \r\n 作为换行符。
进行 导出结构设置。
在该项下选择是否 添加删除对象语句。勾选后在导出对象结构文件时,在对象的
CREATE
语句前都会添加对应的DROP
语句。进行 sys 租户账号配置。
在该项下选择是否 使用 sys 租户账号提升导出速度。勾选后在弹出的 账户 和 密码 文本框中填写 sys 账户和对应的密码。设置好该项后会使用 sys 租户的权限进行导出,可提升导出的速度。同时,导出时如果勾选了表和视图之外的其它对象,必须配置该项使用 sys 租户账号进行导出。
生成导出任务。
选择好所有要导出的对象后,单击面板右下角的 导出 按钮以生成导出任务。任务成功生成后 ODC 会自动跳转至任务中心,在任务中心您可以看到导出任务的运行状况。任务完成可以下载导出的数据文件并查看任务详情和日志等信息。