推特 阿里云技术文档正文

将AnalyticDB for MySQL数据导出到OSS_通过INSERT外表方式导入导出OSS数据_OSS_数据接入_分析型数据库MySQL版

admin 阿里云技术文档 2020-02-11 196 0
阿里云服务器优惠

将AnalyticDB for MySQL数据导出到OSS

本文介绍如何通过AnalyticDB for MySQL映射表和INSERT INTO将AnalyticDB for MySQL中的表数据导出到OSS中。

前提条件

  • 通过以下步骤在对象存储(Object Storage Service,简称OSS)中创建存储AnalyticDB for MySQL数据的目录。

    1. 开通OSS服务

      OSS与AnalyticDB for MySQL所属Region相同。

    2. 创建存储空间

    3. 新建文件夹

      将AnalyticDB for MySQL数据导出到OSS_通过INSERT外表方式导入导出OSS数据_OSS_数据接入_分析型数据库MySQL版 阿里云技术文档 第1张

      例如,在OSS中新建文件夹bucket-name.oss-cn-hangzhou.aliyuncs.com/adb_data/,从AnalyticDB for MySQL中导出的数据将存储在该文件夹下。

      注意:AnalyticDB for MySQL导出数据时,自动根据任务并发速度动态确定目标文件数目。

  • 根据AnalyticDB for MySQL快速入门,完成创建实例、设置白名单、创建账号和数据库等准备工作。

实施步骤

  1. 连接AnalyticDB for MySQL,进入目标数据库。

    本示例将AnalyticDB for MySQL的adb_demo库中的adb_oss_import_test表数据导出至OSS的bucket-name.oss-cn-hangzhou.aliyuncs.com/adb_data/文件夹下。

    说明:adb_oss_import_test表详情,请参见将OSS数据导入AnalyticDB for MySQL

  2. 通过CREATE TABLE,在adb_demo数据库中创建外部映射表oss_export_test_external_table

    1. CREATE TABLE IF NOT EXISTS oss_export_test_external_table
    2. (
    3. uid string,
    4. other string
    5. )
    6. ENGINE='OSS'
    7. TABLE_PROPERTIES='{
    8. "endpoint":"oss-cn-hangzhou-internal.aliyuncs.com",
    9. "url":"oss://bucket-name/adb_data/",
    10. "accessid":"LTAIF****5FsE",
    11. "accesskey":"Ccw****iWjv",
    12. "delimiter":";",
    13. }'
    参数 说明
    ENGINE=’OSS’ 表示该表是外部表,使用的存储引擎是OSS。
    TABLE_PROPERTIES 用于告知AnalyticDB for MySQL如何访问OSS并向其写入数据。
    endpoint OSS的EndPoint(域名节点)

    注意:目前仅支持AnalyticDB for MySQL通过OSS中ECS的VPC网络(内网)访问OSS。

    登录OSS控制台,单击目标Bucket,在Bucket概览页面查看endpoint

    将AnalyticDB for MySQL数据导出到OSS_通过INSERT外表方式导入导出OSS数据_OSS_数据接入_分析型数据库MySQL版 阿里云技术文档 第2张

    url OSS中文件夹的地址,以/结尾。
    accessid 您在访问bucket-name.oss-cn-hangzhou.aliyuncs.com/adb_data/文件夹时所持有的AccessKey ID

    如何获取您的accessidaccesskey,请参见如何获取账号的AK信息

    accesskey 您在访问bucket-name.oss-cn-hangzhou.aliyuncs.com/adb_data/文件夹时所持有的Access Key Secret
    delimiter 定义OSS中数据文件的列分隔符。
  3. 在AnalyticDB for MySQL中,通过INSERT INTO将数据导出到OSS。

    1. insert into oss_export_test_external_table
    2. select * from adb_oss_import_test

    待INSERT INTO任务结束后,登录OSS控制台,在adb_data目录下查看同步过来的数据。

    将AnalyticDB for MySQL数据导出到OSS_通过INSERT外表方式导入导出OSS数据_OSS_数据接入_分析型数据库MySQL版 阿里云技术文档 第3张

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论

-----