# 关系型数据库组件使用说明
# 组件说明
关系型数据库 JDBC Source 连接器。通过 JDBC 读取各类关系型数据库数据。
# 配置项说明
| 配置名称 | 数据类型 | 是否必填 | 默认值 | 描述 |
|---|---|---|---|---|
| 节点名称 | String | 是 | 关系型数据库 | 当前创建的节点名称,由用户自定义且不可为空。命名可包含字母、数字、下划线。确保唯一性。 |
| 节点编码 | String | 是 | 自动生成 | 当前创建的节点编码,以此标识此组件,由用户自定义且不可为空。命名可包含字母、数字、下划线。确保唯一性。 |
| 选择数据源 | String | 是 | - | 从下拉选项中选择列出的当前项目已经关联的数据源。 |
| 数据库读取 | String | 是 | - | 两种方式: 1、通过库表生成SQL:可以选择输入数据库名称、表名称; 2、自定义SQL:可以自己编写 SQL 语句,比如:视图,select * from dws_source_dev.view_empinfo |
| 每次获取行数 | Int | 否 | 0 | 每次拉取的行数,0表示使用JDBC默认值。 它通过平衡网络往返次数与客户端内存占用来优化查询性能,尤其在处理大数据量时至关重要。 0表示使用jdbc默认值。 值越大,单次网络传输越多,往返更少、吞吐更高,但客户端内存占用更大。 值越小,往返更频繁,网络与开销占比上升,内存占用更小。 |
| 分区列名称 | String | 否 | - | 并行读取时的分割列(必须为数值/日期类型)。 |
| 分区列扫描的最大值 | Int | No | 0 | 有如果不设置,SeaTunnel 将查询数据库获取最大值。 |
| 分区列扫描的最小值 | Int | 是 | 0 | 如果不设置,SeaTunnel 将查询数据库获取最小值。 |
| 分区数 | Int | 否 | 0 | 并行读取的分片数量,默认等于作业并行度。 |
| 连接超时时间 | Int | 是 | 30 | 连接超时时间,单位为:秒。 |
| 可选参数 | - | 否 | - | 其他参数,用户可以根据需求进行配置。 |
注意
若未设置分区列名称(partition_column),任务将以单并发运行;若设置了该字段,则会按分片并行读取。
# 疑难排查要点
- 连接超时:
尽量使用 127.0.0.1 而非 localhost(某些环境解析差异)。
URL中必须包含 serverTimezone 参数(如 GMT%2b8 或 Asia/Shanghai)。
- 中文乱码:
添加URL参数 characterEncoding=utf-8;若源库字符集非UTF8(如Oracle的ASCII),需定制开发转码逻辑。
- 数据类型不支持:
若遇 UNSUPPORTED_DATA_TYPE 异常,说明SeaTunnel内置类型映射未覆盖该字段类型,需扩展 TypeConverter。