11.3 表导出实用程序
MySQL Shell 的表导出实用程序 util.exportTable()
在 MySQL Shell 8.0.22 中引入,可将 MySQL 关系表导出到本地服务器上或 Oracle Cloud Infrastructure 对象存储存储桶中的数据文件中。然后可以使用 MySQL Shell 的并行表导入实用程序util.importTable()
(请参阅 第 11.4 节“并行表导入实用程序” )将数据上传到目标 MySQL 服务器上的表中,该实用程序使用并行连接为大型数据文件提供快速数据导入。数据文件还可用于将数据导入到不同的应用程序,或作为单个数据表的轻量级逻辑备份。
- 关于实用程序
- 要求和限制
- 运行实用程序
- 选项
- OCI 云基础设施选项
- S3 兼容服务的选项
- Microsoft Azure Blob 存储选项
关于实用程序
默认情况下,表导出实用程序会为 MySQL Shell 并行表导入实用程序生成默认格式的数据文件。预设选项可用于导出 DOS 或 UNIX 系统的 CSV 文件以及 TSV 文件。表导出实用程序无法生成 JSON 数据。您还可以为语句设置字段和行处理选项, SELECT...INTO OUTFILE
以创建任意格式的数据文件。
util.exportTable()
可以与分区表和子分区表一起使用,但不对这些表执行任何特殊处理。无论发行版本如何,此实用程序始终为每个表创建一个文件。
选择表导出文件的目标时,请注意,要导入到 MySQL 数据库系统,运行并行表导入实用程序的 MySQL Shell 实例必须安装在有权访问 MySQL 数据库系统的 Oracle Cloud Infrastructure 计算实例上。如果将表导出到对象存储存储桶中的文件,则可以从计算实例访问对象存储存储桶。如果您在本地系统上创建表导出文件,则需要使用您选择的复制实用程序将其传输到 Oracle Cloud Infrastructure 计算实例,具体取决于您为计算实例选择的操作系统。
要求和限制
以下要求适用于使用表导出实用程序的导出:
- 源MySQL实例和目标MySQL实例均需要MySQL 5.7或更高版本。
- 用于将文件传输到 Oracle Cloud Infrastructure 对象存储存储桶的上传方法的文件大小限制为 1.2 TiB。
运行实用程序
表导出实用程序使用 MySQL Shell 全局会话来获取执行导出的目标 MySQL 服务器的连接详细信息。在运行该实用程序之前,您必须打开全局会话(可以具有 X 协议连接或经典 MySQL 协议连接)。该实用程序为每个线程打开自己的会话,从全局会话复制连接压缩和 SSL 选项等选项,并且不会进一步使用全局会话。您可以限制最大数据传输速率以平衡网络负载。
在MySQL Shell API中,表导出实用程序是全局对象的函数util
,并具有以下签名:
util.exportTable(table, outputUrl[, options])