DRS预检查项一览表
DRS同步过程一般包含四个阶段:任务启动阶段、全量阶段、增量阶段、结束任务阶段(单全量任务则包含三个阶段)。为了确保同步各个阶段的平顺,DRS在任务正式启动前,会对任务源数据库、目标数据库中的参数、对象等信息进行自动化的扫描和检测,帮助您提高数据同步的成功率。
概览
根据同步任务的源数据库类型,查看预检查信息:
- 源数据库为MySQL的同步链路预检查一览表:
- 源数据库为PostgreSQL的同步链路预检查一览表:
- 源数据库为Oracle的同步链路预检查一览表:
- 源数据库为DDM的同步链路预检查一览表:
- 源数据库为DB2 for LUW的同步链路预检查一览表:
- 源数据库为TiDB的同步链路预检查一览表:
- 源数据库为Microsoft SQL Server的同步链路预检查一览表:
- 源数据库为MongoDB的同步链路预检查一览表:
- 源数据库为MariaDB的同步链路预检查一览表:
- 源数据库为GaussDB(for MySQL)的同步链路预检查一览表:
MySQL->MySQL
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
详见MySQL权限授权方法。 |
|
目标数据库权限 |
详见MySQL权限授权方法。 |
||
版本类 |
源数据库版本 |
支持5.5、5.6、5.7、8.0版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持5.5、5.6、5.7、8.0版本。 |
详见支持的数据库。 |
|
同步版本检查 |
仅支持目标数据库版本等于或高于源数据库版本。 |
||
参数类 |
GTID状态 |
源数据库GTID状态建议为开启状态,源数据库实例没有开启GTID的情况下不支持主备倒换,DRS任务会因为位点不续接而中断导致无法恢复。 |
详见源库的GTID功能检查。 |
性能参数 |
源数据库log_slave_updates参数需设置为开启状态,否则会导致同步失败。 |
||
源数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
|||
最大允许传输包的大小 |
DRS在同步数据量大或同步大字段情况下,源数据库max_allowed_packet参数过小可能会导致任务失败。 |
||
DRS在同步数据量大或同步大字段情况下,目标数据库的max_allowed_packet参数值过小导致目标库数据无法写入造成全量同步失败。 |
|||
sql_mode取值检查 |
同步的对象中包含引擎为MyISAM的表,则目标数据库sql_mode不能包含no_engine_substitution参数,否则可能会导致同步失败。 |
||
增量同步类 |
索引列长度检查 |
源数据库索引列长度必须符合要求。 |
详见源数据库索引列长度检查。 |
Binlog开启 |
增量同步时,源数据库的Binlog日志必须打开。 |
||
Binlog格式 |
源数据库的Binlog格式必须为行格式。 |
||
Binlog保留时长 |
在磁盘空间允许的情况下,建议源数据库Binlog保存时间越长越好,建议为3天,设置为0,可能会导致同步失败。
|
||
server_id值设置 |
增量同步时,必须设置MySQL源数据库的server_id。
|
||
表字段检查 |
同步对象中如果存在包含longtext、longblob类型字段的表,建议创建大规格及以上规格的DRS任务进行同步,否则可能会导致capture OOM。 |
- |
|
附加列检查 |
单增量同步任务中如果目标数据库不存在新增附加列,会导致任务失败。 |
详见目标数据库附加列检查。 |
|
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
状态检查 |
目标数据库实例实例状态必须正常。 |
- |
|
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
字符序 |
目标库和源库的collation_server需要一致。 |
||
时钟 |
目标库和源库的时钟需要一致。 |
- |
|
时区 |
目标库和源库的time_zone需要一致。 |
||
大小写敏感 |
目标库和源库的lower_case_table_names参数设置需要一致。 |
||
group_concat函数计算结果字符的最大长度 |
目标库和源库的group_concat_max_len参数需要一致。 |
||
InnoDB检查模式 |
目标库和源库innodb_strict_mode需要一致。 |
||
数据块加密参数 |
目标库和源库block_encryption_mode需要一致。 |
- |
|
SQL模式 |
目标库和源库sql_mode需要一致。 |
||
同步对象类 |
选择对象检查 |
|
- |
库名映射时,同步的对象中如果存在存储过程、视图、函数对象,全量阶段这些对象不会同步,会导致对象对比不一致。 |
详见映射数据库对象检查。 |
||
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
关联对象检查 |
相互关联的数据对象要确保同时同步,避免因关联对象缺失,导致同步失败。常见的关联关系:视图引用表、视图引用视图、存储过程/函数/触发器引用视图/表、主外键关联表等。 |
||
外键引用操作检查 |
不支持外键级联操作。当外键是普通索引的时候,可能会导致表结构创建失败,建议改成唯一索引。 |
||
同名检查 |
除了MySQL系统数据库之外,当目标库和源库同名时,目标数据库中若存在与源库同名的表,则表结构必须与源库保持一致。 |
||
库表名规范检查 |
|
- |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
MySQL->PostgreSQL
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
详见MySQL权限授权方法。 |
|
目标数据库权限 |
RDS for PostgreSQL实例的账号默认已具有权限。 |
- |
|
版本类 |
源数据库版本 |
支持5.5、5.6、5.7、8.0版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持9.5、9.6、10、11版本。 |
详见支持的数据库。 |
|
参数类 |
GTID状态 |
源数据库GTID状态建议为开启状态,源数据库实例没有开启GTID的情况下不支持主备倒换,DRS任务会因为位点不续接而中断导致无法恢复。 |
详见源库的GTID功能检查。 |
性能参数 |
源数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
||
最大允许传输包的大小 |
DRS在同步数据量大或同步大字段情况下,源数据库max_allowed_packet参数过小可能会导致任务失败。 |
||
增量同步类 |
Binlog开启 |
增量同步时,源数据库的Binlog日志必须打开。 |
|
Binlog格式 |
源数据库的Binlog格式必须为行格式。 |
||
server_id值设置 |
增量同步时,必须设置MySQL源数据库的server_id。
|
||
表字段检查 |
|
- |
|
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
状态检查 |
目标数据库实例实例状态必须正常。 |
- |
|
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
时区 |
目标库和源库的time_zone需要一致。 |
||
表结构检查 |
目标库和源库的表结构需要一致。 |
详见表结构一致性检查。 |
|
同步对象类 |
选择对象检查 |
|
- |
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
有主键表正确性检查 |
不建议在数据库中使用非精确数值类型做主键,该特性影响 DRS 增量场景下对 UPDATE、DELETE语句的同步,导致任务失败。 |
- |
|
外键引用操作检查 |
不支持外键级联操作。当外键是普通索引的时候,可能会导致表结构创建失败,建议改成唯一索引。 |
||
同名检查 |
除了MySQL系统数据库之外,目标数据库不能包含与源数据库同名的数据库。 |
||
库表名规范检查 |
源数据库中的库名和表名不能包含:'<`>/\"以及非ASCII字符。 |
- |
|
对象名长度检查 |
目标数据库对象名最大支持63个字符。 |
详见源数据库对象名长度检查。 |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源库选择对象预检查。 |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
MySQL->GaussDB主备版
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
SELECT、LOCK TABLES、REPLICATION SLAVE、REPLICATION CLIENT。 |
详见MySQL权限授权方法。 |
目标数据库权限 |
|
- |
|
版本类 |
源数据库版本 |
支持5.5、5.6、5.7、8.0版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持1.0.0及以上版本。 |
详见支持的数据库。 |
|
参数类 |
GTID状态 |
源数据库GTID状态建议为开启状态,源数据库实例没有开启GTID的情况下不支持主备倒换,DRS任务会因为位点不续接而中断导致无法恢复。 |
详见源库的GTID功能检查。 |
性能参数 |
源数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
||
最大允许传输包的大小 |
DRS在同步数据量大或同步大字段情况下,源数据库max_allowed_packet参数过小可能会导致任务失败。 |
||
增量同步类 |
Binlog开启 |
增量同步时,源数据库的Binlog日志必须打开。 |
|
Binlog格式 |
源数据库的Binlog格式必须为行格式。 |
||
Binlog保留时长 |
在磁盘空间允许的情况下,建议源数据库Binlog保存时间越长越好,建议为3天,设置为0,可能会导致同步失败。
|
||
server_id值设置 |
增量同步时,必须设置MySQL源数据库的server_id。
|
||
表字段检查 |
不支持的数据类型有:xml、包含bit类型的json、geometry、point、lineString、polygon、geometrycollection、multipoint、multilinestring、multipolygon。 |
详见源数据库字段类型检查。 |
|
数据库兼容类型检查 |
目标数据库创建时指定兼容模式,并与源数据库保持兼容。 |
详见数据库兼容类型检查。 |
|
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
状态检查 |
目标数据库实例的状态必须正常。 |
- |
|
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
时区 |
目标库和源库的time_zone需要一致。 |
||
表结构检查 |
目标库和源库的表结构需要一致。 |
详见表结构一致性检查。 |
|
同步对象类 |
选择对象检查 |
|
- |
外键引用操作检查 |
不支持外键级联操作。当外键是普通索引的时候,可能会导致表结构创建失败,建议改成唯一索引。 |
||
同名检查 |
除了MySQL系统数据库之外,目标数据库不能包含与源数据库同名的数据库。 |
||
库表名规范检查 |
|
- |
|
对象名长度检查 |
目标数据库对象名最大支持63个字符。 |
详见源数据库对象名长度检查。 |
|
源数据库检查 |
选择的同步对象在源数据库中必须存在。 |
详见源库选择对象预检查。 |
|
目标数据库检查 |
任务配置的映射数据库必须在目标库已经存在。 |
- |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
MySQL->GaussDB(DWS)
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
SELECT、LOCK TABLES、REPLICATION SLAVE、REPLICATION CLIENT。 |
详见MySQL权限授权方法。 |
目标数据库权限 |
目标数据库账号必须具有每张表的如下权限:INSERT、SELECT、UPDATE、DELETE、CONNECT、CREATE。 |
- |
|
版本类 |
源数据库版本 |
支持5.5、5.6、5.7、8.0版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持8.1.3、8.2.0版本。 |
详见支持的数据库。 |
|
参数类 |
GTID状态 |
源数据库GTID状态建议为开启状态,源数据库实例没有开启GTID的情况下不支持主备倒换,DRS任务会因为位点不续接而中断导致无法恢复。 |
详见源库的GTID功能检查。 |
性能参数 |
源数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
||
最大允许传输包的大小 |
DRS在同步数据量大或同步大字段情况下,源数据库max_allowed_packet参数过小可能会导致任务失败。 |
||
增量同步类 |
Binlog开启 |
增量同步时,源数据库的Binlog日志必须打开。 |
|
Binlog格式 |
源数据库的Binlog格式必须为行格式。 |
||
Binlog保留时长 |
在磁盘空间允许的情况下,建议源数据库Binlog保存时间越长越好,建议为3天,设置为0,可能会导致同步失败。
|
||
server_id值设置 |
增量同步时,必须设置MySQL源数据库的server_id。
|
||
表字段检查 |
不支持的数据类型有:xml、包含bit类型的json、geometry、point、lineString、polygon、geometrycollection、multipoint、multilinestring、multipolygon。 |
详见源数据库字段类型检查。 |
|
同步对象中如果存在包含longtext、longblob类型字段的表,建议创建大规格及以上规格的DRS任务进行同步,否则可能会导致capture OOM。 |
- |
||
数据库兼容类型检查 |
目标数据库创建时指定兼容模式,并与源数据库保持兼容。 |
详见数据库兼容类型检查。 |
|
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
状态检查 |
目标数据库实例的状态必须正常。 |
- |
|
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
时区 |
目标库和源库的time_zone需要一致。 |
||
表结构检查 |
目标库和源库的表结构需要一致。 |
详见表结构一致性检查。 |
|
同步对象类 |
选择对象检查 |
|
- |
外键引用操作检查 |
不支持外键级联操作。当外键是普通索引的时候,可能会导致表结构创建失败,建议改成唯一索引。 |
||
同名检查 |
除了MySQL系统数据库之外,目标数据库不能包含与源数据库同名的数据库。 |
||
库表名规范检查 |
|
- |
|
对象名长度检查 |
目标数据库对象名最大支持63个字符。 |
详见源数据库对象名长度检查。 |
|
源数据库检查 |
选择的同步对象在源数据库中必须存在。 |
详见源库选择对象预检查。 |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
MySQL->GaussDB(for MySQL)
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
需要具备如下权限: SELECT、SHOW VIEW、EVENT、LOCK TABLES、REPLICATION SLAVE、REPLICATION CLIENT。 |
详见MySQL权限授权方法。 |
目标数据库权限 |
- |
||
版本类 |
源数据库版本 |
支持5.5、5.6、5.7、8.0版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持8.0版本。 |
详见支持的数据库。 |
|
同步版本检查 |
仅支持目标数据库版本等于或高于源数据库版本。 |
||
参数类 |
GTID状态 |
源数据库GTID状态建议为开启状态,源数据库实例没有开启GTID的情况下不支持主备倒换,DRS任务会因为位点不续接而中断导致无法恢复。 |
详见源库的GTID功能检查。 |
性能参数 |
源数据库log_slave_updates参数需设置为开启状态,否则会导致同步失败。 |
||
源数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
|||
最大允许传输包的大小 |
DRS在同步数据量大或同步大字段情况下,源数据库max_allowed_packet参数过小可能会导致任务失败。 |
||
DRS在同步数据量大或同步大字段情况下,目标数据库的max_allowed_packet参数值过小导致目标库数据无法写入造成全量同步失败。 |
|||
sql_mode取值检查 |
同步的对象中包含引擎为MyISAM的表,则目标数据库sql_mode不能包含no_engine_substitution参数,否则可能会导致同步失败。 |
||
增量同步类 |
索引列长度检查 |
源数据库索引列长度必须符合要求。 |
详见源数据库索引列长度检查。 |
Binlog开启 |
增量同步时,源数据库的Binlog日志必须打开。 |
||
Binlog格式 |
源数据库的Binlog格式必须为行格式。 |
||
Binlog保留时长 |
在磁盘空间允许的情况下,建议源数据库Binlog保存时间越长越好,建议为3天,设置为0,可能会导致同步失败。
|
||
server_id值设置 |
增量同步时,必须设置MySQL源数据库的server_id。
|
||
表字段检查 |
同步对象中如果存在包含longtext、longblob类型字段的表,建议创建大规格及以上规格的DRS任务进行同步,否则可能会导致capture OOM。 |
- |
|
附加列检查 |
对目标库中缺少附加列的库表添加对应列。 |
详见目标数据库附加列检查。 |
|
目标数据库检查 |
状态检查 |
目标数据库实例的状态必须正常。 |
- |
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
字符序 |
目标库和源库的collation_server需要一致。 |
||
时钟 |
目标库和源库的时钟需要一致。 |
- |
|
时区 |
目标库和源库的time_zone需要一致。 |
||
大小写敏感 |
目标库和源库的lower_case_table_names参数设置需要一致。 |
||
group_concat函数计算结果字符的最大长度 |
目标库和源库的group_concat_max_len参数需要一致。 |
||
InnoDB检查模式 |
目标库和源库innodb_strict_mode需要一致。 |
||
数据块加密参数 |
目标库和源库block_encryption_mode需要一致。 |
- |
|
SQL模式 |
目标库和源库sql_mode需要一致。 |
||
同步对象类 |
选择对象检查 |
|
- |
库名映射时,同步的对象中如果存在存储过程、视图、函数对象,全量阶段这些对象不会同步,会导致对象对比不一致。 |
详见映射数据库对象检查。 |
||
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
关联对象检查 |
相互关联的数据对象要确保同时同步,避免因关联对象缺失,导致同步失败。常见的关联关系:视图引用表、视图引用视图、存储过程/函数/触发器引用视图/表、主外键关联表等。 |
||
外键引用操作检查 |
不支持外键级联操作。当外键是普通索引的时候,可能会导致表结构创建失败,建议改成唯一索引。 |
||
同名检查 |
除了MySQL系统数据库之外,当目标库和源库同名时,目标数据库中如果存在与源库同名的表,则表结构必须与源库保持一致。 |
||
库表名规范检查 |
|
- |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
MySQL->MariaDB
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
详见MySQL权限授权方法。 |
|
目标数据库权限 |
- |
||
版本类 |
源数据库版本 |
支持5.5、5.6、5.7、8.0版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持10.5版本。 |
详见支持的数据库。 |
|
参数类 |
GTID状态 |
源数据库GTID状态建议为开启状态,源数据库实例没有开启GTID的情况下不支持主备倒换,DRS任务会因为位点不续接而中断导致无法恢复。 |
详见源库的GTID功能检查。 |
性能参数 |
源数据库log_slave_updates参数需设置为开启状态,否则会导致同步失败。 |
||
源数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
|||
sql_mode取值检查 |
同步的对象中包含引擎为MyISAM的表,则目标数据库sql_mode不能包含no_engine_substitution参数,否则可能会导致同步失败。 |
||
增量同步类 |
索引列长度检查 |
源数据库索引列长度必须符合要求。 |
详见源数据库索引列长度检查。 |
Binlog开启 |
增量同步时,源数据库的Binlog日志必须打开。 |
||
Binlog格式 |
源数据库的Binlog格式必须为行格式。 |
||
Binlog保留时长 |
在磁盘空间允许的情况下,建议源数据库Binlog保存时间越长越好,建议为3天,设置为0,可能会导致同步失败。
|
||
server_id值设置 |
增量同步时,必须设置MySQL源数据库的server_id。
|
||
表字段检查 |
同步对象中如果存在包含longtext、longblob类型字段的表,建议创建大规格及以上规格的DRS任务进行同步,否则可能会导致capture OOM。 |
- |
|
附加列检查 |
单增量同步任务中如果目标数据库不存在新增附加列,会导致任务失败。 |
详见目标数据库附加列检查。 |
|
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
状态检查 |
目标数据库实例实例状态必须正常。 |
- |
|
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
字符序 |
目标库和源库的collation_server需要一致。 |
||
时钟 |
目标库和源库的时钟需要一致。 |
- |
|
大小写敏感 |
目标库和源库的lower_case_table_names参数设置需要一致。 |
||
group_concat函数计算结果字符的最大长度 |
目标库和源库的group_concat_max_len参数需要一致。 |
||
InnoDB检查模式 |
目标库和源库innodb_strict_mode需要一致。 |
||
SQL模式 |
目标库和源库sql_mode需要一致。 |
||
同步对象类 |
选择对象检查 |
|
- |
库名映射时,同步的对象中如果存在存储过程、视图、函数对象,全量阶段这些对象不会同步,会导致对象对比不一致。 |
详见映射数据库对象检查。 |
||
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
关联对象检查 |
相互关联的数据对象要确保同时同步,避免因关联对象缺失,导致同步失败。常见的关联关系:视图引用表、视图引用视图、存储过程/函数/触发器引用视图/表、主外键关联表等。 |
||
外键引用操作检查 |
不支持外键级联操作。当外键是普通索引的时候,可能会导致表结构创建失败,建议改成唯一索引。 |
||
同名检查 |
除了MySQL系统数据库之外,当目标库和源库同名时,目标数据库中若存在与源库同名的表,则表结构必须与源库保持一致。 |
||
库表名规范检查 |
|
- |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
MySQL->GaussDB分布式版
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
|
详见MySQL权限授权方法。 |
目标数据库权限 |
|
- |
|
版本类 |
源数据库版本 |
支持5.5、5.6、5.7、8.0版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持1.0.0及以上版本。 |
详见支持的数据库。 |
|
参数类 |
GTID状态 |
源数据库GTID状态建议为开启状态,源数据库实例没有开启GTID的情况下不支持主备倒换,DRS任务会因为位点不续接而中断导致无法恢复。 |
详见源库的GTID功能检查。 |
性能参数 |
源数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
||
最大允许传输包的大小 |
DRS在同步数据量大或同步大字段情况下,源数据库max_allowed_packet参数过小可能会导致任务失败。 |
||
增量同步类 |
Binlog开启 |
增量同步时,源数据库的Binlog日志必须打开。 |
|
Binlog格式 |
源数据库的Binlog格式必须为行格式。 |
||
Binlog保留时长 |
在磁盘空间允许的情况下,建议源数据库Binlog保存时间越长越好,建议为3天,设置为0,可能会导致同步失败。
|
||
server_id值设置 |
增量同步时,必须设置MySQL源数据库的server_id。
|
||
表字段检查 |
不支持的数据类型有:xml、包含bit类型的json、geometry、point、lineString、polygon、geometrycollection、multipoint、multilinestring、multipolygon、interval。 |
详见源数据库字段类型检查。 |
|
数据库兼容类型检查 |
目标数据库创建时指定兼容模式,并与源数据库保持兼容。 |
详见数据库兼容类型检查。 |
|
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
状态检查 |
目标数据库实例的状态必须正常。 |
- |
|
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
时区 |
目标库和源库的time_zone需要一致。 |
||
表结构检查 |
目标库和源库的表结构需要一致。 |
详见表结构一致性检查。 |
|
同步对象类 |
选择对象检查 |
|
- |
外键引用操作检查 |
不支持外键级联操作。当外键是普通索引的时候,可能会导致表结构创建失败,建议改成唯一索引。 |
||
同名检查 |
除了MySQL系统数据库之外,目标数据库不能包含与源数据库同名的数据库。 |
||
库表名规范检查 |
|
- |
|
对象名长度检查 |
目标数据库对象名最大支持63个字符。 |
详见源数据库对象名长度检查。 |
|
源数据库检查 |
选择的同步对象在源数据库中必须存在。 |
详见源库选择对象预检查。 |
|
目标数据库检查 |
任务配置的映射数据库必须在目标库已经存在。 |
- |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
PostgreSQL->PostgreSQL
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
- |
|
目标数据库权限 |
|
- |
|
版本类 |
源数据库版本 |
支持9.4、9.5、9.6、10、11、12、13、14版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持9.5、9.6、10、11、12、13、14版本。 |
详见支持的数据库。 |
|
同步版本检查 |
仅支持目标数据库版本等于或高于源数据库版本。 |
||
参数类 |
性能参数 |
目标数据库的BLOCK_SIZE参数值必须大于或等于源数据库的BLOCK_SIZE参数值。 |
|
源数据库和目标数据库的参数PASSWORD_ENCRYPTION需要一致。 |
- |
||
源数据库max_replication_slots参数值必须大于当前已使用的复制槽数量。 |
|||
源数据库的max_wal_senders参数值必须等于或大于max_replication_slots参数值。 |
|||
源数据库中无主键表的replica identity属性必须为full。 |
- |
||
源数据库中表的主键列toast属性为main、external、extended时,其replica identity属性必须为full。 |
详见主键列复制属性的校验。 |
||
源数据库的wal_level必须配置为logical。 |
|||
增量同步类 |
表字段检查 |
|
- |
无日志表检查 |
库级同步时,不支持同步无日志表(UNLOGGED TABLE)的DML。 |
- |
|
参数检查 |
如果做增量同步,且同步对象中包含外键、触发器或事件触发器,则目标数据库的session_replication_role参数必须设置为replica,同步结束后,此参数需改为origin。 |
||
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
状态检查 |
目标数据库实例的状态必须正常。 |
- |
|
区域类型及排序规则检查 |
待同步数据库的lc_ctype或lc_collate在目标数据库不支持。 |
||
货币金额格式检查 |
源数据库和目标数据库的货币金额格式需要一致。 |
详见货币金额格式是否一致。 |
|
同步对象类 |
选择对象检查 |
|
- |
所选表不能包含延迟约束的表。 |
详见所选表是否包含延迟约束。 |
||
同步对象依赖和关联的对象需要一起同步。 |
- |
||
库表列名规范检查 |
|
- |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源库选择对象预检查。 |
|
|
详见源数据库是否处于备机状态。 |
||
任务启动前请确保源数据库中不存在长时间未提交的事务。 |
- |
||
源数据库的SSL状态正常。 |
- |
||
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
PostgreSQL->GaussDB(DWS)
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
全量+增量同步需要具备如下权限: 数据库的CONNECT权限,模式的USAGE权限,表的SELECT权限,序列的SELECT权限,无主键表的UPDATE、DELETE和TRUNCATE权限,REPLICATION连接权限。 |
- |
目标数据库权限 |
|
- |
|
版本类 |
源数据库版本 |
支持9.4、9.5、9.6、10、11、12、13、14版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持8.1.3、8.2.0版本。 |
详见支持的数据库。 |
|
参数类 |
性能参数 |
源数据库max_replication_slots参数值必须大于当前已使用的复制槽数量。 |
|
源数据库的max_wal_senders参数值必须等于或大于max_replication_slots参数值。 |
|||
源数据库中无主键表的replica identity属性必须为full。 |
- |
||
源数据库中表的主键列toast属性为main、external、extended时,其replica identity属性必须为full。 |
详见主键列复制属性的校验。 |
||
源数据库的wal_level必须配置为logical。 |
|||
增量同步类 |
表字段检查 |
|
- |
无日志表检查 |
库级同步时,不支持同步无日志表(UNLOGGED TABLE)的DML。 |
- |
|
同步对象类 |
选择对象检查 |
|
- |
所选表不能包含延迟约束的表。 |
详见所选表是否包含延迟约束。 |
||
同步对象依赖和关联的对象需要同步,常见的关联关系:主外键关联表、表继承子表引用父表、表分区子分区表引用分区表、表自增列引用序列等。 |
- |
||
库表列名规范检查 |
|
- |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源库选择对象预检查。 |
|
|
详见源数据库是否处于备机状态。 |
||
任务启动前请确保源数据库中不存在长时间未提交的事务。 |
- |
||
源数据库的SSL状态正常。 |
- |
||
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
PostgreSQL->GaussDB主备版
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
- |
|
目标数据库权限 |
具备sysadmin角色或者以下最小权限: 需要DATABASE的CONNECT和CREATE权限、SCHEMA的USAGE和CREATE权限、表的INSERT、UPDATE、DELETE、SELECT、ALTER、INDEX、COMMENT权限。 |
- |
|
版本类 |
源数据库版本 |
支持9.4、9.5、9.6、10、11、12、13、14版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持1.0.0及以上版本。 |
详见支持的数据库。 |
|
参数类 |
性能参数 |
源数据库max_replication_slots参数值必须大于当前已使用的复制槽数量。 |
|
源数据库的max_wal_senders参数值必须等于或大于max_replication_slots参数值。 |
|||
源数据库中无主键表的replica identity属性必须为full。 |
- |
||
源数据库中表的主键列toast属性为main、external、extended时,其replica identity属性必须为full。 |
详见主键列复制属性的校验。 |
||
源数据库的wal_level必须配置为logical。 |
|||
增量同步类 |
表字段检查 |
|
- |
无日志表检查 |
库级同步时,不支持同步无日志表(UNLOGGED TABLE)的DML。 |
- |
|
一致性检查 |
schema和表检查 |
目标库和源库的schema、表需要一致。 |
- |
同步对象类 |
选择对象检查 |
|
- |
所选表不能包含延迟约束的表。 |
详见所选表是否包含延迟约束。 |
||
同步对象依赖和关联的对象需要同步,常见的关联关系:视图引用表、视图引用视图、主外键关联表、表继承子表引用父表、表分区子分区表引用分区表、表自增列引用序列等。 |
- |
||
库表列名规范检查 |
|
- |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源库选择对象预检查。 |
|
|
详见源数据库是否处于备机状态。 |
||
任务启动前请确保源数据库中不存在长时间未提交的事务。 |
- |
||
源数据库的SSL状态正常。 |
- |
||
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
PostgreSQL->GaussDB分布式版
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
- |
|
目标数据库权限 |
具备sysadmin角色或者以下最小权限: 需要DATABASE的CONNECT和CREATE权限、SCHEMA的USAGE和CREATE权限、表的INSERT、UPDATE、DELETE、SELECT、ALTER、INDEX、COMMENT权限。 |
- |
|
版本类 |
源数据库版本 |
支持9.4、9.5、9.6、10、11、12、13、14版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持1.0.0及以上版本。 |
详见支持的数据库。 |
|
参数类 |
性能参数 |
源数据库max_replication_slots参数值必须大于当前已使用的复制槽数量。 |
|
源数据库的max_wal_senders参数值必须等于或大于max_replication_slots参数值。 |
|||
源数据库中无主键表的replica identity属性必须为full。 |
- |
||
源数据库中表的主键列toast属性为main、external、extended时,其replica identity属性必须为full。 |
详见主键列复制属性的校验。 |
||
源数据库的wal_level必须配置为logical。 |
|||
增量同步类 |
表字段检查 |
|
- |
无日志表检查 |
库级同步时,不支持同步无日志表(UNLOGGED TABLE)的DML。 |
- |
|
一致性检查 |
schema和表检查 |
目标库和源库的schema、表需要一致。 |
- |
同步对象类 |
选择对象检查 |
|
- |
所选表不能包含延迟约束的表。 |
详见所选表是否包含延迟约束。 |
||
同步对象依赖和关联的对象需要同步,常见的关联关系:主外键关联表、表继承子表引用父表、表分区子分区表引用分区表、表自增列引用序列等。 |
- |
||
库表列名规范检查 |
|
- |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源库选择对象预检查。 |
|
|
详见源数据库是否处于备机状态。 |
||
任务启动前请确保源数据库中不存在长时间未提交的事务。 |
- |
||
源数据库的SSL状态正常。 |
- |
||
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
Oracle->MySQL
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
全量同步: 需要具有CREATE SESSION,SELECT ANY DICTIONARY,针对单表的SELECT权限(GRANT SELECT ON <userName.tbName> to drsUser;)。 全量+增量、增量同步:
|
- |
目标数据库权限 |
必须拥有如下权限:SELECT、INSERT、CREATE、DROP、UPDATE、ALTER、DELETE、INDEX。 |
- |
|
Oracle源数据库用户MAINTAINED属检查 |
Oracle 12c及以上版本不支持使用ORACLE_MAINTAINED=Y的用户账号进行增量同步(system/sys除外),因为该属性的账号无日志解析权限。 |
- |
|
版本类 |
源数据库版本 |
支持10g、11g、12c、18c、19c、21c版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持5.5、5.6、5.7、8.0版本。 |
详见支持的数据库。 |
|
增量同步类 |
索引列长度检查 |
源数据库索引列长度必须符合要求。 |
详见源数据库索引列长度检查。 |
异构数据库兼容性 |
|
详见异构数据库兼容性风险须知。 |
|
虚拟列检查 |
源数据库中不能存在虚拟列。 |
详见源库表结构是否存在虚拟列。 |
|
字符集兼容性检查 |
目标数据库字符集需要完全兼容源库字符集。 |
详见字符集兼容性检查。 |
|
归档日志和补充日志检查 |
增量同步时,源库Oracle需要开启日志归档模式和最小补充日志,所需同步表必须开启PK/UI或以ALL级别的补充日志,不限制库级或表级补充日志方式,如果只开启表级补充日志,重建或者RENAME表后需要重新设置;请确保以上配置在同步过程中始终保持开启状态。 |
- |
|
目标数据库检查 |
状态检查 |
目标数据库实例的状态必须正常。 |
- |
源数据库检查 |
物理复制库检查 |
增量阶段源库为Oracle物理备库(PHYSICAL STANDBY)时不支持解析lob类型数据(无法生成数据字典),如果增量同步的表中出现lob类型会导致增量同步异常。 |
详见物理复制库检查。 |
同步对象类 |
选择对象检查 |
|
- |
表结构检查 |
同步表结构时源库和目标库表结构一致。 |
- |
|
表字段类型检查 |
源数据库表含有不支持的表字段类型。支持的表字段类型有: VARCHAR,VARCHAR2,NVARCHAR2,NUMBER,FLOAT,LONG,DATE,BINARY_FLOAT,BINARY_DOUBLE,RAW,LONG RAW,CHAR,NCHAR,CLOB,NCLOB,BLOB,ROWID,TIMESTAMP,TIMESTAMP WITH TIME ZONE,TIMESTAMP WITH LOCAL TIME ZONE。 |
详见源库表字段类型检查。 |
|
排序字符集检查 |
目标数据库的主键或者唯一键列,在不区分大小写的排序字符集下,即“…_ci”结尾的不区分大小写的排序字符集,可能在数据迁移时发生“重复键”报错。 |
详见目标库排序字符集检查。 |
|
无主键表检查 |
由于无主键表缺乏行的唯一性标志,网络不稳定时涉及少量重试,表数据存在少量不一致的可能性。 |
详见源库无主键表检查。 |
|
数据约束检查 |
数据传输时可能出现写入目标库的数据不满足约束检查而失败或丢失的风险。 |
详见存在约束不验证添加前数据。 |
|
字符集检查 |
源数据库仅支持同步如下字符集:ZHS16GBK、AL32UTF8、UTF8、US7ASCII、WE8MSWIN1252、WE8ISO8859P1、WE8ISO8859P2、WE8ISO8859P4、WE8ISO8859P5、WE8ISO8859P7、WE8ISO8859P9、WE8ISO8859P13、WE8ISO8859P15。 |
详见源数据库字符集是否支持。 |
|
同名检查 |
对象名同步到目标库后会转换成小写,为避免同步失败,选择的源库表中不能存在表名称字母相同但大小写不同的表。 |
||
库表名规范检查 |
|
- |
|
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
Oracle->GaussDB(for MySQL)
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
全量同步: 需要具有CREATE SESSION,SELECT ANY DICTIONARY,针对单表的SELECT权限(GRANT SELECT ON <userName.tbName> to drsUser;)。 全量+增量同步:
|
- |
目标数据库权限 |
必须拥有如下权限:SELECT、CREATE、DROP、DELETE、INSERT、UPDATE、ALTER、INDEX、EVENT、RELOAD、CREATE VIEW、CREATE ROUTINE、TRIGGER。 |
- |
|
版本类 |
源数据库版本 |
支持10g、11g、12c、18c、19c、21c版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持8.0版本。 |
详见支持的数据库。 |
|
增量同步类 |
索引列长度检查 |
源数据库索引列长度必须符合要求。 |
详见源数据库索引列长度检查。 |
异构数据库兼容性 |
|
详见异构数据库兼容性风险须知。 |
|
虚拟列检查 |
源数据库中不能存在虚拟列。 |
详见源库表结构是否存在虚拟列。 |
|
归档日志和补充日志检查 |
增量同步时,源库Oracle需要开启日志归档模式和最小补充日志,所需同步表必须开启PK/UI或以ALL级别的补充日志,不限制库级或表级补充日志方式,如果只开启表级补充日志,重建或者RENAME表后需要重新设置;请确保以上配置在同步过程中始终保持开启状态。 |
- |
|
目标数据库检查 |
状态检查 |
目标数据库实例的状态必须正常。 |
- |
源数据库检查 |
物理复制库检查 |
增量阶段源库为Oracle物理备库(PHYSICAL STANDBY)时不支持解析lob类型数据(无法生成数据字典),如果增量同步的表中出现lob类型会导致增量同步异常。 |
详见物理复制库检查。 |
同步对象类 |
选择对象检查 |
支持库、表结构、主键、唯一键、普通索引、表数据的同步,其他数据库对象暂不支持,如存储过程、触发器、函数、序列、包、同义词、用户等。 |
- |
表字段类型检查 |
源数据库表含有不支持的表字段类型。支持的表字段类型有: VARCHAR,VARCHAR2,NVARCHAR2,NUMBER,FLOAT,LONG,DATE,BINARY_FLOAT,BINARY_DOUBLE,RAW,LONG RAW,CHAR,NCHAR,CLOB,NCLOB,BLOB,ROWID,TIMESTAMP,TIMESTAMP WITH TIME ZONE,TIMESTAMP WITH LOCAL TIME ZONE。 |
详见源库表字段类型检查。 |
|
排序字符集检查 |
目标数据库的主键或者唯一键列,在不区分大小写的排序字符集下,即“…_ci”结尾的不区分大小写的排序字符集,可能在数据迁移时发生“重复键”报错。 |
详见目标库排序字符集检查。 |
|
无主键表检查 |
由于无主键表缺乏行的唯一性标志,网络不稳定时涉及少量重试,表数据存在少量不一致的可能性。 |
详见源库无主键表检查。 |
|
数据约束检查 |
数据传输时可能出现写入目标库的数据不满足约束检查而失败或丢失的风险。 |
详见存在约束不验证添加前数据。 |
|
字符集检查 |
源数据库仅支持同步如下字符集:ZHS16GBK、AL32UTF8、UTF8、US7ASCII、WE8MSWIN1252、WE8ISO8859P1、WE8ISO8859P2、WE8ISO8859P4、WE8ISO8859P5、WE8ISO8859P7、WE8ISO8859P9、WE8ISO8859P13、WE8ISO8859P15。 |
详见源数据库字符集是否支持。 |
|
同名检查 |
对象名同步到目标库后会转换成小写,为避免同步失败,选择的源库表中不能存在表名称字母相同但大小写不同的表。 |
||
库表名规范检查 |
|
- |
|
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
Oracle->GaussDB主备版
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
全量同步: 需要具有CREATE SESSION,SELECT ANY DICTIONARY,针对单表的SELECT权限(GRANT SELECT ON <userName.tbName> to drsUser;)。 全量+增量、增量同步:
|
- |
目标数据库权限 |
|
- |
|
Oracle源数据库用户MAINTAINED属检查 |
Oracle 12c及以上版本不支持使用ORACLE_MAINTAINED=Y的用户账号进行增量同步(system/sys除外),因为该属性的账号无日志解析权限。 |
- |
|
版本类 |
源数据库版本 |
支持10g、11g、12c、18c、19c、21c版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持1.0.0及以上版本。 |
详见支持的数据库。 |
|
增量同步类 |
字符集兼容性检查 |
目标数据库字符集需要完全兼容源库字符集。 |
详见字符集兼容性检查。 |
虚拟列检查 |
源数据库中不能存在虚拟列。 |
详见源库表结构是否存在虚拟列。 |
|
归档日志和补充日志检查 |
增量同步时,源库Oracle需要开启日志归档模式和最小补充日志,所需同步表必须开启PK/UI或以ALL级别的补充日志,不限制库级或表级补充日志方式,如果只开启表级补充日志,重建或者RENAME表后需要重新设置;请确保以上配置在同步过程中始终保持开启状态。 |
- |
|
源数据库检查 |
物理复制库检查 |
增量阶段源库为Oracle物理备库(PHYSICAL STANDBY)时不支持解析lob类型数据(无法生成数据字典),如果增量同步的表中出现lob类型会导致增量同步异常。 |
详见物理复制库检查。 |
同步对象类 |
选择对象检查 |
|
- |
目标数据库对象一致性检查 |
检查目标库对象是否满足同步要求。 |
详见目标数据库对象一致性检查。 |
|
外键检查 |
同步的表要禁用外键,因为DRS并行回放会使得不同表之间的写入顺序和源库不一致,可能会触发外键约束限制,造成同步失败。 |
||
表字段类型检查 |
源数据库表含有不支持的表字段类型。支持的表字段类型有: VARCHAR,VARCHAR2,NVARCHAR2,NUMBER,FLOAT,LONG,DATE,BINARY_FLOAT,BINARY_DOUBLE,RAW,LONG RAW,CHAR,NCHAR,CLOB,NCLOB,BLOB,ROWID,TIMESTAMP,TIMESTAMP WITH TIME ZONE,TIMESTAMP WITH LOCAL TIME ZONE。 |
详见源库表字段类型检查。 |
|
无主键表检查 |
由于无主键表缺乏行的唯一性标志,网络不稳定时涉及少量重试,表数据存在少量不一致的可能性。 |
详见源库无主键表检查。 |
|
数据约束检查 |
数据传输时可能出现写入目标库的数据不满足约束检查而失败或丢失的风险。 |
详见存在约束不验证添加前数据。 |
|
字符集检查 |
源数据库仅支持同步如下字符集:ZHS16GBK、AL32UTF8、UTF8、US7ASCII、WE8MSWIN1252、WE8ISO8859P1、WE8ISO8859P2、WE8ISO8859P4、WE8ISO8859P5、WE8ISO8859P7、WE8ISO8859P9、WE8ISO8859P13、WE8ISO8859P15。 |
详见源数据库字符集是否支持。 |
|
库表名规范检查 |
库名、表名等数据库对象名称支持英文字符、“#”、“$”、“_”等符号, DRS不支持非ASCII字符、“. ”、 “>”、 “<”、 “\”、 “`”、 “|”、 “,”、 “? ”、 “! ”、 “"”和 “'”等字符。对象名同步到目标库后会转换成小写,为避免同步失败,选择的源库表中不能存在表名称字母相同但大小写不同的表。 |
- |
|
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
Oracle->GaussDB分布式版
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
全量同步: 需要具有CREATE SESSION,SELECT ANY DICTIONARY,针对单表的SELECT权限(GRANT SELECT ON <userName.tbName> to drsUser;)。 全量+增量、增量同步:
|
- |
目标数据库权限 |
|
- |
|
Oracle源数据库用户MAINTAINED属检查 |
Oracle 12c及以上版本不支持使用ORACLE_MAINTAINED=Y的用户账号进行增量同步(system/sys除外),因为该属性的账号无日志解析权限。 |
- |
|
版本类 |
源数据库版本 |
支持10g、11g、12c、18c、19c、21c版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持1.0.0及以上版本。 |
详见支持的数据库。 |
|
增量同步类 |
字符集兼容性检查 |
目标数据库字符集需要完全兼容源库字符集。 |
详见字符集兼容性检查。 |
虚拟列检查 |
源数据库中不能存在虚拟列。 |
详见源库表结构是否存在虚拟列。 |
|
归档日志和补充日志检查 |
增量同步时,源库Oracle需要开启日志归档模式和最小补充日志,所需同步表必须开启PK/UI或以ALL级别的补充日志,不限制库级或表级补充日志方式,如果只开启表级补充日志,重建或者RENAME表后需要重新设置;请确保以上配置在同步过程中始终保持开启状态。 |
- |
|
源数据库检查 |
物理复制库检查 |
增量阶段源库为Oracle物理备库(PHYSICAL STANDBY)时不支持解析lob类型数据(无法生成数据字典),如果增量同步的表中出现lob类型会导致增量同步异常。 |
详见物理复制库检查。 |
同步对象类 |
选择对象检查 |
|
- |
目标数据库对象一致性检查 |
检查目标库对象是否满足同步要求。 |
详见目标数据库对象一致性检查。 |
|
外键检查 |
同步的表要禁用外键,因为DRS并行回放会使得不同表之间的写入顺序和源库不一致,可能会触发外键约束限制,造成同步失败。 |
||
表字段类型检查 |
源数据库表含有不支持的表字段类型。支持的表字段类型有: VARCHAR,VARCHAR2,NVARCHAR2,NUMBER,FLOAT,LONG,DATE,BINARY_FLOAT,BINARY_DOUBLE,RAW,LONG RAW,CHAR,NCHAR,CLOB,NCLOB,BLOB,ROWID,TIMESTAMP,TIMESTAMP WITH TIME ZONE,TIMESTAMP WITH LOCAL TIME ZONE。 |
详见源库表字段类型检查。 |
|
无主键表检查 |
由于无主键表缺乏行的唯一性标志,网络不稳定时涉及少量重试,表数据存在少量不一致的可能性。 |
详见源库无主键表检查。 |
|
数据约束检查 |
数据传输时可能出现写入目标库的数据不满足约束检查而失败或丢失的风险。 |
详见存在约束不验证添加前数据。 |
|
字符集检查 |
源数据库仅支持同步如下字符集:ZHS16GBK、AL32UTF8、UTF8、US7ASCII、WE8MSWIN1252、WE8ISO8859P1、WE8ISO8859P2、WE8ISO8859P4、WE8ISO8859P5、WE8ISO8859P7、WE8ISO8859P9、WE8ISO8859P13、WE8ISO8859P15。 |
详见源数据库字符集是否支持。 |
|
库表名规范检查 |
库名、表名等数据库对象名称支持英文字符、“#”、“$”、“_”等符号, DRS不支持非ASCII字符、“. ”、 “>”、 “<”、 “\”、 “`”、 “|”、 “,”、 “? ”、 “! ”、 “"”和 “'”等字符。对象名同步到目标库后会转换成小写,为避免同步失败,选择的源库表中不能存在表名称字母相同但大小写不同的表。 |
- |
|
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
Oracle->GaussDB(DWS)
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
全量同步: 需要具有CREATE SESSION,SELECT ANY DICTIONARY,针对单表的SELECT权限(GRANT SELECT ON <userName.tbName> to drsUser;)。 全量+增量、增量同步:
|
- |
目标数据库权限 |
|
- |
|
Oracle源数据库用户MAINTAINED属检查 |
Oracle 12c及以上版本不支持使用ORACLE_MAINTAINED=Y的用户账号进行增量同步(system/sys除外),因为该属性的账号无日志解析权限。 |
- |
|
版本类 |
源数据库版本 |
支持10g、11g、12c、18c、19c、21c版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持8.1.3、8.2.0版本 |
详见支持的数据库。 |
|
增量同步类 |
字符集兼容性检查 |
目标数据库字符集需要完全兼容源库字符集。 |
详见字符集兼容性检查。 |
虚拟列检查 |
源数据库中不能存在虚拟列。 |
详见源库表结构是否存在虚拟列。 |
|
归档日志和补充日志检查 |
增量同步时,源库Oracle需要开启日志归档模式和最小补充日志,所需同步表必须开启PK/UI或以ALL级别的补充日志,不限制库级或表级补充日志方式,如果只开启表级补充日志,重建或者RENAME表后需要重新设置;请确保以上配置在同步过程中始终保持开启状态。 |
- |
|
目标数据库检查 |
状态检查 |
目标数据库实例的状态必须正常。 |
- |
源数据库检查 |
物理复制库检查 |
增量阶段源库为Oracle物理备库(PHYSICAL STANDBY)时不支持解析lob类型数据(无法生成数据字典),如果增量同步的表中出现lob类型会导致增量同步异常。 |
详见物理复制库检查。 |
同步对象类 |
选择对象检查 |
|
- |
表字段类型检查 |
源数据库表含有不支持的表字段类型。支持的表字段类型有: VARCHAR,VARCHAR2,NVARCHAR2,NUMBER,FLOAT,LONG,DATE,BINARY_FLOAT,BINARY_DOUBLE,RAW,LONG RAW,CHAR,NCHAR,CLOB,NCLOB,BLOB,ROWID,TIMESTAMP,TIMESTAMP WITH TIME ZONE,TIMESTAMP WITH LOCAL TIME ZONE。 |
详见源库表字段类型检查。 |
|
无主键表检查 |
由于无主键表缺乏行的唯一性标志,网络不稳定时涉及少量重试,表数据存在少量不一致的可能性。 |
详见源库无主键表检查。 |
|
同名检查 |
同步表结构时,如果目标库存在与源库同名约束会导致建表失败。 |
||
数据约束检查 |
数据传输时可能出现写入目标库的数据不满足约束检查而失败或丢失的风险。 |
详见存在约束不验证添加前数据。 |
|
字符集检查 |
源数据库仅支持同步如下字符集:ZHS16GBK、AL32UTF8、UTF8、US7ASCII、WE8MSWIN1252、WE8ISO8859P1、WE8ISO8859P2、WE8ISO8859P4、WE8ISO8859P5、WE8ISO8859P7、WE8ISO8859P9、WE8ISO8859P13、WE8ISO8859P15。 |
详见源数据库字符集是否支持。 |
|
库表名规范检查 |
|
- |
|
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
Oracle->DDM
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
全量同步: 需要具有CREATE SESSION,SELECT ANY DICTIONARY,针对单表的SELECT权限(GRANT SELECT ON <userName.tbName> to drsUser;)。 全量+增量同步:
|
- |
目标数据库权限 |
提供的目标数据库账号必须拥有如下权限:SELECT、CREATE、DROP、DELETE、INSERT、UPDATE、ALTER、INDEX、EVENT、RELOAD、CREATE VIEW。 |
- |
|
Oracle源数据库用户MAINTAINED属检查 |
Oracle 12c及以上版本不支持使用ORACLE_MAINTAINED=Y的用户账号进行增量同步(system/sys除外),因为该属性的账号无日志解析权限。 |
- |
|
版本类 |
源数据库版本 |
支持10g、11g、12c、18c、19c、21c版本。 |
详见支持的数据库。 |
增量同步类 |
字符集兼容性检查 |
目标数据库字符集需要完全兼容源库字符集。 |
详见字符集兼容性检查。 |
虚拟列检查 |
源数据库中不能存在虚拟列。 |
详见源库表结构是否存在虚拟列。 |
|
归档日志和补充日志检查 |
增量同步时,源库Oracle需要开启日志归档模式和最小补充日志,所需同步表必须开启PK/UI或以ALL级别的补充日志,不限制库级或表级补充日志方式,如果只开启表级补充日志,重建或者RENAME表后需要重新设置;请确保以上配置在同步过程中始终保持开启状态。 |
- |
|
源数据库检查 |
物理复制库检查 |
增量阶段源库为Oracle物理备库(PHYSICAL STANDBY)时不支持解析lob类型数据(无法生成数据字典),如果增量同步的表中出现lob类型会导致增量同步异常。 |
详见物理复制库检查。 |
同步对象类 |
选择对象检查 |
目前只支持同步源库的数据,不支持同步源库表结构及其他数据库对象。 |
- |
表结构检查 |
目标库的冗余列(源库中不存在的列)不能存在非空约束,否则会导致数据迁移因为非空约束而阻塞。 |
||
表字段类型检查 |
源数据库表含有不支持的表字段类型。支持的表字段类型有: VARCHAR,VARCHAR2,NVARCHAR2,NUMBER,FLOAT,LONG,DATE,BINARY_FLOAT,BINARY_DOUBLE,RAW,LONG RAW,CHAR,NCHAR,CLOB,NCLOB,BLOB,ROWID,TIMESTAMP,TIMESTAMP WITH TIME ZONE,TIMESTAMP WITH LOCAL TIME ZONE。 |
详见源库表字段类型检查。 |
|
无主键表检查 |
由于无主键表缺乏行的唯一性标志,网络不稳定时涉及少量重试,表数据存在少量不一致的可能性。 |
详见源库无主键表检查。 |
|
数据约束检查 |
数据传输时可能出现写入目标库的数据不满足约束检查而失败或丢失的风险。 |
详见存在约束不验证添加前数据。 |
|
字符集检查 |
源数据库仅支持同步如下字符集:ZHS16GBK、AL32UTF8、UTF8、US7ASCII、WE8MSWIN1252、WE8ISO8859P1、WE8ISO8859P2、WE8ISO8859P4、WE8ISO8859P5、WE8ISO8859P7、WE8ISO8859P9、WE8ISO8859P13、WE8ISO8859P15。 |
详见源数据库字符集是否支持。 |
|
库表名规范检查 |
|
- |
|
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
Oracle->PostgreSQL
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
全量同步: 需要具有CREATE SESSION,SELECT ANY DICTIONARY,针对单表的SELECT权限(GRANT SELECT ON <userName.tbName> to drsUser;)。 全量+增量同步:
|
- |
目标数据库权限 |
每张表必须具有如下权限:INSERT、SELECT、UPDATE、DELETE、CONNECT、CREATE、REFERENCES。 |
- |
|
Oracle源数据库用户MAINTAINED属检查 |
Oracle 12c及以上版本不支持使用ORACLE_MAINTAINED=Y的用户账号进行增量同步(system/sys除外),因为该属性的账号无日志解析权限。 |
- |
|
版本类 |
源数据库版本 |
支持10g、11g、12c、18c、19c、21c版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持9.5、9.6、10、11、12、13、14版本。 |
详见支持的数据库。 |
|
增量同步类 |
异构数据库兼容性 |
请确认所需迁移的表中以字符串为主键或唯一键的列不包含空格,否则有可能导致数据不一致或迁移失败。 |
详见异构数据库兼容性风险须知。 |
虚拟列检查 |
源数据库中不能存在虚拟列。 |
详见源库表结构是否存在虚拟列。 |
|
字符集兼容性检查 |
目标数据库字符集需要完全兼容源库字符集。 |
详见字符集兼容性检查。 |
|
归档日志和补充日志检查 |
增量同步时,源库Oracle需要开启日志归档模式和最小补充日志,所需同步表必须开启PK/UI或以ALL级别的补充日志,不限制库级或表级补充日志方式,如果只开启表级补充日志,重建或者RENAME表后需要重新设置;请确保以上配置在同步过程中始终保持开启状态。 |
- |
|
目标数据库检查 |
状态检查 |
目标数据库实例的状态必须正常。 |
- |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
||
源数据库检查 |
物理复制库检查 |
增量阶段源库为Oracle物理备库(PHYSICAL STANDBY)时不支持解析lob类型数据(无法生成数据字典),如果增量同步的表中出现lob类型会导致增量同步异常。 |
详见物理复制库检查。 |
同步对象类 |
选择对象检查 |
|
- |
表字段类型检查 |
源数据库表含有不支持的表字段类型。支持的表字段类型有: VARCHAR,VARCHAR2,NVARCHAR2,NUMBER,FLOAT,LONG,DATE,BINARY_FLOAT,BINARY_DOUBLE,RAW,LONG RAW,CHAR,NCHAR,CLOB,NCLOB,BLOB,ROWID,TIMESTAMP,TIMESTAMP WITH TIME ZONE,TIMESTAMP WITH LOCAL TIME ZONE。 |
详见源库表字段类型检查。 |
|
无主键表检查 |
由于无主键表缺乏行的唯一性标志,网络不稳定时涉及少量重试,表数据存在少量不一致的可能性。 |
详见源库无主键表检查。 |
|
数据约束检查 |
数据传输时可能出现写入目标库的数据不满足约束检查而失败或丢失的风险。 |
详见存在约束不验证添加前数据。 |
|
字符集检查 |
源数据库仅支持同步如下字符集:ZHS16GBK、AL32UTF8、UTF8、US7ASCII、WE8MSWIN1252、WE8ISO8859P1、WE8ISO8859P2、WE8ISO8859P4、WE8ISO8859P5、WE8ISO8859P7、WE8ISO8859P9、WE8ISO8859P13、WE8ISO8859P15。 |
详见源数据库字符集是否支持。 |
|
日志解析权限检查 |
源数据库连接用户不具有日志解析权限,会导致增量迁移失败。 |
||
同名检查 |
对象名同步到目标库后会转换成小写,为避免同步失败,选择的源库表中不能存在表名称字母相同但大小写不同的表。 |
||
库表名规范检查 |
库名、表名不支持的字符有:非ASCII字符、“. ”、 “>”、 “<”、 “\”、 “`”、 “|”、 “,”、 “? ”、 “! ”、 “"”和 “'”。 |
- |
|
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
DDM->MySQL
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
|
- |
目标数据库权限 |
需要具备如下权限:SELECT、CREATE、ALTER、DROP、DELETE、INSERT、UPDATE。 RDS for MySQL实例的root账户默认已具备上述权限。 |
详见MySQL权限授权方法。 |
|
参数类 |
GTID状态 |
源物理分片数据库GTID状态建议为开启状态,源物理分片数据库实例没有开启GTID的情况下不支持主备倒换,DRS任务会因为位点不续接而中断导致无法恢复。 |
- |
性能参数 |
源物理分片数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
||
增量同步类 |
Binlog开启 |
增量同步时,源物理分片数据库的Binlog日志必须打开。 |
|
Binlog格式 |
源物理分片数据库的Binlog格式必须为行格式。 |
||
server_id值设置 |
增量同步时,必须设置源物理分片数据库的server_id。
|
||
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
大小写敏感 |
目标库和源库的lower_case_table_names参数设置需要一致。 |
||
group_concat函数计算结果字符的最大长度 |
目标库和源库的group_concat_max_len参数需要一致。 |
||
数据块加密参数 |
目标库和源库block_encryption_mode需要一致。 |
- |
|
同步对象类 |
选择对象检查 |
|
- |
库名映射时,同步的对象中如果存在存储过程、视图、函数对象,全量阶段这些对象不会同步,会导致对象对比不一致。 |
详见映射数据库对象检查。 |
||
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
库表名规范检查 |
源分库分表中间件中的库名、表名不能包含:'<>/\以及非ASCII字符。 |
- |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
DDM->GaussDB(DWS)
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
|
- |
目标数据库权限 |
提供的目标数据库账号必须具有每张表的如下权限:INSERT、SELECT、UPDATE、DELETE、CONNECT、CREATE。 |
- |
|
参数类 |
GTID状态 |
源物理分片数据库GTID状态建议为开启状态,源物理分片数据库实例没有开启GTID的情况下不支持主备倒换,DRS任务会因为位点不续接而中断导致无法恢复。 |
- |
性能参数 |
源物理分片数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
||
增量同步类 |
Binlog开启 |
增量同步时,源物理分片数据库的Binlog日志必须打开。 |
|
Binlog格式 |
源物理分片数据库的Binlog格式必须为行格式。 |
||
server_id值设置 |
增量同步时,必须设置源物理分片数据库的server_id。
|
||
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
大小写敏感 |
目标库和源库的lower_case_table_names参数设置需要一致。 |
||
group_concat函数计算结果字符的最大长度 |
目标库和源库的group_concat_max_len参数需要一致。 |
||
数据块加密参数 |
目标库和源库block_encryption_mode需要一致。 |
- |
|
同步对象类 |
选择对象检查 |
|
- |
库名映射时,同步的对象中如果存在存储过程、视图、函数对象,全量阶段这些对象不会同步,会导致对象对比不一致。 |
详见映射数据库对象检查。 |
||
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
库表名规范检查 |
源分库分表中间件中的库名、表名不能包含:'<>/\以及非ASCII字符。 |
- |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
DDM->DDM
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
|
- |
目标数据库权限 |
需要具备如下基本权限:CREATE、DROP、ALTER、INDEX、INSERT、DELETE、UPDATE、SELECT, 同时必须具备扩展权限:全表SELECT权限。目标中间件账户必须具备对所同步数据库的权限。 |
- |
|
参数类 |
GTID状态 |
源物理分片数据库GTID状态建议为开启状态,源物理分片数据库实例没有开启GTID的情况下不支持主备倒换,DRS任务会因为位点不续接而中断导致无法恢复。 |
- |
性能参数 |
源物理分片数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
||
增量同步类 |
Binlog开启 |
增量同步时,源物理分片数据库的Binlog日志必须打开。 |
|
Binlog格式 |
源物理分片数据库的Binlog格式必须为行格式。 |
||
server_id值设置 |
增量同步时,必须设置源物理分片数据库的server_id。
|
||
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
大小写敏感 |
目标库和源库的lower_case_table_names参数设置需要一致。 |
||
group_concat函数计算结果字符的最大长度 |
目标库和源库的group_concat_max_len参数需要一致。 |
||
数据块加密参数 |
目标库和源库block_encryption_mode需要一致。 |
- |
|
同步对象类 |
选择对象检查 |
|
- |
库名映射时,同步的对象中如果存在存储过程、视图、函数对象,全量阶段这些对象不会同步,会导致对象对比不一致。 |
详见映射数据库对象检查。 |
||
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
库表名规范检查 |
源分库分表中间件中的库名、表名不能包含:'<>/\以及非ASCII字符。 |
- |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
DB2 for LUW->GaussDB主备版
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
|
- |
目标数据库权限 |
|
- |
|
版本类 |
源数据库版本 |
支持9.7、10.1、10.5、11.1、11.5版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持1.0.0及以上版本。 |
详见支持的数据库。 |
|
参数类 |
DataCapture参数 |
选择全量+增量同步时,需要确保开启源数据库的归档日志,确保需要同步的表的DataCapture属性为Y。 |
- |
同步对象类 |
选择对象检查 |
|
- |
目标数据库对象一致性检查 |
检查目标库对象是否满足同步要求。 |
详见目标数据库对象一致性检查。 |
|
表字段类型检查 |
|
详见源数据库表字段类型检查。 |
|
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源迁移库无主键表检查。 |
|
字符集检查 |
源数据库仅支持同步如下字符集:GBK、UTF8。 |
详见源数据库字符集是否支持。 |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源数据库选择对象预检查。 |
|
库表名规范检查 |
|
- |
|
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
DB2 for LUW->GaussDB分布式版
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
|
- |
目标数据库权限 |
|
- |
|
版本类 |
源数据库版本 |
支持9.7、10.1、10.5、11.1、11.5版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持1.0.0及以上版本。 |
详见支持的数据库。 |
|
参数类 |
DataCapture参数 |
选择全量+增量同步时,需要确保开启源数据库的归档日志,确保需要同步的表的DataCapture属性为Y。 |
- |
同步对象类 |
选择对象检查 |
|
- |
目标数据库对象一致性检查 |
检查目标库对象是否满足同步要求。 |
详见目标数据库对象一致性检查。 |
|
表字段类型检查 |
|
详见源数据库表字段类型检查。 |
|
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源迁移库无主键表检查。 |
|
字符集检查 |
源数据库仅支持同步如下字符集:GBK、UTF8。 |
详见源数据库字符集是否支持。 |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源数据库选择对象预检查。 |
|
库表名规范检查 |
|
- |
|
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
DB2 for LUW->GaussDB(DWS)
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
|
- |
目标数据库权限 |
|
- |
|
版本类 |
源数据库版本 |
支持9.7、10.1、10.5、11.1、11.5版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持8.1.3、8.2.0版本。 |
详见支持的数据库。 |
|
参数类 |
DataCapture参数 |
选择全量+增量同步时,需要确保开启源数据库的归档日志,确保需要同步的表的DataCapture属性为Y。 |
- |
同步对象类 |
选择对象检查 |
|
- |
目标数据库对象一致性检查 |
检查目标库对象是否满足同步要求。 |
详见目标数据库对象一致性检查。 |
|
表字段类型检查 |
|
详见源数据库表字段类型检查。 |
|
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源迁移库无主键表检查。 |
|
字符集检查 |
源数据库仅支持同步如下字符集:GBK、UTF8。 |
详见源数据库字符集是否支持。 |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源数据库选择对象预检查。 |
|
库表名规范检查 |
库名、表名等数据库对象名称支持英文字符、“#”、“$”、“_”等符号, DRS 不支持非ASCII字符、“. ”、 “>”、 “<”、 “\”、 “`”、 “|”、 “,”、 “? ”、 “! ”、 “"”和 “'”等字符。对象名同步到目标库后会转换成小写,为避免同步失败,选择的源库表中不能存在表名称字母相同但大小写不同的表。 |
- |
|
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
TiDB->GaussDB(for MySQL)
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
SELECT,CONFIG权限。 |
- |
目标数据库权限 |
SELECT,CREATE,DROP,INSERT,DELETE,UPDATE,ALTER,REFERENCES,INDEX权限。 |
- |
|
版本类 |
源数据库版本 |
4.0.0及以上版本(不包括dev版本)。 |
详见支持的数据库。 |
目标数据库版本 |
8.0版本。 |
详见支持的数据库。 |
|
增量同步类 |
Binlog开启 |
增量同步时,源数据库的Binlog日志必须打开。 |
|
同步对象类 |
选择对象检查 |
|
- |
库表名规范检查 |
|
- |
|
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源迁移库无主键表检查。 |
|
同名检查 |
目标数据库不能包含与源数据库同名的表。 |
||
源数据库检查 |
选择的同步对象在源数据库中必须存在。 |
详见源库选择对象预检查。 |
|
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
Microsoft SQL Server->GaussDB(DWS)
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
需要具备sysadmin权限,或者view server state权限以及待同步数据库的db_datareader或db_owner权限。 |
- |
目标数据库权限 |
|
- |
|
版本类 |
源数据库版本 |
|
详见支持的数据库。 |
目标数据库版本 |
支持8.1.3、8.2.0版本。 |
详见支持的数据库。 |
|
增量同步类 |
CDC开启 |
SQL Server为源的增量同步基于SQL Server提供的CDC能力,如果SQL Server源库的CDC功能出现异常(如被关闭、事务日志满等情况),则增量同步就会受到影响。 |
详见源库表是否开启了CDC。 |
CDC数据保留时间检查 |
源数据库CDC数据保留时间不足1天,会导致增量同步异常。请修改为1440分钟(1天)或以上,建议4320分钟(3天)。 |
||
一致性检查 |
计算机名 |
源数据库和目标数据库的计算机名不能相同。 |
|
同步对象类 |
选择对象检查 |
|
- |
库表名规范检查 |
|
- |
|
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
同名检查 |
除了SQL Server系统数据库之外,目标数据库不能包含与源数据库同名的对象。 |
||
源数据库检查 |
选择的同步对象在源数据库中必须存在。 |
详见源库选择对象预检查。 |
|
源数据库实例不允许为空。 |
详见源数据库实例是否为空。 |
||
源数据库的备份恢复模式必须设置为FULL模式。 |
详见源数据库恢复模式检查。 |
||
源数据库必须开启SQL Server Agent代理服务。 |
|||
源数据库中不允许存在被禁用的表的聚簇索引,否则会导致同步失败。 |
|||
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
Microsoft SQL Server->GaussDB主备版
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
- |
|
目标数据库权限 |
|
- |
|
版本类 |
源数据库版本 |
|
详见支持的数据库。 |
目标数据库版本 |
1.1.0及以上版本。 |
详见支持的数据库。 |
|
增量同步类 |
CDC开启 |
SQL Server为源的增量同步基于SQL Server提供的CDC能力,如果SQL Server源库的CDC功能出现异常(如被关闭、事务日志满等情况),则增量同步就会受到影响。 |
详见源库表是否开启了CDC。 |
CDC数据保留时间检查 |
源数据库CDC数据保留时间不足1天,会导致增量同步异常。请修改为1440分钟(1天)或以上,建议4320分钟(3天)。 |
||
一致性检查 |
计算机名 |
源数据库和目标数据库的计算机名不能相同。 |
|
同步对象类 |
选择对象检查 |
|
- |
库表名规范检查 |
|
- |
|
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
同名检查 |
除了SQL Server系统数据库之外,目标数据库不能包含与源数据库同名的对象。 |
||
源数据库检查 |
选择的同步对象在源数据库中必须存在。 |
详见源库选择对象预检查。 |
|
源数据库实例不允许为空。 |
详见源数据库实例是否为空。 |
||
源数据库的备份恢复模式必须设置为FULL模式。 |
详见源数据库恢复模式检查。 |
||
源数据库必须开启SQL Server Agent代理服务。 |
|||
源数据库中不允许存在被禁用的表的聚簇索引,否则会导致同步失败。 |
|||
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
Microsoft SQL Server->GaussDB分布式版
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
- |
|
目标数据库权限 |
|
- |
|
版本类 |
源数据库版本 |
|
详见支持的数据库。 |
目标数据库版本 |
1.1.0及以上版本。 |
详见支持的数据库。 |
|
增量同步类 |
CDC开启 |
SQL Server为源的增量同步基于SQL Server提供的CDC能力,如果SQL Server源库的CDC功能出现异常(如被关闭、事务日志满等情况),则增量同步就会受到影响。 |
详见源库表是否开启了CDC。 |
CDC数据保留时间检查 |
源数据库CDC数据保留时间不足1天,会导致增量同步异常。请修改为1440分钟(1天)或以上,建议4320分钟(3天)。 |
||
一致性检查 |
计算机名 |
源数据库和目标数据库的计算机名不能相同。 |
|
同步对象类 |
选择对象检查 |
|
- |
库表名规范检查 |
|
- |
|
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
同名检查 |
除了SQL Server系统数据库之外,目标数据库不能包含与源数据库同名的对象。 |
||
源数据库检查 |
选择的同步对象在源数据库中必须存在。 |
详见源库选择对象预检查。 |
|
源数据库实例不允许为空。 |
详见源数据库实例是否为空。 |
||
源数据库的备份恢复模式必须设置为FULL模式。 |
详见源数据库恢复模式检查。 |
||
源数据库必须开启SQL Server Agent代理服务。 |
|||
源数据库中不允许存在被禁用的表的聚簇索引,否则会导致同步失败。 |
|||
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
Microsoft SQL Server->Microsoft SQL Server
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
最少需要具备sysadmin权限,或者view server state权限以及待同步数据库的db_datareader或db_owner权限。 |
- |
目标数据库权限 |
如果库不存在,需要对库级别开启create any database权限; 如果库存在需要库级别开启connect,create table,alter any schema 和select权限。 |
- |
|
版本类 |
源数据库版本 |
|
详见支持的数据库。 |
目标数据库版本 |
RDS for SQL Server(企业版2012、2014、2016、2017、2019版本,标准版2016 SP2及以上版本、2017、2019版本) |
详见支持的数据库。 |
|
同步版本检查 |
仅支持目标数据库版本等于或高于源数据库版本。 |
||
目标数据库检查 |
状态检查 |
目标数据库实例的状态必须正常。 |
- |
增量同步类 |
CDC开启 |
SQL Server为源的增量同步基于SQL Server提供的CDC能力,如果SQL Server源库的CDC功能出现异常(如被关闭、事务日志满等情况),则增量同步就会受到影响。 |
详见源库表是否开启了CDC。 |
CDC数据保留时间检查 |
源数据库CDC数据保留时间不足1天,会导致增量同步异常。请修改为1440分钟(1天)或以上,建议4320分钟(3天)。 |
||
一致性检查 |
计算机名 |
源数据库和目标数据库的计算机名不能相同。 |
|
同步对象类 |
选择对象检查 |
|
- |
库表名规范检查 |
|
- |
|
同名检查 |
除了SQL Server系统数据库之外,目标数据库不能包含与源数据库同名的对象。 |
||
源数据库检查 |
选择的同步对象在源数据库中必须存在。 |
详见源库选择对象预检查。 |
|
源数据库实例不允许为空。 |
详见源数据库实例是否为空。 |
||
源数据库的备份恢复模式必须设置为FULL模式。 |
详见源数据库恢复模式检查。 |
||
源数据库必须开启SQL Server Agent代理服务。 |
|||
不支持同步源数据库中开启TDE(Transparent Data Encryption)加密的数据库。如果不需要同步TDE加密的库,请在对象选择中去掉。如果需要同步TDE加密的库,请先将TDE关闭。 |
|||
源数据库中不允许存在被禁用的表的聚簇索引,否则会导致同步失败。 |
|||
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
MongoDB->DDS
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
副本集:连接源数据库的用户需要有admin库的readAnyDatabase权限,有local库的read权限。 |
- |
目标数据库权限 |
连接目标数据库的用户需要有admin库的dbAdminAnyDatabase权限,有目标数据库的readWrite权限。 |
- |
|
版本类 |
源数据库版本 |
|
详见支持的数据库。 |
目标数据库版本 |
DDS(3.4、4.0、4.2、4.4版本) |
详见支持的数据库。 |
|
同步版本检查 |
仅支持目标数据库版本等于或高于源数据库版本。 |
||
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
状态检查 |
目标数据库实例的状态必须正常,如果数据库实例是主备实例,复制状态也必须正常。 |
- |
|
chunk数目检查 |
检查目标数据库的最大chunk数目是否足以支撑源库数据的分片分裂,当chunk个数达到目标库的最大支撑数目时,chunk不再分裂,会影响写入性能。 |
||
同步对象类 |
选择对象检查 |
|
- |
对象依赖关系检查 |
在进行用户迁移时,如果所选迁移的用户与某些角色存在依赖关系,需要同时选择迁移该用户及所依赖的角色,否则会导致迁移失败。 |
- |
|
关联对象检查 |
相互关联的数据对象要确保同时同步,避免因关联对象缺失,导致同步失败。常见的关联关系:视图引用集合、视图引用视图。 |
||
库表名规范检查 |
|
- |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源库选择对象预检查。 |
|
对于在源数据库已经存在TTL索引的集合,或者在增量同步期间在源库数据创建了TTL索引的集合,由于源数据库和目标库数据库时区,时钟的不一致,不能保证同步完成之后数据的一致性。 |
|||
源数据库实例不允许为空。 |
详见源数据库实例是否为空。 |
||
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
MariaDB->MariaDB
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
SELECT、SHOW VIEW、EVENT、LOCK TABLES、RELOAD、REPLICATION SLAVE、REPLICATION CLIENT(或BINLOG MONIOTOR,MariaDB 10.5及以上版本更改为此权限)。 |
- |
目标数据库权限 |
SELECT、CREATE、DROP、DELETE、INSERT、UPDATE、ALTER、CREATE VIEW、CREATE ROUTINE、REFERENCES、INDEX,RDS for MariaDB实例的root账户默认已具备上述权限。 |
- |
|
版本类 |
源数据库版本 |
支持10.3、10.4、10.5版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持10.5版本。 |
详见支持的数据库。 |
|
同步版本检查 |
仅支持目标数据库版本等于或高于源数据库版本。 |
||
参数类 |
性能参数 |
源数据库log_slave_updates参数需设置为开启状态,否则会导致同步失败。 |
|
源数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
|||
最大允许传输包的大小 |
DRS同步时会有大量数据写入目标库,目标库max_allowed_packet参数过小会导致无法写入,建议将目标库max_allowed_packet参数值设置为大于100MB。 |
||
sql_mode取值检查 |
同步的对象中包含引擎为MyISAM的表,则目标数据库sql_mode不能包含no_engine_substitution参数,否则可能会导致同步失败。 |
||
增量同步类 |
Binlog开启 |
增量同步时,源数据库的Binlog日志必须打开。 |
|
Binlog格式 |
源数据库的Binlog格式必须为行格式。 |
||
Binlog保留时长 |
在磁盘空间允许的情况下,建议源数据库Binlog保存时间越长越好,建议为3天,设置为0,可能会导致同步失败。 |
||
server_id值设置 |
增量同步时,必须设置MariaDB源数据库的server_id,server_id的取值范围在1-4294967296之间。 |
||
表字段检查 |
同步对象中如果存在包含longtext、longblob类型字段的表,建议创建大规格及以上规格的DRS任务进行同步,否则可能会导致capture OOM。 |
- |
|
索引列长度检查 |
源数据库索引列长度必须符合要求。 |
详见源数据库索引列长度检查。 |
|
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
状态检查 |
目标数据库实例的状态必须正常,如果数据库实例是主备实例,复制状态也必须正常。 |
- |
|
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
字符序 |
目标库和源库的collation_server需要一致。 |
||
大小写敏感 |
目标库和源库的lower_case_table_names参数设置需要一致。 |
||
group_concat函数计算结果字符的最大长度 |
目标库和源库的group_concat_max_len参数需要一致。 |
||
InnoDB检查模式 |
目标库和源库innodb_strict_mode需要一致。 |
||
SQL模式 |
目标库和源库sql_mode需要一致。 |
||
同步对象类 |
选择对象检查 |
|
- |
|
详见映射数据库对象检查。 |
||
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
关联对象检查 |
相互关联的数据对象要确保同时同步,避免因关联对象缺失,导致同步失败。常见的关联关系:视图引用表、视图引用视图、存储过程/函数/触发器引用视图/表、主外键关联表等。 |
||
加密表检查 |
源数据库是否存在加密表。 |
详见源库加密表检查。 |
|
同名检查 |
除了系统数据库之外,当目标数据库和源数据库同名时,目标数据库中如果存在与源数据库同名的表,则表结构必须与源库保持一致。 |
||
库表名规范检查 |
|
- |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源库选择对象预检查。 |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
MariaDB->MySQL
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
SELECT、SHOW VIEW、EVENT、LOCK TABLES、RELOAD、REPLICATION SLAVE、REPLICATION CLIENT(或BINLOG MONIOTOR,MariaDB 10.5及以上版本更改为此权限)。 |
- |
目标数据库权限 |
SELECT、CREATE、DROP、DELETE、INSERT、UPDATE、ALTER、CREATE VIEW、CREATE ROUTINE、REFERENCES,RDS for MySQL实例的root账户默认已具备上述权限。当目标库为8.0.14-8.0.18版本时,还需要有SESSION_VARIABLES_ADMIN权限。 |
- |
|
版本类 |
源数据库版本 |
支持10.0、10.1、10.2、10.3、10.4、10.5版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持5.5、5.6、5.7、8.0版本。 |
详见支持的数据库。 |
|
参数类 |
性能参数 |
源数据库log_slave_updates参数需设置为开启状态,否则会导致同步失败。 |
|
源数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
|||
最大允许传输包的大小 |
DRS同步时会有大量数据写入目标库,目标库max_allowed_packet参数过小会导致无法写入,建议将目标库max_allowed_packet参数值设置为大于100MB。 |
||
sql_mode取值检查 |
同步的对象中包含引擎为MyISAM的表,则目标数据库sql_mode不能包含no_engine_substitution参数,否则可能会导致同步失败。 |
||
增量同步类 |
Binlog开启 |
增量同步时,源数据库的Binlog日志必须打开。 |
|
Binlog格式 |
源数据库的Binlog格式必须为行格式。 |
||
Binlog保留时长 |
在磁盘空间允许的情况下,建议源数据库Binlog保存时间越长越好,建议为3天,设置为0,可能会导致同步失败。 |
||
server_id值设置 |
增量同步时,必须设置MariaDB源数据库的server_id,server_id的取值范围在1-4294967296之间。 |
||
表字段检查 |
同步对象中如果存在包含longtext、longblob类型字段的表,建议创建大规格及以上规格的DRS任务进行同步,否则可能会导致capture OOM。 |
- |
|
索引列长度检查 |
源数据库索引列长度必须符合要求。 |
详见源数据库索引列长度检查。 |
|
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
状态检查 |
目标数据库实例的状态必须正常,如果数据库实例是主备实例,复制状态也必须正常。 |
- |
|
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
字符序 |
目标库和源库的collation_server需要一致。 |
||
时钟 |
目标库和源库的时钟需要一致。 |
- |
|
大小写敏感 |
目标库和源库的lower_case_table_names参数设置需要一致。 |
||
group_concat函数计算结果字符的最大长度 |
目标库和源库的group_concat_max_len参数需要一致。 |
||
InnoDB检查模式 |
目标库和源库innodb_strict_mode需要一致。 |
||
SQL模式 |
目标库和源库sql_mode需要一致。 |
||
同步对象类 |
选择对象检查 |
|
- |
|
详见映射数据库对象检查。 |
||
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
关联对象检查 |
相互关联的数据对象要确保同时同步,避免因关联对象缺失,导致同步失败。常见的关联关系:视图引用表、视图引用视图、存储过程/函数/触发器引用视图/表、主外键关联表等。 |
||
加密表检查 |
源数据库是否存在加密表。 |
详见源库加密表检查。 |
|
同名检查 |
除了系统数据库之外,当目标数据库和源数据库同名时,目标数据库中如果存在与源数据库同名的表,则表结构必须与源库保持一致。 |
||
库表名规范检查 |
|
- |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源库选择对象预检查。 |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
MariaDB->GaussDB(for MySQL)
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
SELECT、SHOW VIEW、EVENT、LOCK TABLES、RELOAD、REPLICATION SLAVE、REPLICATION CLIENT(或BINLOG MONIOTOR,MariaDB 10.5及以上版本更改为此权限)。 |
- |
目标数据库权限 |
SELECT、CREATE、DROP、DELETE、INSERT、UPDATE、ALTER、CREATE VIEW、CREATE ROUTINE、REFERENCES,GaussDB(for MySQL)实例的root账户默认已具备上述权限。当目标库为8.0.14-8.0.18版本时,还需要有SESSION_VARIABLES_ADMIN权限。 |
- |
|
版本类 |
源数据库版本 |
支持10.0、10.1、10.2、10.3、10.4、10.5版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持8.0版本。 |
详见支持的数据库。 |
|
参数类 |
性能参数 |
源数据库log_slave_updates参数需设置为开启状态,否则会导致同步失败。 |
|
源数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
|||
最大允许传输包的大小 |
DRS同步时会有大量数据写入目标库,目标库max_allowed_packet参数过小会导致无法写入,建议将目标库max_allowed_packet参数值设置为大于100MB。 |
||
sql_mode取值检查 |
同步的对象中包含引擎为MyISAM的表,则目标数据库sql_mode不能包含no_engine_substitution参数,否则可能会导致同步失败。 |
||
增量同步类 |
Binlog开启 |
增量同步时,源数据库的Binlog日志必须打开。 |
|
Binlog格式 |
源数据库的Binlog格式必须为行格式。 |
||
Binlog保留时长 |
在磁盘空间允许的情况下,建议源数据库Binlog保存时间越长越好,建议为3天,设置为0,可能会导致同步失败。 |
||
server_id值设置 |
增量同步时,必须设置MariaDB源数据库的server_id,server_id的取值范围在1-4294967296之间。 |
||
表字段检查 |
同步对象中如果存在包含longtext、longblob类型字段的表,建议创建大规格及以上规格的DRS任务进行同步,否则可能会导致capture OOM。 |
- |
|
索引列长度检查 |
源数据库索引列长度必须符合要求。 |
详见源数据库索引列长度检查。 |
|
目标数据库检查 |
磁盘空间检查 |
目标数据库实例必须有足够的磁盘空间。 |
|
状态检查 |
目标数据库实例的状态必须正常,如果数据库实例是主备实例,复制状态也必须正常。 |
- |
|
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
字符序 |
目标库和源库的collation_server需要一致。 |
||
时钟 |
目标库和源库的时钟需要一致。 |
- |
|
大小写敏感 |
目标库和源库的lower_case_table_names参数设置需要一致。 |
||
group_concat函数计算结果字符的最大长度 |
目标库和源库的group_concat_max_len参数需要一致。 |
||
InnoDB检查模式 |
目标库和源库innodb_strict_mode需要一致。 |
||
SQL模式 |
目标库和源库sql_mode需要一致。 |
||
同步对象类 |
选择对象检查 |
|
- |
|
详见映射数据库对象检查。 |
||
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
关联对象检查 |
相互关联的数据对象要确保同时同步,避免因关联对象缺失,导致同步失败。常见的关联关系:视图引用表、视图引用视图、存储过程/函数/触发器引用视图/表、主外键关联表等。 |
||
加密表检查 |
源数据库是否存在加密表。 |
详见源库加密表检查。 |
|
同名检查 |
除了系统数据库之外,当目标数据库和源数据库同名时,目标数据库中如果存在与源数据库同名的表,则表结构必须与源库保持一致。 |
||
库表名规范检查 |
|
- |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源库选择对象预检查。 |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |
GaussDB(for MySQL)->GaussDB(for MySQL)
分类 |
预检查项 |
检查项详情 |
不通过解决方法 |
---|---|---|---|
权限类 |
源数据库权限 |
SELECT、SHOW VIEW、EVENT、LOCK TABLES、REPLICATION SLAVE、REPLICATION CLIENT。 |
- |
目标数据库权限 |
SELECT、CREATE、DROP、DELETE、INSERT、UPDATE、ALTER、CREATE VIEW、CREATE ROUTINE、REFERENCES,GaussDB(for MySQL)实例的root账户默认已具备上述权限。 当目标库为8.0.14-8.0.18版本时,还需要有SESSION_VARIABLES_ADMIN权限。 |
- |
|
版本类 |
源数据库版本 |
支持8.0版本。 |
详见支持的数据库。 |
目标数据库版本 |
支持8.0版本。 |
详见支持的数据库。 |
|
同步版本检查 |
仅支持目标数据库版本等于或高于源数据库版本。 |
||
参数类 |
GTID状态 |
源数据库GTID状态建议为开启状态,源数据库实例没有开启GTID的情况下不支持主备倒换,DRS任务会因为位点不续接而中断导致无法恢复。 |
详见源库的GTID功能检查。 |
性能参数 |
源数据库log_slave_updates参数需设置为开启状态,否则会导致同步失败。 |
||
源数据库的binlog_row_image参数需设置为full,否则会导致同步失败。 |
|||
最大允许传输包的大小 |
DRS同步时会有大量数据写入目标库,目标库max_allowed_packet参数过小会导致无法写入,建议将目标库max_allowed_packet参数值设置为大于100MB。 |
||
DRS在同步数据量大或同步大字段情况下,源数据库max_allowed_packet参数过小可能会导致任务失败。 |
|||
sql_mode取值检查 |
同步的对象中包含引擎为MyISAM的表,则目标数据库sql_mode不能包含no_engine_substitution参数,否则可能会导致同步失败。 |
||
增量同步类 |
Binlog开启 |
增量同步时,源数据库的Binlog日志必须打开。 |
|
Binlog格式 |
源数据库的Binlog格式必须为行格式。 |
||
Binlog保留时长 |
在磁盘空间允许的情况下,建议源数据库Binlog保存时间越长越好,建议为3天,设置为0,可能会导致同步失败。 |
||
server_id值设置 |
增量同步时,必须设置源数据库的server_id,server_id的取值范围在1-4294967296之间。 |
||
表字段检查 |
同步对象中如果存在包含longtext、longblob类型字段的表,建议创建大规格及以上规格的DRS任务进行同步,否则可能会导致capture OOM。 |
- |
|
索引列长度检查 |
源数据库索引列长度必须符合要求。 |
详见源数据库索引列长度检查。 |
|
目标数据库检查 |
状态检查 |
目标数据库实例的状态必须正常,如果数据库实例是主备实例,复制状态也必须正常。 |
- |
一致性检查 |
字符集 |
目标库和源库的字符集需要一致。 |
|
字符序 |
目标库和源库的collation_server需要一致。 |
||
时钟 |
目标库和源库的时钟需要一致。 |
- |
|
时区 |
目标库和源库的time_zone需要一致。 |
||
大小写敏感 |
目标库和源库的lower_case_table_names参数设置需要一致。 |
||
group_concat函数计算结果字符的最大长度 |
目标库和源库的group_concat_max_len参数需要一致。 |
||
InnoDB检查模式 |
目标库和源库innodb_strict_mode需要一致。 |
||
SQL模式 |
目标库和源库sql_mode需要一致。 |
||
数据块加密参数 |
目标库和源库block_encryption_mode需要一致。 |
- |
|
同步对象类 |
选择对象检查 |
|
- |
|
详见映射数据库对象检查。 |
||
无主键表检查 |
由于无主键表的性能低于主键表的性能,建议将无主键表修改为主键表。 |
详见源库无主键表检查。 |
|
关联对象检查 |
相互关联的数据对象要确保同时同步,避免因关联对象缺失,导致同步失败。常见的关联关系:视图引用表、视图引用视图、存储过程/函数/触发器引用视图/表、主外键关联表等。 |
||
外键引用操作检查 |
不支持外键级联操作。当外键是普通索引的时候,可能会导致表结构创建失败,建议改成唯一索引。 |
||
加密表检查 |
源数据库是否存在加密表。 |
详见源库加密表检查。 |
|
同名检查 |
除了系统数据库之外,当目标数据库和源数据库同名时,目标数据库中如果存在与源数据库同名的表,则表结构必须与源库保持一致。 |
||
库表名规范检查 |
|
- |
|
源数据库检查 |
预检查阶段进行同步对象检查时,源数据库连接正常。 |
详见源库选择对象预检查。 |
|
SSL连接检查 |
SSL安全连接检查 |
选择SSL安全连接时,源数据库和目标数据库的SSL安全连接成功。 |
详见SSL安全连接检查。 |
网络情况 |
网络检查 |
目标数据库的IP,端口,用户名和密码连接成功。 |
详见目标数据库连接是否成功。 |
源数据库的IP,端口,用户名和密码连接成功。 |
详见源数据库连接是否成功。 |