MySQL
支持的对端数据源及功能
请选择对端数据源,文档相关内容会根据对端数据源不同而调整。
选择对端:MySQL
核心能力
功能 | MySQL |
---|---|
结构迁移 | 是 |
全量数据迁移 | 是 |
增量实时同步 | 是 |
数据校验 | 是 |
数据订正 | 是 |
DDL实时同步 |
|
使用限制与注意点
项 | 说明 |
---|---|
有限的存储引擎支持 | 不支持除InnoDB以外的存储引擎 |
地理信息类型兼容 | 不支持地理信息类型 |
数据迁移与同步 |
|
字段类型与映射
MySQL | MySQL |
---|---|
BIGINT | BIGINT |
BINARY | BINARY |
BIT | BIT |
BLOB | BLOB |
CHAR | CHAR |
DATE | DATE |
DATETIME | DATETIME |
DECIMAL | DECIMAL |
DOUBLE | DOUBLE |
ENUM | ENUM |
FLOAT | FLOAT |
GEOMCOLLECTION | GEOMCOLLECTION |
GEOMETRY | GEOMETRY |
GEOMETRYCOLLECTION | GEOMETRYCOLLECTION |
INT | INT |
JSON | JSON |
LINESTRING | LINESTRING |
LONGBLOB | LONGBLOB |
LONGTEXT | LONGTEXT |
MEDIUMBLOB | MEDIUMBLOB |
MEDIUMINT | MEDIUMINT |
MEDIUMTEXT | MEDIUMTEXT |
MULTILINESTRING | MULTILINESTRING |
MULTIPOINT | MULTIPOINT |
MULTIPOLYGON | MULTIPOLYGON |
POINT | POINT |
POLYGON | POLYGON |
SET | SET |
SMALLINT | SMALLINT |
TEXT | TEXT |
TIME | TIME |
TIMESTAMP | TIMESTAMP |
TINYBLOB | TINYBLOB |
TINYINT | TINYINT |
TINYTEXT | TINYTEXT |
VARBINARY | VARBINARY |
VARCHAR | VARCHAR |
YEAR | YEAR |
必要条件
必要条件 | 说明 |
---|---|
账号权限 | 见:MySQL需要的权限 |
开启binnlog | CloudCanal订阅源端MySQL增量强依赖binlog file和ROW模式,请确保MySQL数据库开启binlog模式 [mysqld] log-bin=mysql-bin # 开启 binlog binlog-format=ROW # 选择 ROW 模式 |
常用源端任务参数
参数名称 | 说明 |
---|---|
dbHeartbeatEnable | 默认为false,设置为true允许CloudCanal定时向源端执行dbHeartbeatOp参数指定的SQL,从而避免源端实例没有任何变更时,增量任务会延迟的问题。 |
filterDDL | 设置为true时将不会同步源端产生的DDL SQL |
srcTimeZone | 支持自定义时区处理。如果该值不为空则会在接受到的时间对象上按照设置的值增加或者减少x个小时,其中x范围是-12~+12 |
needJsonEscape | 如果源端json类型的字段值中包含特殊字符导致写入对端失败,可以开启json转义功能对特殊字符进行转义 |
Tips: 所有数据源均有的通用参数配置请参考 通用参数及功能
数据源添加参数说明
项名称 | 说明 |
---|---|
网络地址 | 类型分为内网地址和外网地址。一个数据源可以包含一个内网地址和一个外网地址。网络地址格式为ip地址和port。默认添加的为内网地址,需要添加外网地址可以点击右侧+号 |
账号 | 数据库服务端账号 |
密码 | 数据库服务端密码 |
描述 | 非必填项,填写描述信息,方便管理数据源 |
物理位置 | 物理位置仅仅是一个标记,在管理多地域数据库时方便识别 |
高级功能
MySQL->MySQL双向同步
MySQL到MySQL之间的数据迁移同步支持双向同步,具体请参考:双向数据同步(进阶)
支持gh-ost和pt DDL在线变更工具
当前以下链路支持gh-ost和pt的在线DDL变更。具体说明参考文章:Online DDL 工具 GH-OST 和 PT-OSC 的支持
- MySQL -> MySQL
- MySQL -> PostgreSQL
- MySQL -> Greenplum
- MySQL -> Kafka
- MySQL -> RocketMQ
- MySQL -> RabbitMQ