DataWorks的MySQL节点可进行MySQL任务的开发和周期性调度,以及与其他作业的集成操作。本文为您介绍使用MySQL节点进行任务开发的主要流程。
前提条件
已创建业务流程。
数据开发(DataStudio)基于业务流程执行不同引擎的具体开发操作,因此,创建节点前需先创建业务流程,操作详情请参见创建业务流程。
已创建MySQL数据源。
您需先将您的MySQL数据库创建为DataWorks的MySQL数据源,才可通过该数据源访问相应数据库的数据。详情请参见MySQL数据源。
说明MySQL节点仅支持通过连接串形式添加MySQL数据源。
(可选,RAM账号需要)进行任务开发的RAM账号已被添加至对应工作空间中,并具有开发或空间管理员(权限较大,谨慎添加)角色权限。添加成员并授权,详情请参见为工作空间添加空间成员。
使用限制
MySQL节点仅支持对连接串模式创建的生产环境MySQL数据源进行MySQL任务的开发。您可以参考配置MySQL数据源进入数据源管理页面,单击目标数据源操作列的编辑,在数据源编辑页面查看创建数据源时所使用的模式。
当前节点类型不支持MySQL8.0及以上版本。
网络联通说明
创建并使用MySQL节点进行任务开发
进入数据开发页面。
登录DataWorks控制台,单击左侧导航栏的数据建模与开发 > 数据开发,在下拉框中选择对应工作空间后单击进入数据开发。
创建业务流程。
如果您已有业务流程,则可以忽略该步骤。
鼠标悬停至图标,选择新建业务流程。
在新建业务流程对话框,输入业务名称。
单击新建。
创建MySQL节点。
鼠标悬停至图标,选择 。
您也可以找到相应的业务流程,右键单击业务流程,选择
。在新建节点对话框中,输入名称,并选择节点类型及路径。
说明节点名称必须是大小写字母、中文、数字、下划线(_)和小数点(.),且不能超过128个字符。
单击确认,进入MySQL节点编辑页面。
使用MySQL节点进行MySQL任务开发。
选择数据源。
在选择数据源下拉框,选择进行任务开发需要使用的目标数据源。如果下拉列表中没有需要的数据源,请单击右侧的新建数据源,在数据源管理页面新建,详情请参见配置MySQL数据源。
说明标准模式工作空间下,此处仅下拉展示已配置开发环境与生产环境的MySQL数据源。
MySQL节点仅支持对连接串模式创建的生产环境MySQL数据源进行MySQL任务的开发。您可以参考配置MySQL数据源进入数据源管理页面,单击目标数据源操作列的编辑,在数据源编辑页面查看创建数据源时所使用的模式。
选择资源组。
在工具栏单击图标,在参数对话框选择已创建的调度资源组。
说明访问公共网络或VPC网络环境的数据源需要使用与数据源测试连通性成功的调度资源组。详情请参见网络连通方案。
如果您后续执行任务需要修改使用的资源组,您可单击带参运行图标,选择需要更换的调度资源组。
使用SQL语句创建任务。
在SQL编辑区域使用SQL语句创建任务。
示例查询xc_emp表的内容,语句如下。实际使用时,您可以根据MySQL支持的语法,编写需要执行的语句。
select * from xc_emp;
运行结果如下。
如果任务执行失败,您可以查看任务运行失败的错误提示,参考常见问题:任务执行报错暂不支持的jdbc驱动进行排查处理。
保存并运行SQL语句。
在工具栏,单击图标,保存编写的SQL语句,单击图标,运行创建的SQL任务。
任务调度配置。
提交并发布节点任务。
单击工具栏中的图标,保存节点。
单击工具栏中的图标,提交节点任务。
在提交新版本对话框中,输入变更描述。
单击确定。
如果您使用的是标准模式的工作空间,任务提交成功后,需要将任务发布至生产环境进行发布。请单击顶部菜单栏左侧的任务发布。具体操作请参见发布任务。
查看周期调度任务。
单击编辑界面右上角的运维,进入生产环境运维中心。
查看运行的周期调度任务,详情请参见查看并管理周期任务。
如果您需要查看更多周期调度任务详情,可单击顶部菜单栏的运维中心,详情请参见运维中心概述。
常见问题:任务执行报错暂不支持的jdbc驱动
问题描述
添加MySQL数据源时,选择了非连接串模式创建的数据源,导致运行任务时失败,报错信息为
sql execute failed! 暂不支持的jdbc驱动
。问题原因
出现上述报错通常都是选择了非连接串模式创建的MySQL数据源导致。
解决方案
重新选择使用连接串模式创建的数据源。您可以参考配置MySQL数据源进入数据源管理页面,单击目标数据源操作列的编辑,在数据源编辑页面查看创建数据源时所使用的模式。
常见问题:测试连通性通过但任务执行报错
可能原因1:测试连通性时资源组选择错误,请确认是否选择使用任务调度资源组进行连通性测试。详情请参见(可选)测试网络连通。
可能原因2:测试连通性使用的调度资源组,但任务执行时选错资源组,您可通过带参运行切换任务执行使用的调度资源组。