一、支持的版本
| 类型 | 支持版本 |
| TDSQL MySQL | 5.7 / 8.0 |
二、读取能力
| 能力 | 支持情况 | 说明 |
| 离线同步(读 / 写) | ✓ / – | 支持作为离线同步任务的源端读取数据;DataBuddy 数据源仅支持接入读取,不支持写入 |
| 直连分析(读 / 写) | ✓ / – | 支持通过直连分析直接查询该数据源;不支持写入 |
完整数据源能力对照参见 支持的数据源与读取能力。
三、支持的字段类型
完整字段类型请参见 MySQL 产品文档。TDSQL MySQL 兼容 MySQL 字段类型,以下是 DataBuddy 的离线读支持情况(节选 MySQL 8.0.x)。
| 字段类型 | 离线读 |
| TINYINT / SMALLINT / MEDIUMINT / INT / BIGINT(含 UNSIGNED) | ✅ |
| FLOAT / DOUBLE / DECIMAL / NUMERIC | ✅ |
| CHAR / VARCHAR / TEXT 系列 | ✅ |
| JSON | ✅ |
| BINARY / VARBINARY / BLOB 系列 | ✅ |
| DATE / TIME / DATETIME / TIMESTAMP / YEAR | ✅ |
| BIT / BOOL / BOOLEAN / ENUM / SET | ✅ |
| GEOMETRY / POINT / LINESTRING 等空间类型 | ✅ |
注意:说明:
注意:空间类型(GEOMETRY 系列)按二进制读取,不解析几何语义;如需在目标端保留几何信息,建议先在源端转换为字符串类型。
四、字段类型映射(离线同步)
同步时源端字段类型会转换为 DataBuddy 同步链路中的中间类型。配置任务前请重点核对「备注」列标注的类型,避免精度丢失或语义变化。
| 源端类型 | DataBuddy 内部类型 | 备注 |
| BIT / BOOL / BOOLEAN | Boolean | BIT(n) 默认按布尔值读取;开启 useBitPrecision 且精度大于 1 时按 Bytes 读取 |
| TINYINT(1) | Boolean | MySQL JDBC 驱动默认将 TINYINT(1) 按 BIT 处理(tinyInt1isBit=true),读取为 true / false;如需按数值读取,请在 JDBC URL 中追加 tinyInt1isBit=false |
| TINYINT / SMALLINT / MEDIUMINT / INT / BIGINT(含 UNSIGNED) | Long | 按字符串读取后转为 Long;BIGINT UNSIGNED 超过 Long 取值上限时会读取失败 |
| DECIMAL / NUMERIC | Double | 转为双精度浮点数,超出精度范围会丢失小数精度;对精度敏感的场景建议在目标端改用 Decimal 或字符串类型 |
| FLOAT / REAL / DOUBLE | Double | 遵循 IEEE 754 浮点精度 |
| CHAR / VARCHAR / TINYTEXT / TEXT / MEDIUMTEXT / LONGTEXT | String | – |
| ENUM / SET | String | 按枚举值文本读取 |
| JSON | String | 按文本读取,不做结构化解析 |
| DATE | Date | 精确到日 |
| DATETIME / TIMESTAMP | Date | – |
| TIME | Date | 超出 JDBC 时间范围的值(如 838:59:59)按 String 读取 |
| YEAR | Long | 按年份数值读取 |
| BINARY / VARBINARY / TINYBLOB / BLOB / MEDIUMBLOB / LONGBLOB | Bytes | 不做内容解析 |
| GEOMETRY / POINT / LINESTRING / POLYGON 等空间类型 | Bytes 或 String | 不解析几何语义,建议先在源端转换为字符串 |
| 上表未列出的其他类型 | – | 任务报错并提示不支持的字段类型 |
上表描述离线同步链路的类型转换结果;如需调整目标端字段类型,可在任务的字段映射中修改,参见 表到表同步。
五、配置账号权限
CREATE USER 'wedata_user'@'%' IDENTIFIED BY 'your_password';GRANT SELECT ON your_database.* TO 'wedata_user'@'%';FLUSH PRIVILEGES;
建议为同步任务创建专用账号,仅授必要的 SELECT 权限,避免与业务账号混用。
六、操作步骤
1. 登录 DataBuddy 控制台。
2. 在顶部切换到目标地域和 Workspace。
3. 进入 数据集成 > 数据源管理(或 平台管理 > 数据源管理)。
4. 点击 创建数据源,选择 TDSQL MySQL。
5. 填写连接配置与认证信息,详见 参数说明。
6. 点击 测试连接(参见 数据源连通性测试)。
7. 测试通过后点击 保存 或 保存 & 创建任务。
七、参数说明
| 参数 | 说明 | 是否必填 | 默认值 |
| 数据源名称 | 数据源在工作空间内的唯一标识 | 是 | – |
| 连接方式 | 腾讯云实例 / 串连接 | 是 | 腾讯云实例 |
| 地域、实例 | 腾讯云实例方式下选择目标实例 | 腾讯云实例必填 | – |
| JDBC URL | 串连接方式下的连接串,格式 jdbc:mysql://host:port/database | 串连接必填 | – |
| 用户名 | 数据库连接账号 | 是 | – |
| 密码 | 数据库连接密码(支持 SSM 凭证托管) | 是 | – |
| 数据源版本 | 5.7 / 8.0 | 是 | – |
JDBC URL 示例:
jdbc:mysql://10.0.0.1:3306/mydb?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
八、离线单表
| 配置项 | 说明 |
| 数据来源 | 已配置的 TDSQL MySQL 数据源 |
| 库 / 表 | 支持指定与正则匹配;表名支持范围如 table_[0-99] |
| 切割键 | 仅支持整型字段;建议选择主键或带索引的列 |
| 筛选条件 | 标准 WHERE 语法,支持时间参数(如 gmt_create > $bizdate) |
详细任务配置参见 表到表同步。
九、最佳实践
| 实践 | 建议 |
| 账号权限最小化 | 为同步任务创建专用账号,仅授 SELECT 权限 |
| 切割键选择 | 主键或索引列,避免无索引列导致全表扫描 |
| 网络打通 | 优先使用内网连接,提升传输性能 |
十、Q:连接超时或被拒绝?
A:检查网络连通性与安全组规则,确认目标实例端口(默认 3306)已放通。
十一、Q:读取大表时速度较慢?
A:设置合理的切割键以并行读取;确认切割键列上有索引,避免全表扫描。
十二、相关文档
·添加数据源连接
·数据源连通性测试
·支持的数据源与读取能力