导入MySQL数据

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

您可以将自建MySQL数据库或RDS MySQL数据库中的数据导入到日志服务,实现数据的查询分析、加工等操作。本文介绍导入MySQL数据的操作步骤。

警告

日志服务“导入MySQL数据”功能将停止更新维护,停止时间和相关迁移事宜将另行通知。推荐使用DataWorks进行数据同步。具体操作,请参见MySQL数据源

使用限制

  • 目前支持:华东1(杭州)、华东2(上海)、华北1(青岛)、华北2(北京)、华北3(张家口)、华北5(呼和浩特)、华北6(乌兰察布)、西南1(成都)、华南1(深圳)、华南2(河源)、华南3(广州)、中国(香港)、新加坡、马来西亚(吉隆坡)、印度尼西亚(雅加达)、菲律宾(马尼拉)、泰国(曼谷)、日本(东京)、韩国(首尔)、英国(伦敦)、德国(法兰克福)、美国(弗吉尼亚)、美国(硅谷)、张家口2(内部用户专用)、华东5(南京-本地地域)、华东1 金融云、华东2 金融云、华北2 金融云(邀测)、华南1 金融云 、华北2 阿里政务云1地域。

  • 如果导入源为云原生数据仓库AnalyticDB MySQL, 对于JSON类型字段需要转换为VARCHAR类型后进行导入,例如detail字段为JSON类型,可以使用cast(detail as VARCHAR) as detail进行转换。关于CAST函数,请参见CAST函数

前提条件

  • 已创建MySQL数据库,并已设置具备最小读权限的数据库账号。

  • 在MySQL数据库中添加白名单。

    请根据数据导入任务所在Project的地域和数据库所在的网络环境,添加对应的IP地址白名单。在MySQL数据库添加白名单的步骤,请参见设置IP白名单

  • 已创建Project和Logstore。具体操作,请参见创建项目Project创建Logstore

导入数据

  1. 登录日志服务控制台

  2. 在Project列表区域,单击目标Project。

    image

  3. 日志存储 > 日志库页签中,单击目标Logstore左侧的>,然后将鼠标悬浮在数据接入 > 数据导入上,单击+

    image

  4. 快速数据接入对话框,搜索并单击MySQL-数据导入

  5. 设置导入配置。

    1. 数据源设置中,配置如下参数。

      基础参数

      参数

      说明

      任务名称

      SLS任务的唯一名称。

      显示名称

      任务显示名称。

      任务描述

      导入任务的描述。

      使用VPC地址

      专有网络VPC下的RDS MySQL数据库

      选中使用VPC地址RDS实例,并设置如下参数。

      • VPC实例ID:RDS MySQL数据库所属VPC的ID。

      • RDS实例ID:需配置为RDS实例的VpcCloudInstanceId。您可以通过调用查询实例详情接口获取VpcCloudInstanceId。具体操作,请参见关联MySQL数据源

      专有网络VPC下自建的MySQL数据库

      选中使用VPC地址ECS自建数据库,并设置如下参数。

      • VPC实例ID:ECS实例所属VPC的ID。

      • ECS实例IP:ECS实例的私网IP地址。

      公网环境下的数据库

      取消选中使用VPC地址,并设置如下参数。

      • 数据库公网IP或者域名:MySQL数据库的公网IP地址或者域名。

      MySQL端口

      MySQL数据库的服务端口,默认为3306。

      用户名

      用于登录MySQL数据库的账号名称。

      建议只授予该账号读取MySQL数据的权限。

      密码

      账号密码。

      数据库

      MySQL数据库名称。

      查询语句

      您可以使用SELECT语句或SHOW语句。如果使用SHOW语句,则不支持在高级配置中设置分页大小参数。

      支持使用半角问号(?)表示替换符,与CheckPoint字段配合使用。例如查询语句为SELECT * FROM employees WHERE id > ?,则您可以设置CheckPoint字段idCheckPoint字段起始值0。每次导入任务执行后,系统会保存最后一条数据的ID作为Checkpoint,下次任务执行时查询语句中的半角问号(?)将被替换为该Checkpoint对应的ID值。

      高级参数

      参数

      说明

      每次导入最大行数

      MySQL导入任务定时执行,您可以设置每次导入的最大行数。默认为0,表示不限制最大行数。

      连接超时设置

      MySQL导入任务连接MySQL数据库的超时设置,默认值为3000 ms。

      查询超时设置

      MySQL导入任务查询MySQL数据库的超时设置,默认值为5000 ms。

      分页大小

      分页大小为0,表示不分页。大于0时,系统将在SELECT语句后面加上limit pageSize offset {checkpoint},在一次导入任务中,多次分页导入数据。

      时间字段

      MySQL数据中代表时间的字段,例如create_time或者update_time等。在日志服务中将使用该时间字段的值为数据的导入时间。

      时间字段格式

      时间字段的格式,支持Java类型时间格式。例如yyyy-MM-dd HH:mm:ss。更多信息,请参见时间格式

      时间字段时区

      选择时间字段对应的时区。

      CheckPoint字段

      选择Checkpoint字段,作为下次导入数据的起点。例如查询语句为select * from t where id > ?,其中id为自增字段,则您可以将id作为Checkpoint字段。

      您也可以使用create_time、update_time等字段。

      说明

      如果您未在SQL语句中设置查询时间范围,那么建议您设置CheckPoint字段,用于导入增量数据,避免数据重复采集。

      CheckPoint字段起始值

      设置CheckPoint字段的起始值。

      附加字段

      添加附加字段,格式为map[string]string。例如查询语句为select a, b from t;,系统默认导入两个字段ab,您可以添加其他字段导入到日志服务,例如{"k1": "v1", "k2": "v2"}。

    2. 单击预览,预览导入结果。确认无误后,单击下个配置

    3. 调度间隔页签中,配置如下参数。

      参数

      说明

      导入间隔

      导入MySQL数据到日志服务的时间间隔。

      立即执行

      开启立即执行,则立即执行一次导入操作。

    4. 配置完成后,单击下一步

  6. 创建索引预览数据,然后单击下一步。日志服务默认开启全文索引。您也可以根据采集到的日志,手动创建字段索引,或者单击自动生成索引,日志服务将自动生成字段索引。更多信息,请参见创建索引

    重要

    如果需要查询日志中的所有字段,建议使用全文索引。如果只需查询部分字段、建议使用字段索引,减少索引流量。如果需要对字段进行分析(SELECT语句),必须创建字段索引。

  7. 您需要等待1分钟左右,待索引生效后,才能在原始日志页签中,查看已采集到的日志。查询和分析日志的详细步骤,请参见查询和分析日志

查看导入配置和统计报表

创建导入配置成功后,您可以在控制台中查看已创建的导入配置及生成的统计报表。

  1. 单击目标Project。

  2. 选择目标日志库下的数据接入 > 数据导入,单击目标导入配置。

    image

  3. 导入配置概览页面,查看导入配置的基本信息和统计报表。

    导入MySQL

相关操作

导入配置概览页面,您还可以进行如下操作。

  • 修改配置

    单击修改配置,修改导入配置的相关配置,具体配置说明请参见导入数据

  • 删除配置

    单击删除配置,删除该导入配置。

    警告

    删除后不可恢复,请谨慎操作。